Qu'est-ce qui est anible avec_Items?
Le Ansible With_Items est un plugin pratique pour effectuer des opérations de boucle dans un livre de jeu. Le plugin accepte les éléments puis les transmet au module d'appel. Par exemple, vous pouvez passer une liste de packages à installer, puis donner chaque élément dans la liste à la tâche d'installation.
Remarque: Si un élément a une liste imbriquée, ANIBLE l'aplatira mais pas la récursivité.
Pour utiliser les plugins With_Items, utilisez le mot-clé With_Items dans un playbook et passez une liste d'éléments en dessous. Vous pouvez ensuite appeler chaque élément dans la liste spécifiée et effectuer les opérations requises.
Utilisation de base
L'exemple suivant illustre la syntaxe du plugin with_items:
---
- hôtes: tout
Nom: avec les éléments Syntaxe
déboguer:
msg: "Ceci est un élément item"
avec_items:
- "un"
- "B"
- "C"
L'exemple ci-dessus montre une liste simple à l'aide du plugin With_Items.
Si vous voulez avoir une liste imbriquée, vous pouvez faire:
---
- hôtes: tout
Nom: Liste imbriquée
déboguer:
msg: "bases de données item"
avec_items:
- ["MySQL", "PostgreSQL"] - "SQL"
- ["MongoDB", "DocumentDB", "Firestore"] - "Nosql"
Vous pouvez également avoir une liste avec des variables, comme indiqué dans l'exemple de playbook ci-dessous:
---
- hôtes: tout
Nom: Liste imbriquée
var1: "item.var1 "
var2: "item.var2 "
avec_items:
- var1: example1, var2: example2
- var1: exemple3, var2: example4
Exemples ansible avec_items
Les exemples suivants illustrent comment vous pouvez utiliser le module ANSIBLE avec_ITEMS.
---
- hôtes: tout
devenir vrai
rassemble_facts: non
Tâches:
- Nom: Créer des utilisateurs
utilisateur:
Nom: "item"
Groupes: tester
État: présent
avec_items:
- User1
- user2
Le playbook ci-dessus utilise avec_items pour créer plusieurs utilisateurs.
---
- hôtes: tout
devenir vrai
rassemble_facts: non
Tâches:
- Nom: Installer des packages
apte:
Nom: "item"
État: présent
avec_items:
- apache2
- ufw
- mysql
Dans l'exemple ci-dessus, nous utilisons le with_items pour faire bouclez les éléments et les transmets au programme d'installation du package APT.
---
- hôtes: tout
devenir vrai
rassemble_facts: non
Tâches:
- Nom: Créer des fichiers
déposer:
Chemin: "~ / élément.nom"
État: toucher
Mode: "élément.permanente"
avec_items:
- nom: file1, perm: "0777"
- nom: file2, perm: "0644"
Dans l'exemple Playbook ci-dessus, nous créons une liste de fichiers et leurs autorisations respectives à l'aide du plugin With_Items.
Conclusion
Ce guide a discuté du fonctionnement du plugin ANSIBLE avec_ITEMS et comment faire boucle sur une liste d'éléments.