One of the key characteristics of Infrahub is that it’s a comprehensive data management system. It doesn’t stop at design and intent, but extends to rendered data.
What are Transformations and artifacts and why are they useful?
Infrahub offers a capability called Transformations. A transformation is a generic plug-in that transforms data into a different format to simplify ingestion by a third-party system. The output of a Transformation is an artifact. While you can run a Transformation on-demand, artifacts are persistent, bringing a number of benefits:
- Caching: Generated artifacts are stored in the internal object storage, which improves performance resource-intensive Transformations since you don’t have to regenerate them each time you use them.
- Traceability: Past values of an artifact remain available.
- Peer review: Artifacts are automatically part of the Proposed Change review process.
- Database: Artifact nodes are stored in the database and other nodes can optionally have a relationship with them, which makes it possible to perform certain artifact-related queries.
Here are some examples of artifacts:
- Startup configurations for single devices
- Startup configurations for complex service catalogue delivery
- Multi-device configuration snippets for configuring services
- Containerlab
*.clab
files for digital twin labs
Note that Transformations and artifacts aren’t restricted to config files. You’ll see that in the video (and the image above) that the artifact is a JSON blob. Artifacts can be plain text or JSON format.