Version 1.2.2
·
48 commits
to refs/heads/main
since this release
Release summary
Model schema patterns common in production OpsMill repositories so they pass Infrahub's validators on the first load. You can now express constructs that often fail validation — computed attributes, branch behavior, delete handling, menu placement, artifact targets, and object templates — and define relationships and register checks the way the server-side validator expects.
Model schema patterns common in production repositories
When you model a schema with one of these constructs, you no longer have to infer the shape Infrahub expects — you get it from the managing-schemas skill, with compliant and non-compliant examples.
- Define an attribute whose value is computed from other fields with a Jinja2 expression (
computed_attribute, paired withread_only: true), instead of storing it directly. - Mark an attribute
branch: agnosticso its value applies across every branch, or leave it branch-aware (the default) so changes stay scoped to a branch until merge. - Set a relationship's
on_deletetocascadeorno-actionto control whether deleting a node also deletes its related nodes. - Control where a node appears in the sidebar with
menu_placement, instead of relying on the default position. - Extend
CoreArtifactTargetso a node can be rendered against by artifact definitions, and setgenerate_template: trueto create nodes from a reusable template. - Define a
kind: Parentrelationship asoptional: falseandcardinality: one, with at most one per node, so it matches the server-side validator.
Bug fixes
check_definitionsdoes not accept aquery:field, unlikegenerator_definitions. The query binds from the Python class'squeryattribute, which must match anameunder the top-levelqueries:section; the configuration model forbids extra keys, so a strayquery:makes the repository configuration fail validation.
Full changelog
Added
- Six schema rules from production repositories: computed attributes, branch behavior, relationship
on_delete, menu placement,CoreArtifactTarget, and object templates (#41).
Changed
kind: Parentconstraints tightened to match the server-side validator (#41).
Fixed
- Clarified that
check_definitionshas noquery:field (#41).
Skills included
- infrahub-managing-schemas
- infrahub-managing-objects
- infrahub-managing-checks
- infrahub-managing-generators
- infrahub-managing-transforms
- infrahub-managing-menus
- infrahub-auditing-repo
- infrahub-analyzing-data
Full Changelog: v1.2.1...v1.2.2