Ansible : Collections

De Justine's wiki
Version datée du 2 octobre 2020 à 10:15 par Justine (discussion | contributions) (Page créée avec « https://docs.ansible.com/ansible/latest/user_guide/collections_using.html#using-collections-in-a-playbook = Principe des Collections = Une collection est un format de dis... »)
(diff) ← Version précédente | Voir la version actuelle (diff) | Version suivante → (diff)
Aller à la navigation Aller à la recherche

https://docs.ansible.com/ansible/latest/user_guide/collections_using.html#using-collections-in-a-playbook

Principe des Collections

Une collection est un format de distribution de données pour Ansible. Elle peut contenir des playbooks, des rôles, des modules, des plugins... Les modules d'Ansible sont en cours de migration dans des collections.

Utilisation

Installer une collection

Le principe est le même que pour un rôle :

<source> ansible-galaxy collection install community.vmware

  1. Ou depuis un tarball

ansible-galaxy collection install my_namespace-my_collection-1.0.0.tar.gz -p ./collections

  1. Depuis git

ansible-galaxy collection install git+https://github.com/organization/repo_name.git,devel

  1. Ce qui donne

Process install dependency map Starting collection install process Installing 'community.vmware:1.2.0' to '/home/adm-pelletreau/.ansible/collections/ansible_collections/community/vmware' </source>

Contenu d'une collection

La structure de base est la suivante :

<source> collection/ ├── docs/ ├── galaxy.yml ├── meta/ │ └── runtime.yml ├── plugins/ │ ├── modules/ │ │ └── module1.py │ ├── inventory/ │ └── .../ ├── README.md ├── roles/ │ ├── role1/ │ ├── role2/ │ └── .../ ├── playbooks/ │ ├── files/ │ ├── vars/ │ ├── templates/ │ └── tasks/ └── tests/ </source>

On peut aussi inclure une collection à côté d'un playbook comme on le fait avec les rôles:

<source> ├── play.yml ├── collections/ │ └── ansible_collections/ │ └── my_namespace/ │ └── my_collection/<collection structure lives here> </source>

Utilisation dans un playbook

TODO