The Ansible SDK provides a lightweight Python library for dispatching and live-monitoring Ansible tasks, roles, and playbooks from the product or project.
Dispatching of jobs can be local to the machine you are running your python application from or over Ansible Mesh using the receptor integrations.
We are building extensive documentation and API reference here. Please feel free to contribute and help the documentation effort.
You can build the documentation from this repository as follows:
$ tox -e docs
$ firefox docs/build/html/
If you want to run Sphinx commands directly, open the tox.ini
file and use the commands in the [testenv:docs]
section.
Remember that you need to pip install docs/doc-requirements.txt
before running Sphinx.
Release | Status | Expected end of life |
---|---|---|
1 | Maintained | TBA |
This library has been tested against following Ansible versions: >=2.9.10.
You can follow the installation guide specified in docs
.
The Ansible-SDK depends on Python 3.8+, Ansible Core, Ansible Runner and other third party libraries:
- Red Hat Enterprise Linux - Install Ansible-SDK and dependecies directly on/into a RHEL virtual machine.
- MacOS - Install
podman
usingbrew
, and pull the RHEL8 image, ssh to that and follow the RHEL instructions above.
This section assumes that you have configured the following git remotes for your local repository:
origin
tracks your GitHub fork.upstream
tracks this repository.
- Make sure your fork is up to date with the
upstream
remote:
git checkout main && git pull origin main && git fetch upstream && git merge upstream/main
- Create a release branch that follows the naming convention
prepare_$VERSION_release
:
git checkout -b prepare_$VERSION_release -t upstream/main
- Run the following command to autogenerate
CHANGELOG.rst
:
towncrier build --yes --version $VERSION`
- Push the created release branch
prepare_$VERSION_release
to your GitHub repo and open a PR for review.
- Tag the release:
git tag -s $VERSION
- Push the tag:
git push origin $VERSION
We welcome community contributions to this repo. If you find problems, please open an issue or create a PR against the repo.
Need help or want to discuss Ansible SDK including the documentation? See our Community guide to learn how to join the conversation!
See LICENSE to see the full text.