Signed-off-by: Lukas Kämmerling <lukas.kaemmerling@hetzner-cloud.de>
2.4 KiB
Ansible Collection: hetzner.hcloud
Ansible Hetzner Cloud Collection for controlling your Hetzner Cloud Resources.
Release notes
See here.
Documentation
The documentation for all modules are available through ansible-doc
.
Sample: ansible-doc hetzner.hcloud.hcloud_server
shows the documentation for the hcloud_server
module.
For all modules that were part of Ansible directly (before Ansible 2.11) we also have the documentation published in the Ansible documentation: https://docs.ansible.com/ansible/latest/collections/hetzner/hcloud/
Development
Requirements
You should place the collection (clone the repository) into the Ansible collection path. Normally this
is ~/.ansible/collections/ansible_collections/<namespace>/<collection
, so for our collection it would
be: ~/.ansible/collections/ansible_collections/hetzner/hcloud
.
git clone git@github.com:ansible-collections/hetzner.hcloud.git ~/.ansible/collections/ansible_collections/hetzner/hcloud
After this you just need ansible
installed.
Testing
Testing is done via ansible-test
. Make sure to have a cloud-config-hcloud.ini
file in tests/integration
which
contains the hcloud API token:
[default]
hcloud_api_token=<token>
After this you should be able to use ansible-test integration
to perform the integration tests for a specific module.
Sample:
ansible-test integration --color --local -vvv hcloud_server // Executed all integration tests for hcloud_server module
Releasing a new version
Generating changelog from fragments
- Check if the changelog fragments are available (there should be files in
changelogs/fragments
) - Run
antsibull-changelog release --version <version>
, it should remove all fragments and change thechangelogs/changlog.yaml
andCHANGELOG.rst
- Push the changes to the master branch
- Tag the release through the Github UI, after this the Github Actions will run and publish the collection to Ansible Galaxy