GitHub darbības Ansible

Github Darbibas Ansible



Ansible ir populārs, bezmaksas un atvērtā pirmkoda automatizācijas rīks, kas ļauj automatizēt DevOps uzdevumus, piemēram, konfigurācijas pārvaldību, lietotņu izvietošanu utt.

Apvienojot Ansible ar GitHub Actions, mēs varam automatizēt Ansible rokasgrāmatu izpildi ikreiz, kad repozitorijā notiek konkrēts notikums, piemēram, pārsūtīšana uz galveno filiāli.







Šajā apmācībā ir aprakstīts, kā iestatīt GitHub darbību, lai palaistu Ansible rokasgrāmatu, kas ir noderīga, lai automatizētu izvietošanu, reaģējot uz koda izmaiņām.



Priekšnosacījumi:

Pirms turpināt, pārliecinieties, vai jums ir:



  • GitHub konts
  • Esošs GitHub repozitorijs
  • Pamatzināšanas par Ansible rokasgrāmatām
  • Mērķa mašīna, kurā Ansible var izpildīt uzdevumus. Pārliecinieties, vai Ansible var izveidot savienojumu ar šīm iekārtām no GitHub skrējēja.

1. darbība: iestatiet Ansible vidi

Izveidojiet un saglabājiet Ansible rokasgrāmatu un visus saistītos failus GitHub repozitorijā. Tajā jāiekļauj faili, piemēram, lomu veidnes, mainīgie u.c.





Rokasgrāmatas piemērs ir šāds:

---
- nosaukums: pārliecinieties, vai tīmekļa serveros ir instalēts Nginx
saimnieki: tīmekļa serveris
kļūt: jā
uzdevumi:
- nosaukums: atjauniniet apt kešatmiņu
piemērots:
update_cache: jā

- nosaukums: Instalējiet Nginx
piemērots:
nosaukums: nginx
stāvoklis: klāt

Pārliecinieties, vai jums ir inventāra fails, kurā norādītas Ansible mērķa mašīnas.



2. darbība. GitHub repozitorijā iestatiet noslēpumus

Tā kā rokasgrāmatā ir nepieciešama sensitīva informācija, piemēram, SSH atslēgas vai paroles, GitHub nodrošina veidu, kā droši glabāt noslēpumus:

Dodieties uz savu GitHub repozitoriju.

Atveriet sadaļu Iestatījumi > Noslēpumi un mainīgie -> Darbības -> Jauns krātuves noslēpums.

3. darbība. Izveidojiet GitHub darbības darbplūsmu

Repozitorijā izveidojiet direktoriju “.github/workflows”. Šajā direktorijā izveidojiet YAML failu savai darbplūsmai.

Pievienojiet darbplūsmu šādi:

nosaukums: Run Ansible Playbook
uz:
push:
filiāles:
- meistars
darbavietas:
izvietot:
darbojas: ubuntu-latest
soļi:
- nosaukums: Izrakstīšanās kods
izmanto: action/checkout@v2
- nosaukums: SSH atslēgas iestatīšana
palaist: |
echo '${{ secrets.SSH_PRIVATE_KEY }}' > private_key.pem
chmod 600 private_key.pem
- nosaukums: Run Ansible Playbook
palaist: |
sudo apt atjauninājums
sudo apt install -y ansible
ansible-playbook -i hosts.ini my-playbook.yml --private-key=private_key.pem --user=${{ secrets.REMOTE_USER }}

4. darbība: aktivizējiet darbplūsmu

Ikreiz, kad pāriesit uz galveno filiāli, GitHub automātiski izpildīs šo darbplūsmu un tādējādi izpildīs rokasgrāmatu.

Secinājums

Tas ir viss šim. Mēs aprakstījām, kā palaist Ansible rokasgrāmatu, izmantojot Github darbības.