corso_ansible/5_primi_playbooks/2_playbook.yaml

44 lines
2 KiB
YAML

---
- name: Installazione httpd, tasks vari e handler # nome di questo play
hosts: all # specifica su quali hosts o gruppi di hosts deve essere eseguito questo play
become: true # utilizza i privilegi di root (default false)
gather_facts: true # raccoglie i dati sull'host (default true)
tasks:
- name: Installo httpd
ansible.builtin.dnf:
name: httpd # nome del pacchetto da installare
state: present # desiderata (latest per ultima versione aggiornata, present se è sufficiente che sia presente)
- name: Creo la directory
ansible.builtin.file:
path: /etc/httpd/conf.vhosts # percorso dove deve essere presente la directory
state: directory # tipologia di file richiesto
owner: root # owner
group: root # gruppo
mode: '0755' # acl del file
- name: Eseguo il "touch" del file example.txt in locale
ansible.builtin.file:
path: files/example.txt # percorso del file in locale
state: touch # desiderata
owner: root # owner
group: root # gruppo
mode: '0755' # acl del file
delegate_to: localhost # non esegue questo task sull'host target, ma esegue in locale
- name: Copio il file di testo
ansible.builtin.copy:
src: example.txt # percorso del file in locale
dest: /etc/httpd/conf.vhosts/ # destinazione del file sulla macchina remota
owner: root # owner
group: root # gruppo
mode: '0644' # acl del file
notify:
- Restart apache # **
handlers:
- name: Restart apache # questo deve essere uguale al valore scritto nel notify **
ansible.builtin.service:
name: httpd
state: restarted