627 shaares
Bonnes pratiques pour gérer ses rôles avec Ansible Galaxy:
- utiliser la commande
ansible-galaxy init
pour créer la structure du rôle$ ansible-galaxy init test-role - test-role was created successfully $ tree . └── test-role ├── defaults │ └── main.yml ├── files ├── handlers │ └── main.yml ├── meta │ └── main.yml ├── README.md ├── tasks │ └── main.yml ├── templates ├── tests │ ├── inventory │ └── test.yml └── vars └── main.yml 9 directories, 8 files
- Isoler chaque rôle dans un repo git séparé (permet de gérer la version du rôle avec les tags git)
- Utiliser Ansible Galaxy pour installer les rôles privés avec un fichier requirements.yml:
$ cat requirements.yml - src: git+https://bitbucket.org/ursuad/sample_role_oracle-java version: v1.1.6 $ ansible-galaxy install -r requirements.yml
- Gérer les dépendances entre rôles dans meta/main.yml
$ cat meta/main.yml dependencies: - { role: 'git+https://bitbucket.org/ursuad/sample_role_launchpad-ppa-webupd8,v1.0.0'}