Ansible collection to provide container setups and prepared container deployments.
This collection is under heavy development and there is no release available, yet. Things that work today, may not work tomorrow. This disclaimer will be removed as soon as there is the initial release, according to the TODO and CHANGELOG.
At while-true-do.io, we faced the situation, that we wanted to automate our setups. Most of our deployments will happen in containers on Podman, Docker or Kubernetes. Container deployments can be automated and templated with Ansible.
This collection takes care of container deployment plugins, roles and playbooks as described below. A role is considered "container deployment" as long as it provides a generic software stack in one or multiple containers.
None.
TBD
TBD
We are really happy, that you consider using our software. In case you want to install and run the code on your machine, please check out this section.
The provided playbooks, plugins and roles require Ansible-Core 2.12 on the control node.
The provided playbooks, plugins and roles support the following Operating System on the target nodes:
- Fedora Linux 37+
Installing an Ansible collection can be done in multiple ways.
This is the most common way for users and will install the collection in the proper directories. It will also install the required dependency colections.
# Install
$ ansible-galaxy collection install whiletruedoio.container
# Update
$ ansible-galaxy collection install whiletruedoio.container --upgrade
# Remove
$ ansible-galaxy collection install whiletruedoio.containerFor development purposes, you can also clone the repository and copy it to your desired location. Be aware, that you need to install dependencies on your own.
# Clone
$ git clone https://github.com/whiletruedoio/whiletruedoio.container.git
# Update
$ cd /path/to/repository
$ git pullTBD
Thank you so much for considering to contribute! We are happy, when someone is joining the hard work.
Issues and Pull Requests are handled on a regular basis. Please be aware, that we may reach out to you, ask you to provide additional resources or want to discuss the issue a little, before planning it.
Providing code to this repository is pretty straight forward. Open an issue, so we can discuss the bug/feature and start working on it afterwards. You just need to open the pull request afterwards and that's it.
It is also strongly recommended to read the Contribution Guideline beforehand.
We are maintaining a changelog for repositories. Normally, the developers will update the changelog, according to keepachangelog.com.
To ensure a high quality and functionality, we want to carefully test our software. The provided code is automatically tested as described in the .cirrus.yml.
Each plugin, role and playbook provides tests, located in tests/. The below example demonstrates, how you can use them.
# Run linting test in Docker/Podman
$ ansible-test sanity --lint --docker
# Run only yamllint in Docker/Podman
$ ansible-test sanity --test yamllint --docker
# Run integration tests in Docker/Podman
$ ansible-test integration --docker fedora34
# Run a specific integration test in Docker/Podman
$ ansible-test integration --docker fedora34 role_myrolePlease also check the documentation for ansible-test.
Except otherwise noted, all work is licensed under a BSD-3-Clause License.
Please feel free to reach out to us and the community. We also recommend to read and understand the Code of Conduct beforehand.
- Site: https://while-true-do.io
- Blog: https://blog.while-true-do.io
- Code: https://github.com/whiletruedoio
- Chat: libera.chat #whiletruedoio
- Mail: [email protected]