Radically simple IT automation -- For EnOSlib !
Project description
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.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
File details
Details for the file enoslib_ansible-8.7.0.0-py3-none-any.whl
.
File metadata
- Download URL: enoslib_ansible-8.7.0.0-py3-none-any.whl
- Upload date:
- Size: 3.4 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6d62d64680ccee9a2a52551fe657ee51a5098ddd0d0893f2ab318ffb15fefd61 |
|
MD5 | 8f64e5710b05036ecd8c10e4c808e46e |
|
BLAKE2b-256 | d21f95d3ce2e38b51e034834faf6d8e219e77081563e565a8ee5d3f54b1f08d5 |