Cómo usar Ansible with_item

Cómo usar Ansible with_item
El complemento de elementos ansible es un complemento de búsqueda utilizado para devolver la lista de elementos que se le proporcionan recursos. Un complemento de búsqueda le permite acceder a los datos desde recursos externos. Se accede a los datos proporcionados en los complementos de búsqueda por plantillas Jinja2 que le permiten cargar variables, plantillas y más. Esta guía analiza el complemento With_Items.

¿Qué es ansible with_items??

El Ansible With_Items es un complemento útil para realizar operaciones de bucle en un libro de jugadas. El complemento acepta elementos y luego los pasa al módulo de llamadas. Por ejemplo, puede pasar una lista de paquetes para instalar y luego dar cada elemento en la lista a la tarea de instalación.

Nota: Si un elemento tiene una lista anidada, Ansible lo aplanará pero no recurre.

Para usar los complementos With_Items, use la palabra clave With_Items en un libro de jugadas y pase una lista de elementos en él. Luego puede llamar a cada elemento dentro de la lista especificada y realizar las operaciones requeridas.

Uso básico

El siguiente ejemplo ilustra la sintaxis para el complemento With_Items:

---
- Anfitriones: todos
Nombre: con los elementos sintaxis
depurar:
Msg: "Este es el elemento item"
with_items:
- "a"
- "b"
- "C"

El ejemplo anterior muestra una lista simple usando el complemento With_Items.

Si desea tener una lista anidada, puede hacer:

---
- Anfitriones: todos
Nombre: lista anidada
depurar:
Msg: "Bases de datos item"
with_items:
- ["Mysql", "postgreSQL"] - "sql"
- ["MongoDB", "DocumentDB", "Firestore"] - "NoSQL"

También puede tener una lista con variables, como se muestra en el libro de jugadas de ejemplo a continuación:

---
- Anfitriones: todos
Nombre: lista anidada
var1: "elemento.var1 "
var2: "elemento.var2 "
with_items:
- var1: ejemplo1, var2: ejemplo2
- var1: ejemplo3, var2: ejemplo4

Ansible with_items ejemplos

Los siguientes ejemplos ilustran cómo puede usar el módulo ansible with_items.

---
- Anfitriones: todos
hecho realidad
gateo_facts: no
tareas:
- Nombre: Crear usuarios
usuario:
Nombre: "item"
Grupos: prueba
Estado: presente
with_items:
- usuario1
- usuario2

El libro de jugadas anterior usa with_items para crear múltiples usuarios.

---
- Anfitriones: todos
hecho realidad
gateo_facts: no
tareas:
- Nombre: Instalar paquetes
apto:
Nombre: "item"
Estado: presente
with_items:
- apache2
- UFW
- mysql

En el ejemplo anterior, usamos With_Items para pasar sobre elementos y pasarlos al instalador de paquetes APT.

---
- Anfitriones: todos
hecho realidad
gateo_facts: no
tareas:
- Nombre: Crear archivos
archivo:
ruta: "~/elemento.nombre"
Estado: tocar
Modo: "elemento.permanente"
with_items:
- Nombre: File1, Perm: "0777"
- Nombre: File2, Perm: "0644"

En el libro de jugadas de ejemplo anterior, creamos una lista de archivos y sus respectivos permisos utilizando el complemento With_Items.

Conclusión

Esta guía discutió cómo funciona el complemento Ansible With_Items y cómo recorrer una lista de elementos.