„GitHub“ veiksmai „Ansible“.

Github Veiksmai Ansible



Ansible yra populiarus, nemokamas atvirojo kodo automatizavimo įrankis, leidžiantis automatizuoti „DevOps“ užduotis, pvz., konfigūracijos valdymą, programų diegimą ir kt.

„Ansible“ sujungimas su „GitHub Actions“ leidžia automatizuoti „Ansible“ žaidimų knygelių vykdymą, kai saugykloje įvyksta konkretus įvykis, pavyzdžiui, perėjimas į pagrindinę šaką.





Šiame vadove mokoma, kaip nustatyti „GitHub“ veiksmą, kad būtų paleista „Ansible“ žaidimų knyga, kuri yra naudinga automatizuojant diegimą reaguojant į kodo pakeitimus.



Būtinos sąlygos:

Prieš tęsdami įsitikinkite, kad turite šiuos dalykus:



  • „GitHub“ paskyra
  • Esama „GitHub“ saugykla
  • Pagrindinės žinios apie Ansible žaidimų knygas
  • Tikslinė mašina, kurioje Ansible gali vykdyti užduotis. Įsitikinkite, kad „Ansible“ gali prisijungti prie šių įrenginių iš „GitHub“ bėgimo.

1 veiksmas: nustatykite Ansible Environment

Sukurkite ir išsaugokite Ansible grojaraštį ir visus susijusius failus „GitHub“ saugykloje. Tai turėtų apimti failus, pvz., vaidmenų šablonus, kintamuosius ir kt.





Žaidimo knygos pavyzdys yra toks:

---
- pavadinimas: įsitikinkite, kad „Nginx“ yra įdiegtas žiniatinklio serveriuose
priegloba: žiniatinklio serveris
tapti: taip
užduotys:
- pavadinimas: atnaujinkite apt talpyklą
tinka:
update_cache: taip

- pavadinimas: Įdiekite „Nginx“.
tinka:
Vardas: nginx
būsena: dabartis

Įsitikinkite, kad turite inventoriaus failą, nurodantį Ansible tikslinius įrenginius.



2 veiksmas: „GitHub“ saugykloje nustatykite paslaptis

Atsižvelgiant į tai, kad žaidimui reikalinga slapta informacija, pvz., SSH raktai ar slaptažodžiai, „GitHub“ suteikia galimybę saugiai saugoti paslaptis:

Eikite į savo „GitHub“ saugyklą.

Eikite į Nustatymai > Paslaptys ir kintamieji -> Veiksmai  -> Nauja saugyklos paslaptis.

3 veiksmas: sukurkite „GitHub“ veiksmų darbo eigą

Saugykloje sukurkite katalogą „.github/workflows“. Šiame kataloge sukurkite YAML failą savo darbo eigai.

Pridėkite darbo eigą taip:

pavadinimas: Run Ansible Playbook
ant:
stumti:
filialai:
- meistras
darbai:
dislokuoti:
veikia: ubuntu-latest
žingsniai:
- pavadinimas: Patikrinimo kodas
naudoja: action/checkout@v2
- pavadinimas: SSH rakto nustatymas
paleisti: |
echo '${{ secrets.SSH_PRIVATE_KEY }}' > private_key.pem
chmod 600 private_key.pem
- pavadinimas: Run Ansible Playbook
paleisti: |
sudo apt atnaujinimas
sudo apt install -y ansible
ansible-playbook -i hosts.ini my-playbook.yml --private-key=private_key.pem --user=${{ secrets.REMOTE_USER }}

4 veiksmas: suaktyvinkite darbo eigą

Kai pereisite prie pagrindinio filialo, „GitHub“ automatiškai paleis šią darbo eigą ir taip vykdys žaidimų knygą.

Išvada

Tai tiek šiam. Aprašėme, kaip paleisti Ansible žaidimų knygą naudojant „Github“ veiksmus.