Keri sisuni

Kodutöö: Ansible playbook laiendamine

Eeldused: Labor "Esimene Ansible playbook" tehtud: nginx.yml töötab, paigaldab nginx + kohandatud index.html.


Ülesanne

Lähtu oma labori nginx.yml failist ja laienda seda.

1. Lisa teine pakett

Lisa playbooki uus task, mis paigaldab lisaks nginx'ile veel ühe paketi, nt curl või git (vali üks). Kasuta sama apt moodulit mis laboris.

2. Kohanda index.html

Muuda index.html nii, et see sisaldab su enda nime:

<h1>Ansible töötab: [sinu nimi]</h1>

Käivita playbook uuesti ja kontrolli brauseris.

3. Testi idempotentsust kolm korda

ansible-playbook -i inventory.ini nginx.yml
ansible-playbook -i inventory.ini nginx.yml
ansible-playbook -i inventory.ini nginx.yml

Esimesel käivitusel on uus task tõenäoliselt changed. Teisel ja kolmandal peavad kõik task'id olema ok, see tõestab idempotentsust. Kopeeri kolmanda käivituse PLAY RECAP oma PR-i kirjeldusse tõestuseks.

Tip

Kui mõni task näitab changed ka kolmandal käivitusel, vaata labori Osa 5 ja veaotsingu tabelit. Tavaliselt on põhjus parameetris, mis muutub iga kord (nt ajatempel).


Esitamine: GitHub PR

  1. Branch n03-lab
  2. Lisa muudetud nginx.yml + index.html, commit
  3. Push ja ava Pull Request main vastu
  4. PR kirjeldusse kolmanda käivituse PLAY RECAP (tekstina, mitte pilt)
  5. Pärast review'd merge. Esita PR-i link GitHub Projectis.

Tip

Kasuta oma kursuse repot. Kui pole veel, loo ansible-nginx-<eesnimi> hkhk-automation alla, kaitse main (nagu nädal 2), tee kõik läbi PR-i.


Hindamiskriteeriumid

Kriteerium Nõue
Teine pakett nginx.yml sisaldab täiendavat apt task'i (curl või git)
Kohandatud index.html Leht sisaldab õpilase nime, copy task korrektne
Idempotentsus tõestatud PR-is kolmanda käivituse väljund, kõik ok
Playbook jookseb veata ansible-playbook käivitub veata
PR protsess Branch → PR → merge, mitte otse main

Tabel 3.1. Kodutöö hindamiskriteeriumid.


Allikad

Allikas URL
Ansible apt module https://docs.ansible.com/ansible/latest/collections/ansible/builtin/apt_module.html
GitHub PR juhend https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-a-pull-request