Pada halaman kali ini kita akan mempelajari tentang conditionals when
. Dalam ansible playbook ada kondisi dimana kita tidak ingin semua task dijalankan dan hanya melakukan task tertentu apabila kondisi tertentu terpenuhi . Untuk hal tersebut Ansible terdapat fitur conditonals when
yang akan kita pelajari.
Pada percobaan sebelumnya kita telah menganti default halaman pada setiap webserver menjadi This is webserver
. Bagaimana kalo kita ingin mengganti default halaman setiap webserver bedasarkan operating sistem seperti This is debian webserver
. Itu lah percobaan yang akan kita lakukan, kita akan mennyunting halaman default webserver berdasarkan OS dengan ansible-playbook.
Buatlah file index.yaml
dan isikan :
- hosts: all
become: yes
tasks:
- name: Menganti H1 pada Debian Webserver
lineinfile:
path: /var/www/html/index.html
regexp: '<h1>.*</h1>'
line: '<h1>This is Debian Webserver</h1>'
backrefs: yes
when: ansible_distribution == "Debian"
- name: Menganti H1 pada Fedora Webserver
lineinfile:
path: /var/www/html/index.html
regexp: '<h1>.*</h1>'
line: '<h1>This is Fedora Webserver</h1>'
backrefs: yes
when: ansible_distribution == "Fedora"
- name: Menganti H1 pada Ubuntu Webserver
lineinfile:
path: /var/www/html/index.html
regexp: '<h1>.*</h1>'
line: '<h1>This is Ubuntu Webserver</h1>'
backrefs: yes
when: ansible_distribution == "Ubuntu"
Lalu Jalankan
ansible-playbook -K index.yaml
SUCSESS..😊
https://docs.ansible.com/ansible/latest/collections/ansible/builtin/lineinfile_module.html