GitHub-műveletek az Ansible-ben

Github Muveletek Az Ansible Ben



Az Ansible egy népszerű, ingyenes és nyílt forráskódú automatizálási eszköz, amellyel automatizálhatjuk a DevOps-feladatokat, például a konfigurációkezelést, az alkalmazástelepítést stb.

Az Ansible és a GitHub Actions kombinálása lehetővé teszi számunkra, hogy automatizáljuk az Ansible játékkönyvek végrehajtását, amikor egy adott esemény történik egy adattárban, mint például a fő ágra való leküldés.







Ez az oktatóanyag megtanítja Önnek, hogyan állítson be egy GitHub-műveletet egy Ansible játékkönyv futtatásához, amely hasznos a kódváltozásokra válaszul történő telepítés automatizálásához.



Előfeltételek:

Mielőtt folytatná, győződjön meg arról, hogy rendelkezik a következőkkel:



  • GitHub fiók
  • Egy meglévő GitHub-tárház
  • Az Ansible játékkönyvek alapismeretei
  • Egy célgép, ahol az Ansible futtathatja a feladatokat. Győződjön meg arról, hogy az Ansible csatlakozhat ezekhez a gépekhez egy GitHub-futóról.

1. lépés: Az Ansible Environment beállítása

Hozza létre és tárolja az Ansible játékkönyvet és az összes kapcsolódó fájlt a GitHub-tárházban. Ennek tartalmaznia kell olyan fájlokat, mint a szerepsablonok, változók stb.





Egy példa-játékkönyv a következő:

---
- név: Győződjön meg arról, hogy az Nginx telepítve van a webszervereken
hosts: webszerver
válni: igen
feladatok:
- név: Frissítse az apt gyorsítótárat
alkalmas:
update_cache: igen

- név: Telepítse az Nginxet
alkalmas:
név: nginx
állapot: jelen

Győződjön meg arról, hogy rendelkezik egy leltárfájllal, amely megadja az Ansible célgépeit.



2. lépés: Állítsa be a titkokat a GitHub Repository-ban

Tekintettel arra, hogy a játékkönyvnek érzékeny információkra van szüksége, például SSH-kulcsokra vagy jelszavakra, a GitHub lehetőséget biztosít a titkok biztonságos tárolására:

Navigáljon a GitHub-tárházához.

Lépjen a Beállítások > Titkok és változók -> Műveletek -> Új adattár titkossága menüpontra.

3. lépés: Hozza létre a GitHub-műveleti munkafolyamatot

Az adattárban hozzon létre egy „.github/workflows” könyvtárat. Ebben a könyvtárban hozzon létre egy YAML-fájlt a munkafolyamathoz.

Adja hozzá a munkafolyamatot az alábbiak szerint:

név: Run Ansible Playbook
tovább:
nyom:
ágak:
- mester
állások:
telepíteni:
futó: ubuntu-latest
lépések:
- név: Checkout kód
használja: action/checkout@v2
- név: SSH kulcs beállítása
futás: |
echo '${{ secrets.SSH_PRIVATE_KEY }}' > private_key.pem
chmod 600 private_key.pem
- név: Run Ansible Playbook
futás: |
sudo apt frissítés
sudo apt install -y ansible
ansible-playbook -i hosts.ini my-playbook.yml --private-key=private_key.pem --user=${{ secrets.REMOTE_USER }}

4. lépés: Indítsa el a munkafolyamatot

Amikor a fő ágra lép, a GitHub automatikusan futtatja ezt a munkafolyamatot, és így végrehajtja a játékkönyvet.

Következtetés

Ennyi ennek az egynek. Megbeszéltük, hogyan futtathatunk Ansible játékkönyvet a Github-műveletekkel.