Collections
Collection ansible¶
Pour installer une collection Ansible Galaxy en local dans un dossier spécifique, vous pouvez utiliser la commande ansible-galaxy collection install avec l'option -p pour spécifier le chemin du dossier où vous souhaitez installer la collection.
Voici les étapes détaillées :
-
Créer le dossier de destination : Si le dossier de destination n'existe pas, créez-le.
mkdir -p /path/to/your/collections
-
Installer la collection : Utilisez la commande
ansible-galaxy collection installavec l'option-ppour spécifier le chemin du dossier de destination.ansible-galaxy collection install namespace.collection_name -p /path/to/your/collections
Remplacez namespace.collection_name par le nom de la collection que vous souhaitez installer. Par exemple, pour installer la collection community.general :
ansible-galaxy collection install community.general -p /path/to/your/collections
-
Vérifier l'installation : Vous pouvez vérifier que la collection a été installée correctement en listant le contenu du dossier de destination.
ls /path/to/your/collections
Exemple complet¶
Supposons que vous souhaitez installer la collection community.general dans le dossier /home/user/ansible_collections.
-
Créer le dossier de destination :
mkdir -p /home/user/ansible_collections
-
Installer la collection :
ansible-galaxy collection install community.general -p /home/user/ansible_collections
-
Vérifier l'installation :
ls /home/user/ansible_collections
Vous devriez voir un dossier nommé ansible_collections contenant la collection community.general.
Utilisation de la collection dans un playbook¶
Pour utiliser la collection installée dans un playbook, vous devez spécifier le chemin des collections dans votre fichier de configuration Ansible (ansible.cfg) ou directement dans le playbook.
Option 1 : Spécifier le chemin des collections dans ansible.cfg¶
Créez ou modifiez le fichier ansible.cfg pour inclure le chemin des collections :
[defaults]
collections_paths = /home/user/ansible_collections
Option 2 : Spécifier le chemin des collections directement dans le playbook¶
Vous pouvez également spécifier le chemin des collections directement dans le playbook en utilisant la directive collections :
- name: Use community.general collection
hosts: localhost
collections:
- /home/user/ansible_collections/community/general
tasks:
- name: Use a module from the collection
community.general.some_module:
option: value
En suivant ces étapes, vous pouvez installer une collection Ansible Galaxy en local dans un dossier spécifique et l'utiliser dans vos playbooks.