Ansible is great tool for deployment, but one disadvantage is - "python and a lot of dependencies". In my "ideal world", I do not install a lot of dependencies from various programs on my working computer.
This docker-ansible
image was created to provide all needed dependencies inside the image and as a result ansible can be used from docker without additional dependencies on local computer.
Docker repository is located ghcr.io/aohorodnyk/ansible
or aohorodnyk/ansible
.
Build docker image with new version scheduled twice per week. Script pushes new image, only when new version of ansible is available.
The latest version of docker repository is located in latest
tag.
Every version has tag in the repository as 2.10.2
.
All patch, minor and major versions are tagged hierarchically, as an example:
- We have the version
2.10.3
- We have the version
2.10.4
- We have the version
2.11.1
- We have the version
2.11.2
- Tag
2.10
contains the latest2.10
version, in our example -2.10.4
- Tag
2.11
contains the latest2.11
version, in our example -2.11.2
- Tag
2
contains the latest2
version, in our example -2.11.2
Running ansible playbook
$ docker run -v $(pwd):/playbook:ro -v ~/.ssh:/root/.ssh:rw -ti ghcr.io/aohorodnyk/ansible:latest ansible-playbook -i inventory --vault-password-file=.vault_pass playbook.yml
Running ansible vault
$ docker run -v $(pwd):/playbook:rw -v ~/.ssh:/root/.ssh:rw -ti ghcr.io/aohorodnyk/ansible:latest ansible-vault encrypt --vault-password-file=.vault_pass /playbook/secrets/secret.key
All contributions have to follow the CONTRIBUTING.md document If you have any questions/issues/feature requests do not hesitate to create a ticket.
Before contrbution, make sure that githook is configured for you and all your commits contain the correct issue tag.
Before you start the contribution, make sure that you are on the correct branch. Branch name should start from the issue number dash and short explanation with spaces replaced by underscores. Example:
1-my_feature
2-fix_bug
234-my_important_pr
To configure the git hook, you need to simply run the command: git config core.hooksPath .githooks
It will configure the git hook to run the pre-commit
script. Source code of the hook is in .githooks/prepare-commit-msg
.