Akcie GitHub v Ansible

Akcie Github V Ansible



Ansible je populárny, bezplatný a open source automatizačný nástroj, ktorý nám umožňuje automatizovať úlohy DevOps, ako je správa konfigurácie, nasadenie aplikácií atď.

Kombinácia Ansible s akciami GitHub nám umožňuje automatizovať spustenie príručiek Ansible vždy, keď sa v úložisku vyskytne konkrétna udalosť, ako napríklad presun do hlavnej vetvy.







Tento tutoriál vás naučí, ako nastaviť akciu GitHub na spustenie príručky Ansible, ktorá je užitočná na automatizáciu nasadenia v reakcii na zmeny kódu.



Predpoklady:

Pred pokračovaním sa uistite, že máte nasledujúce:



  • Účet GitHub
  • Existujúce úložisko GitHub
  • Základná znalosť zošitov Ansible
  • Cieľový počítač, na ktorom môže Ansible spúšťať úlohy. Zaistite, aby sa Ansible mohol pripojiť k týmto počítačom z GitHub runner.

Krok 1: Nastavte prostredie Ansible

Vytvorte a uložte Ansible playbook a všetky súvisiace súbory v úložisku GitHub. To by malo zahŕňať súbory, ako sú šablóny rolí, premenné atď.





Príklad zošita je nasledujúci:

---
- name: Uistite sa, že Nginx je nainštalovaný na webových serveroch
hostitelia: webový server
stať sa: áno
úlohy:
- name: Aktualizácia vyrovnávacej pamäte apt
výstižné:
update_cache: áno

- názov: Nainštalujte Nginx
výstižné:
meno: nginx
stav: prítomný

Uistite sa, že máte súbor inventára špecifikujúci cieľové počítače pre Ansible.



Krok 2: Nastavte tajomstvá v úložisku GitHub

Vzhľadom na to, že príručka potrebuje citlivé informácie, ako sú kľúče SSH alebo heslá, GitHub poskytuje spôsob, ako bezpečne uložiť tajomstvá:

Prejdite do svojho úložiska GitHub.

Prejdite do Nastavenia > Tajomstvá a premenné -> Akcie  -> Nový tajný kľúč úložiska.

Krok 3: Vytvorte pracovný postup akcie GitHub

V úložisku vytvorte adresár „.github/workflows“. V tomto adresári vytvorte súbor YAML pre svoj pracovný postup.

Pridajte pracovný postup takto:

názov: Run Ansible Playbook
na:
TAM:
pobočky:
- majster
pracovné miesta:
nasadiť:
run-on: ubuntu-najnovšie
kroky:
- meno: Kód pokladne
používa: actions/checkout@v2
- name: Nastavenie kľúča SSH
beh: |
echo '${{ secrets.SSH_PRIVATE_KEY }}' > private_key.pem
chmod 600 private_key.pem
- názov: Run Ansible Playbook
beh: |
aktualizácia sudo apt
sudo apt install -y ansible
ansible-playbook -i hosts.ini my-playbook.yml --private-key=private_key.pem --user=${{ secrets.REMOTE_USER }}

Krok 4: Spustite pracovný postup

Kedykoľvek zatlačíte do hlavnej vetvy, GitHub automaticky spustí tento pracovný postup a tak spustí playbook.

Záver

To je všetko pre tento. Zaoberali sme sa tým, ako spustiť príručku Ansible pomocou akcií Github.