Ansible module for the Waldur API.
Project description
This repository contains collection of Ansible modules to allow provisioning and management of infrastructure under Waldur through Ansible playbooks.
Supported functionality
OpenStack virtual machine provisioning.
OpenStack security group provisioning.
OpenStack floating IP assignment.
OpenStack volume provisioning.
OpenStack snapshot provisioning.
Batch processing resources allocation.
Batch processing offering registration.
Example usage
Configure an Ansible playbook with parameters
name: Trigger master instance
waldur_marketplace_os_instance:
access_token: "{{ access_token }}"
api_url: "{{ api_url }}"
flavor: m1.micro
floating_ip: auto
image: CentOS 7 x86_64
name: "{{ instance_name }}"
project: "OpenStack Project"
offering: Instance in Tenant
ssh_key: ssh1.pub
subnet: vpc-1-tm-sub-net-2
system_volume_size: 40
wait: false
Pass parameters to an Ansible playbook
ANSIBLE_LIBRARY=/usr/share/ansible-waldur/ ansible \
-m waldur_marketplace_os_instance \
-a "api_url=https://waldur.example.com/api/ access_token=9036194e1ac54cada3248a8c6b203bf7 name=instance-name project='Project name'" \
localhost
Running playbook using virtual Python environment
If you’ve installed Ansible Waldur module to virtual Python environment you need to specify path to Python interpreter and path to module library along with path to playbook:
ansible-playbook \
-e ansible_python_interpreter=/home/user/ansible-env/bin/python \
-M /home/user/ansible-env/lib/python3.6/site-packages/ \
playbook.yml
Contributing
See general guidelines: https://docs.ansible.com/ansible/latest/dev_guide/developing_modules_general.html
Install pre-commit and tox
pip install tox pre-commit
pre-commit install
3) When new module is implemented, don’t forget to update Supported functionality section in README.rst and py_modules section in setup.py file.
When new module is implemented, it should be covered with tests. Run tests using tox
tox
5) Name module should consist of three parts separated by underscore: waldur, plugin name, entity name. For example, waldur_os_snapshot refers to OpenStack (OS) as plugin name and snapshot as entity name.
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 Distribution
Built Distribution
Hashes for ansible-waldur-module-1.0.4.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 356ecba3857b329e919101d47f4f02293fc45f43158271d5f92e0adc2a16e22f |
|
MD5 | 3731a338f8ad9bb1eaacb346002b473b |
|
BLAKE2b-256 | d8b7597f2539f1d3a49187089c97541bb25f8e8e29b4a62c65951fe68775ecf9 |
Hashes for ansible_waldur_module-1.0.4-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 46c6474dbc8389ba6e1152a3301fedfe7c3a7bc10faef689957508df2c41f0eb |
|
MD5 | 7ce1f784eee88f5e2d2f008258c120c1 |
|
BLAKE2b-256 | d5ee0eda9e589f17d0b4b50746961b05687adfb67057344883b964143a7fcbd1 |