mirror of
https://github.com/Luzifer/ansible-role-version.git
synced 2024-12-22 02:21:20 +00:00
Tool to update a requirements.yml file for Ansible Galaxy with specific versions of roles
cmd | ||
tags | ||
vendor | ||
.gitignore | ||
.repo-runner.yaml | ||
Gopkg.lock | ||
Gopkg.toml | ||
History.md | ||
LICENSE | ||
main.go | ||
Makefile | ||
README.md |
Luzifer / ansible-role-version
Very simple tool to update a requirements.yml
file for Ansible Galaxy with specific versions of roles.
Usage
Lets say you do have a repository containing this requirements.yml
:
---
- name: docker
src: https://github.com/luzifer-ansible/docker
version: v0.1.0
- name: docker-compose
src: https://github.com/luzifer-ansible/docker-compose
version: v1.0.0
...
Now your CI system should update the version of docker-compose
to v1.0.1
and you don't want to fiddle with bash magic:
$ ansible-role-version set docker-compose v1.0.1
And you're done!
Sure, this example is a bit constructed: In reality this tool was written to update a bunch of different repositories each having a way bigger list of roles to include and the tool is used in a script to update all of them and create pull-requests out of the change.
To do so your requirements file needs to meet some requirements:
- All roles do have their
src
set to a Git URL - Version is set to tags (if not it will be afterwards!)
- The roles do have proper versioning with tags
- The repos are public available (authentication while fetching the git repo is not yet supported)
Then just execute:
$ ansible-role-version update