inmanta-module-netbird
This package is an adapter that is meant to be used with the inmanta orchestrator: https://docs.inmanta.com
Features
This module allows to manage netbird resources, through the netbird management api.
The module is a work in progress, it currently contains the base entities every resource of this module builds upon:
netbird::Api: the endpoint and credentials used to reach the netbird management api.netbird::ResourceABC: the base entity for all the resources managed by this module.netbird::JsonObjectABC: the base entity for every object of the netbird api.
And the following resources:
netbird::User: a user, or a service user, of the netbird account.
Every netbird object is co-managed with whoever else edits the account: an attribute
left null in the model keeps the value the api currently holds, only the values the
model sets are enforced. The api addresses its objects by opaque ids, and so does
this module: netbird::ResourceABC.id is a reference resolving the id of an object
from the facts its resource publishes, to be fed to whatever other resource points at
it.
Example
import netbird
api = netbird::Api(
agent_name="netbird",
management_url="https://api.netbird.io",
api_token=std::get_env("NETBIRD_TOKEN"),
)
netbird::User(
api=api,
name="Alice",
email="alice@example.com",
role="admin",
)
Find more examples in the tests folder of this module!
Development
python3 -m venv .venv
source .venv/bin/activate
make install
pytest tests
The tests deploy a netbird server locally, in a podman container of their own, and run against its api. The container is started again for each test, so that every test sees a fresh, empty account. They are skipped when podman is not available.
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_netbird-0.1.0.tar.gz.
File metadata
- Download URL: inmanta_module_netbird-0.1.0.tar.gz
- Upload date:
- Size: 13.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3e62bc7e0ee787fd51433ba7a9d0eb5d87963580a15d3178cea4fd2dadb6cfe7
|
|
| MD5 |
db00d969a9c416351396c0215383c145
|
|
| BLAKE2b-256 |
5177daab0fcbb24492c63f2f7784de87a15b54b4dcf6dbdb2d219b47c1055e43
|
Provenance
The following attestation bundles were made for inmanta_module_netbird-0.1.0.tar.gz:
Publisher:
continuous-delivery.yml on edvgui/inmanta-module-netbird
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
inmanta_module_netbird-0.1.0.tar.gz -
Subject digest:
3e62bc7e0ee787fd51433ba7a9d0eb5d87963580a15d3178cea4fd2dadb6cfe7 - Sigstore transparency entry: 2426295784
- Sigstore integration time:
-
Permalink:
edvgui/inmanta-module-netbird@a4184902c09bf27a7bb90938d11ed3a8e27d0f01 -
Branch / Tag:
refs/tags/0.1.0 - Owner: https://github.com/edvgui
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
continuous-delivery.yml@a4184902c09bf27a7bb90938d11ed3a8e27d0f01 -
Trigger Event:
push
-
Statement type:
File details
Details for the file inmanta_module_netbird-0.1.0-py3-none-any.whl.
File metadata
- Download URL: inmanta_module_netbird-0.1.0-py3-none-any.whl
- Upload date:
- Size: 13.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
250482bd6451982a621fa46f844abe34efc31fd131f5fda309f5862d1d2471ea
|
|
| MD5 |
18be9b05a41a5a5b4dbe1802adfc880d
|
|
| BLAKE2b-256 |
059e82570d07fa8f6f23e47493d0bd14a42468d054edd874c9b0e6d651c989b2
|
Provenance
The following attestation bundles were made for inmanta_module_netbird-0.1.0-py3-none-any.whl:
Publisher:
continuous-delivery.yml on edvgui/inmanta-module-netbird
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
inmanta_module_netbird-0.1.0-py3-none-any.whl -
Subject digest:
250482bd6451982a621fa46f844abe34efc31fd131f5fda309f5862d1d2471ea - Sigstore transparency entry: 2426296046
- Sigstore integration time:
-
Permalink:
edvgui/inmanta-module-netbird@a4184902c09bf27a7bb90938d11ed3a8e27d0f01 -
Branch / Tag:
refs/tags/0.1.0 - Owner: https://github.com/edvgui
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
continuous-delivery.yml@a4184902c09bf27a7bb90938d11ed3a8e27d0f01 -
Trigger Event:
push
-
Statement type: