Esta lección está en elaboración
Esta lección comenta aspectos generales de los playbooks de Ansible.
El formato YAML que utiliza Ansible admite diferentes sintaxis. Aunque Ansible no dispone de un libro de estilo oficial, sí que se recomienda seguir ciertas directrices:
Si un playbook contiene tareas que no requieren privilegios de superusuario, para ejecutar un playbook hay que escribir el comando:
ansible-playbook playbook.yaml
Pero si un playbook contiene una tarea que requiere privilegios de superusuario, al ejecutar el playbook se debe añadir la opción -K, para que Ansible solicite la contraseña de superusuario.
ansible-playbook playbook.yaml -K
Un playbook puede incluir valores como valores fijos, como variables o solicitar los valores al usuario en la ejecución.
Los siguientes playbook añaden a un fichero de texto la línea "¡Hola, mundo!", utilizando el módulo lineinfile. El nombre del fichero de texto se define de forma distinta en cada uno de ellos
---
- hosts: 'clients'
tasks:
- name: 'Añade una línea a un fichero'
lineinfile:
path: '~/prueba.text'
create: true
state: 'present'
line: '¡Hola, mundo!'
---
- hosts: 'clients'
vars:
file_name: 'prueba.txt'
tasks:
- name: 'Añade una línea a un fichero'
lineinfile:
path: '~/{{ file_name }}'
create: true
state: 'present'
line: '¡Hola, mundo!'
---
- hosts: 'clients'
vars_prompt:
- name: 'file_name'
prompt: 'File name'
private: false
tasks:
- name: 'Añade una línea a un fichero'
lineinfile:
path: '~/{{ file_name }}'
create: true
state: 'present'
line: '¡Hola, mundo!'