Declarative parametrization, extension and validation of Inmanta DSL models.
Project description
GitOps module
This package is an integration module that is meant to be used with the inmanta orchestrator: https://docs.inmanta.com
It allows you to easily parametrize a model by defining slices, and then instantiating as many slices as you need to by simply creating json or yaml files in the project repository. This module aims at enabling its users to manage an infra in a "Git-Ops" fashion. Key ideas are:
- Declarative Configuration: The desired state of your infrastructure and applications is described in a declarative format (json/yaml files) within a Git repository.
- Version Control: Git serves as the central source of truth, meaning all changes are committed to the repository, providing a complete history of the system's evolution.
- Automated Synchronization: The orchestrator continuously monitors the Git repository and pulls in new updates.
- Pull Requests for Changes: When you want to make a change, you create a pull request to modify the Git repository.
- Deployment & Reconciliation: Once the pull request is approved and merged, the orchestrator automatically pulls the changes and deploys them to the live environment, ensuring the actual system state matches the desired state in Git.
All of this is already natively supported by the orchestrator by modifying the main.cf file of a project. This works but scales poorly and it is not possible to track deleted items, this modules aims at addressing these limitations.
More details about the design in the docs folder.
Running tests
- Set up a new virtual environment, then install the module in it. The first line assumes you have
virtualenvwrapperinstalled. If you don't, you can replace it withpython3 -m venv .env && source .env/bin/activate.
mkvirtualenv inmanta-test -p python3 -a .
pip install -e . -c requirements.txt -r requirements.dev.txt
- Run tests
pytest tests
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file inmanta_module_git_ops-0.1.4.tar.gz.
File metadata
- Download URL: inmanta_module_git_ops-0.1.4.tar.gz
- Upload date:
- Size: 36.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f3fe8429078679662a75c24a88b2e0c0eb1c6f3d29625030786b7591aab03889
|
|
| MD5 |
4473e56162eaabc9d40d7d44beb2daa3
|
|
| BLAKE2b-256 |
92d7da761393d648048284b9a4c374601da26a88bcab6a56c00f73772bd03761
|
Provenance
The following attestation bundles were made for inmanta_module_git_ops-0.1.4.tar.gz:
Publisher:
continuous-delivery.yml on edvgui/inmanta-module-git-ops
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
inmanta_module_git_ops-0.1.4.tar.gz -
Subject digest:
f3fe8429078679662a75c24a88b2e0c0eb1c6f3d29625030786b7591aab03889 - Sigstore transparency entry: 870953938
- Sigstore integration time:
-
Permalink:
edvgui/inmanta-module-git-ops@9e43cd6a526585c0b48d2d5b63a349d512641767 -
Branch / Tag:
refs/tags/0.1.4 - Owner: https://github.com/edvgui
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
continuous-delivery.yml@9e43cd6a526585c0b48d2d5b63a349d512641767 -
Trigger Event:
push
-
Statement type:
File details
Details for the file inmanta_module_git_ops-0.1.4-py3-none-any.whl.
File metadata
- Download URL: inmanta_module_git_ops-0.1.4-py3-none-any.whl
- Upload date:
- Size: 29.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a6b9a1ee2793839fc4f1a49056342d1a6d7af6b09758b670e7ebb73dba009d68
|
|
| MD5 |
5b3c3d84a17cd8404273c39f6b7ac757
|
|
| BLAKE2b-256 |
7521cb46f1b67721bd5a24dd6cf701c5d9c6a9dc729af1b37c35f99cbe99e6ad
|
Provenance
The following attestation bundles were made for inmanta_module_git_ops-0.1.4-py3-none-any.whl:
Publisher:
continuous-delivery.yml on edvgui/inmanta-module-git-ops
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
inmanta_module_git_ops-0.1.4-py3-none-any.whl -
Subject digest:
a6b9a1ee2793839fc4f1a49056342d1a6d7af6b09758b670e7ebb73dba009d68 - Sigstore transparency entry: 870953974
- Sigstore integration time:
-
Permalink:
edvgui/inmanta-module-git-ops@9e43cd6a526585c0b48d2d5b63a349d512641767 -
Branch / Tag:
refs/tags/0.1.4 - Owner: https://github.com/edvgui
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
continuous-delivery.yml@9e43cd6a526585c0b48d2d5b63a349d512641767 -
Trigger Event:
push
-
Statement type: