summaryrefslogtreecommitdiffstats
path: root/ansible_collections/cloudscale_ch/cloud/README.md
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-28 16:03:42 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-28 16:03:42 +0000
commit66cec45960ce1d9c794e9399de15c138acb18aed (patch)
tree59cd19d69e9d56b7989b080da7c20ef1a3fe2a5a /ansible_collections/cloudscale_ch/cloud/README.md
parentInitial commit. (diff)
downloadansible-66cec45960ce1d9c794e9399de15c138acb18aed.tar.xz
ansible-66cec45960ce1d9c794e9399de15c138acb18aed.zip
Adding upstream version 7.3.0+dfsg.upstream/7.3.0+dfsgupstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'ansible_collections/cloudscale_ch/cloud/README.md')
-rw-r--r--ansible_collections/cloudscale_ch/cloud/README.md133
1 files changed, 133 insertions, 0 deletions
diff --git a/ansible_collections/cloudscale_ch/cloud/README.md b/ansible_collections/cloudscale_ch/cloud/README.md
new file mode 100644
index 00000000..7842aa0d
--- /dev/null
+++ b/ansible_collections/cloudscale_ch/cloud/README.md
@@ -0,0 +1,133 @@
+
+![Collection Integration tests](https://github.com/cloudscale-ch/ansible-collection-cloudscale/workflows/Collection%20Integration%20tests/badge.svg)
+[![Codecov](https://img.shields.io/codecov/c/github/cloudscale-ch/ansible-collection-cloudscale)](https://codecov.io/gh/cloudscale-ch/ansible-collection-cloudscale)
+[![License](https://img.shields.io/badge/license-GPL%20v3.0-brightgreen.svg)](LICENSE)
+
+# Ansible Collection for cloudscale.ch Cloud
+
+This collection provides a series of Ansible modules and plugins for interacting with the [cloudscale.ch](https://www.cloudscale.ch) Cloud.
+
+## Requirements
+
+- ansible version >= 2.9
+
+## Installation
+
+To install the collection hosted in Galaxy:
+
+```bash
+ansible-galaxy collection install cloudscale_ch.cloud
+```
+
+To upgrade to the latest version of the collection:
+
+```bash
+ansible-galaxy collection install cloudscale_ch.cloud --force
+```
+
+## Usage
+
+### Playbooks
+
+To use a module from the cloudscale.ch collection, please reference the full namespace, collection name, and modules name that you want to use:
+
+```yaml
+---
+- name: Using cloudscale.ch collection
+ hosts: localhost
+ tasks:
+ - cloudscale_ch.cloud.server:
+ name: web1
+ image: debian-10
+ flavor: flex-2
+ ssh_keys:
+ - ssh-rsa XXXXXXXXXX...XXXX ansible@cloudscale
+ server_groups: web-group
+ zone: lpg1
+ api_token: ...
+```
+
+Or you can add the full namespace and collection name in the `collections` element:
+
+```yaml
+---
+- name: Using cloudscale.ch collection
+ hosts: localhost
+ collections:
+ - cloudscale_ch.cloud
+ tasks:
+ - server:
+ name: web1
+ image: debian-10
+ flavor: flex-2
+ ssh_keys:
+ - ssh-rsa XXXXXXXXXX...XXXX ansible@cloudscale
+ server_groups: web-group
+ zone: lpg1
+ api_token: ...
+```
+
+### Roles
+
+For existing Ansible roles, please also reference the full namespace, collection name, and modules name that are used in tasks instead of just modules name.
+
+### Plugins
+
+To use a plugin, please reference the full namespace, collection name, and plugins name that you want to use:
+
+```yaml
+plugin: cloudscale_ch.cloud.<myplugin>
+```
+
+## Contributing
+
+There are many ways in which you can participate in the project, for example:
+
+- Submit bugs and feature requests, and help us verify them as they are checked in
+- Review source code changes
+- Review the documentation and make pull requests for anything from typos to new content
+- If you are interested in fixing issues and contributing directly to the code base, please see the [CONTRIBUTING](CONTRIBUTING.md) document.
+
+## Releasing
+
+### Prepare a new release
+
+The changelog is managed using the `antsibull` tool. You can install
+it using `pip install antsibull`
+
+1. Update version in galaxy.yml
+2. Update changelog using antsibull
+```
+antsibull-changelog release
+```
+3. Commit changelog and new version
+```
+git commit -m "Release version X.Y.Z" galaxy.yml CHANGELOG.rst changelogs/
+```
+4. Tag the release. Preferably create a GPG signed tag if you have a GPG
+key. Version tags should be prefixed with "v" (otherwise the
+integration tests won't run automatically).
+```
+git tag -s -m "Version X.Y.Z" vX.Y.Z
+```
+5. Push the release and tag
+```
+git push origin master vX.Y.Z
+```
+
+### Release to Ansible Galaxy
+
+After the release is tagged and pushed to Github a release to Ansible
+Galaxy can be created using the release feature in Github:
+
+1. **Wait for integration tests to succeed. They should automatically
+run on new tags.** Only release if they succeed. Otherwise delete the
+tag and fix the issue.
+2. Create a release on Github by going to the release overview and
+ selecting "Draft a new release".
+
+## License
+
+GNU General Public License v3.0
+
+See [COPYING](COPYING) to see the full text.