Ansible is an IT automation tool that allows you to configure, deploy, and orchestrate advanced tasks, such as continuous deployments or zero downtime rolling updates. The IONOS module for Ansible leverages the IONOS Cloud API.
The IONOS module for Ansible requires the following:
NOTE: The Ansible module does not support Python 2. It only supports Python >= 3.5.
Before you begin you will need an IONOS account. The credentials from your registration will be used to authenticate against the IONOS Cloud API.
The IONOS module requires the IONOS SDK for Python to be installed. This can easily be accomplished with Python PyPI:
pip install ionoscloud
pip install ionoscloud-dbaas-postgres
Run the following command:
ansible-galaxy collection install ionoscloudsdk.ionoscloud
- 1.The IONOS module for Ansible must first be downloaded from GitHub. This can be accomplished a few different ways such as downloading and extracting the archive using
curlor cloning the GitHub repository locally.
Download and extract with
mkdir -p ionos-module-ansible && curl -L https://github.com/ionos-cloud/module-ansible/tarball/master | tar zx -C ionos-module-ansible/ --strip-components=1
Clone the GitHub repository locally:
git clone https://github.com/ionos-cloud/module-ansible
- 1.Ansible must be made aware of the new module path. This too can be accomplished a few different ways depending on your requirements and environment.
- Ansible configuration file:
- Environment variable:
- Command line parameter:
ansible-playbook --module-path [path]
2a. The preferred method is to update the Ansible configuration with the module path. To include the path globally for all users, edit the
/etc/ansible/ansible.cfgfile and add
library = /path/to/module/ionos_cloudunder the [default] section. For example:
library = /path/to/ionos-module-ansible/ionos_cloud
Note that the Ansible configuration file is read from several locations in the following order:
ANSIBLE_CONFIGenvironment variable path
ansible.cfgfrom the current directory
.ansible.cfgin the user home directory
2b. The module path can also be set using an environment variable. This variable will be lost once the terminal session is closed:
2c. The module path can be overridden with an
ansible-playbookcommand line parameter:
ansible-playbook --module-path /path/to/ionos-module-ansible/ionos_cloud playbook.yml
- 1.How can I open a bug/feature request?
- 1.Can I contribute to the Ansible Module?
Sure! Our repository is public, feel free to fork it and file a PR for one of the issues opened in the issues list. We will review it and work together to get it released.