EnOSlib-Ansible
enoslib-ansible repackages ansible (GPLv3) exclusively tailored for the EnOSlib project.
The rationale behind this is that ansible includes too much collections with regards to what is actually needed by the EnOSlib users.
Versionning
We follow the versionning numbers of the ansible package but we append an internal revision number. So for instance enoslib-ansible==7.5.0.1 repackages the same version of a subset of collections from ansible==7.5.0.
Each major version is kept in dedicated branch: for instance ansible_6 for repackaging ansible~=6.
Building
python setup.py bdist_wheel
How to add a new collection
Main branch
First, work in the main branch.
Add the collection as a submodule:
git submodule add https://github.com/ansible-collections/ansible.utils ansible_collections/ansible/utils
This will register the collection with its latest commit, but don’t worry, we will specify a tag in a later step.
Edit setup.py to add the new collection to exclude_package_data (copy-paste existing ones)
Don’t bump the version in setup.py, otherwise you will have trouble cherry-picking later
Test that the package can be built:
python setup.py bdist_wheel
Commit your changes
Release branches
Then for each version of Ansible we support (ansible_X branches):
git checkout ansible_X
Cherry-pick the commit from the master branch (with -x to track the source):
git cherry-pick -x a0b1c2d3e4f5
Lookup which version of the collection should be included using ansible-build-data.
Tip: use git grep ansible.utils '*.deps' in the ansible-build-data repository
In general, use the latest minor version for the ansible version you target (e.g. ansible-7.7.0 for ansible_7)
For our example of ansible.utils, the result is 2.10.3
Update the submodule to the right tag:
(cd ansible_collections/ansible/posix/ && git checkout vX.Y.Z)
Commit the change to the submodule
Bump version in setup.py: if there already was a release for the same Ansible version (e.g. 7.7.0.0), increase the fourth component (e.g. 7.7.0.1). Otherwise, just use the Ansible version with an additional 0.
Commit the version bump
Publish pip package: git tag vX.Y.Z.N and push, the CI will do the rest
Troubleshooting
If you are annoyed by local changes when changing branches, use git submodule update.
More info
This project is based on Antsibull project.
Metadata
Release files for enoslib-ansible 13.8.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| enoslib_ansible-13.8.0.0-py3-none-any.whl | Python 3 | none | any | Details |
Release files / enoslib_ansible-13.8.0.0-py3-none-any.whl
| Download URL | enoslib_ansible-13.8.0.0-py3-none-any.whl |
|---|---|
| Size | 3.7 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
5e9046a6cc10645fe1498059b521d38935f79521f398b6102c8db5d3f3d72c26
|
|
BLAKE2b-256 checksum How to use checksums |
26e9444fb5aa4e1174616f55a046ab09cb9571c1bf5a8690849045024475f20c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.14
|