0Pricing
DevOps Bootcamp · Lección

Dividir playbooks con import e include

Inclusión estática frente a dinámica de tareas

Dividir playbooks con import e include es una lección gratuita de DevOps Bootcamp en CoddyKit. Esta es la lección 3 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de DevOps Bootcamp, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de DevOps Bootcamp incluye 4 lecciones en total.

Un archivo enorme causa problemas

Un playbook de 500 líneas es difícil de leer y reutilizar. Ansible permite dividir el trabajo en partes e incluirlas donde sea necesario. ✂️

Dos familias: import e include

Ansible ofrece dos estilos de reutilización: import_* para la inclusión estática y include_* para la inclusión dinámica. La diferencia está en el momento de ejecución.

import_tasks estático

import_tasks se procesa previamente al analizar el playbook, antes de que se ejecute cualquier tarea. Es fijo y predecible.

- import_tasks: setup.yml

include_tasks dinámico

include_tasks se procesa durante la ejecución y en orden, por lo que puede reaccionar a variables y resultados determinados anteriormente en el play.

- include_tasks: "{{ os_family }}.yml"

Por qué importa el momento de ejecución

Como import es estático, no puede utilizar una variable de ejecución en el nombre del archivo. Para eso necesita el include_tasks dinámico.

Los bucles requieren include

¿Quiere repetir un archivo completo? Solo include_tasks admite loop, ya que el conjunto de archivos se decide mientras se ejecuta el play.

- include_tasks: user.yml
  loop: "{{ users }}"

Las etiquetas se comportan de forma distinta

Una etiqueta en import_tasks se aplica a todas las tareas importadas, pero una etiqueta en include_tasks solo se aplica a la propia instrucción include.

Importar playbooks completos

En el nivel superior, use import_playbook para combinar playbooks completos. Así es exactamente como site.yml reúne su proyecto.

- import_playbook: webservers.yml
- import_playbook: dbservers.yml

Reutilización entre playbooks

Los archivos de tareas compartidos, como uno de configuración inicial común, pueden importarse en muchos playbooks, de modo que escriba la lógica una sola vez y la reutilice en todas partes.

Una opción predeterminada razonable

Prefiera import para los pasos predecibles que siempre se ejecutan. Use include solo cuando realmente necesite decisiones durante la ejecución, como bucles o nombres de archivo variables.

La división en acción

Aquí un play importa un archivo de configuración estático y después incluye condicionalmente uno específico del sistema operativo. Dos herramientas, dos funciones. 🎯

tasks:
  - import_tasks: base.yml
  - include_tasks: "{{ ansible_os_family }}.yml"

Comprobación rápida

Necesita un nombre de archivo construido a partir de una variable de ejecución. ¿Qué directiva funciona?

Resumen

Ha aprendido que import_* es estático y se analiza por adelantado, mientras que include_* es dinámico y se ejecuta en su posición, lo que permite usar bucles y nombres de archivo variables. ✅

Preguntas frecuentes

¿La lección «Dividir playbooks con import e include» es gratis?

Sí — el texto completo de «Dividir playbooks con import e include» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de DevOps Bootcamp, actualiza a CoddyKit PRO. El curso de DevOps Bootcamp incluye 4 lecciones en total.

¿Qué aprenderé en «Dividir playbooks con import e include»?

Inclusión estática frente a dinámica de tareas Practicas DevOps Bootcamp con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar DevOps Bootcamp?

No se requiere experiencia previa. DevOps Bootcamp en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 3 de 4.

¿Cuánto tiempo toma la lección «Dividir playbooks con import e include»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de DevOps Bootcamp?

Sí. Cada lección de DevOps Bootcamp incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. La estructura de directorios recomendada
  2. Directorios group_vars y host_vars
  3. Dividir playbooks con import e include
  4. Nombres, comentarios y estilo que escalan
← Volver a DevOps Bootcamp