Ansible : Use Playbook (notify)2024/09/11 |
To use [notify], [handlers], it's possible to execute a task which is defined in [handlers] after a task completed which has [notify] method. |
|
[1] | For example, create a Playbook that [sshd] is restarted after editing [sshd_config]. |
freebsd@dlp:~ $
vi playbook_sample.yml - hosts: target_servers become: yes become_method: sudo handlers: - name: restart sshd service: name=sshd state=restarted tasks: - lineinfile: path: /etc/ssh/sshd_config regexp: '^#PermitRootLogin' line: 'PermitRootLogin prohibit-password' notify: restart sshd tags: Edit_sshd_config ansible-playbook playbook_sample.yml --ask-become-pass BECOME password: PLAY [target_servers] ********************************************************************** TASK [Gathering Facts] ********************************************************************* ok: [10.0.0.51] ok: [10.0.0.52] TASK [lineinfile] ************************************************************************** changed: [10.0.0.52] changed: [10.0.0.51] RUNNING HANDLER [restart sshd] ************************************************************* changed: [10.0.0.52] changed: [10.0.0.51] PLAY RECAP ********************************************************************************* 10.0.0.51 : ok=3 changed=2 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 10.0.0.52 : ok=3 changed=2 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 # verify freebsd@dlp:~ $ ansible target_servers -m command -a "grep '^PermitRootLogin' /etc/ssh/sshd_config" -b --ask-become-pass BECOME password: 10.0.0.52 | CHANGED | rc=0 >> PermitRootLogin prohibit-password 10.0.0.51 | CHANGED | rc=0 >> PermitRootLogin prohibit-password |
Sponsored Link |