Skip to content

Version 1.11.0

Compare
Choose a tag to compare
@dgarros dgarros released this 17 Apr 17:18
· 96 commits to stable since this release
06fff9d

This release focusing mainly on improving the user/developer experience with a new command to load data into Infrahub, some improvements around Python Typing as well as some fixes

Main changes

Manage data in yaml format using Object files

The new infrahubctl commands object load and object validate allows you to manage data to be loaded in Infrahub based on your own custom schema. It provides a declarative way to define and manage resources in your Infrahub instance.

Object files work well for models that don't change too often and/or that need to be tracked in Git. Examples include: Groups, tags, Users, etc.
Below is an example of an Object file that defines tags (BuiltinTag).

---
apiVersion: infrahub.app/v1
kind: Object
spec:
  kind: BuiltinTag
  data:
    - name: Blue
    - name: Yellow
    - name: Red

More information is available in the documentation

New user guide on how to use Python's type system effectively with the Infrahub SDK

A new guide is available in the documentation to explain how to leverage Python's type system better with the Python SDK by leveraging Python Protocols.

Changelog

Deprecated

  • The 'timeout' parameter while creating a node or fetching the schema has been deprecated. the default_timeout will be used instead.

Added

  • Add support for object Template when generating protocols (#329)
  • Add a Guide related to Python Typing
  • Add method client.schema.set_cache() to populate the cache manually (primarily for unit testing)
  • By default, schema.fetch will now populate the cache (this behavior can be changed with populate_cache)
  • Add menu validate command to validate the format of menu files.

Fixed

  • Raise a proper branch not found error when requesting a node or schema for a branch that doesn't exist. (#286)
  • Fix support for Sync when generating Python Protocols

Housekeeping

  • Add invoke lint-doc command to help run the docs linters locally
  • Add a fixture to always reset some environment variables before running tests
  • Update Pytest-httpx and set all responses as reusable