Folyamatos teljesítés felfedezése a GitHub Actions használatával

Befejeződött

A GitHub Actions a GitHub platform képességeinek használatával biztosítja a szoftverkézbesítési munkafolyamatok implementálásának mechanizmusát. Ez lenne a legoptimálisabb CI/CD-megközelítés a szervezet számára a mintaforgatókönyvben, figyelembe véve a GitHub használatát a DevOps folyamatában. Ebben a leckében megismerheti, hogyan hozhat létre és futtathat CI-/CD-munkafolyamatokat a GitHub Actions használatával.

Mik azok a GitHub Actionsek?



A GitHub kontextusában a műveletek kifejezés valójában kettős jelentéssel bír. Az első (nagybetűs műveletek) a GitHub szolgáltatást jelöli, amely lehetővé tette a CI/CD-munkafolyamatok implementálását. A második (kisbetűs műveletek) olyan újrafelhasználható egységeket jelöl ki, amelyek a munkafolyamatokban egy adott funkció, például szkriptek és végrehajtható fájlok futtatásához, összetevők létrehozásához és feltöltéséhez, illetve azure-előfizetéshez való hozzáférés beállításához használhatók.

Folyamatos szállítás diagramja a GitHub Actions segítségével.

Mik a GitHub Actions fő összetevői?

A GitHub Actions fő összetevői a következők:

  • munkafolyamat: EGY YAML-formátumú fájlban tárolt lépések sorozata. A munkafolyamatok akkor hajtják végre a lépéseket, ha manuálisan vagy (gyakrabban) automatikusan aktiválódnak az adattárral kapcsolatos tevékenységekkel, például leküldésekkel vagy ágegyesítésekkel.
  • feladat: a munkafolyamat legfontosabb eleme. A munkafolyamaton belüli feladatok párhuzamosan vagy egymást követően is futtathatók.
  • lépés: egy feladat legfelső eleme. Minden lépés egy adott tevékenységet végrehajtó tevékenység vagy művelet, például szkript futtatása vagy összetevő létrehozása.
  • művelet: előre összeállított vagy egyéni fejlesztésű tevékenység (a korábban említettek szerint). A GitHub egy piacteret biztosít, ahol számos előre összeállított művelet található.
  • változó: névvel ellátott érték, amely lehetővé teszi az adatok tárolását és újrafelhasználását a munkafolyamat lépései között. Létrehozhat saját egyéni változókat, vagy használhatja az egyes munkafolyamatokon belül automatikusan beállított előre definiált alapértelmezett környezeti változókat.
  • titkos: bizalmas adatok tárolására használható titkosított változó.

Hogyan hozhat létre GitHub Actions-munkafolyamatot?

GitHub Actions-munkafolyamat létrehozásához kövesse az alábbi lépéseket:

  1. Hozzon létre egy adattárat. A GitHub Actions-munkafolyamat implementálásához szüksége lesz egy GitHub-fiókra és egy adattárra. Alapértelmezés szerint az új adattár tartalmazza az alapértelmezett ágat, amelyet általában main-nek hívnak.
  2. Hozzon létre egy .github/workflows könyvtárat. A GitHub Actions-munkafolyamatoknak a .github/workflows könyvtárban kell elhelyezkedniük az adattár gyökérkönyvtárában.
  3. Hozzon létre egy YAML-fájlt. A GitHub Actions-munkafolyamat YAML formátumú. A neve tetszőleges, de a bővítmény várhatóan .yml lesz.
  4. Definiálja a munkafolyamatot a YAML-fájlban, és mentse a módosításokat. A YAML-fájlnak tartalmaznia kell a munkafolyamat-definíciót.
  5. A mentett fájl elkötelezése a tárolóba. A munkafolyamat módosításainak véglegesítéséhez végre kell hajtania a véglegesítést, mint minden olyan fájlt, amely az adattár részét képezi. Ha úgy dönt, hogy létrehoz egy munkafolyamatot a helyi számítógépen (a GitHub webes felületének használata helyett), klónozza az adattárat a létrehozás után, alkalmazza és véglegesítse a módosításokat helyileg, majd leküldi őket a GitHubra.

Íme egy egyszerű példa egy GitHub Actions-munkafolyamatra, amely végrehajtásakor a Hello from GitHub Actions! üzenetet jeleníti meg.

name: Simple GitHub Actions workflow

on: [push]

jobs:
  say_hello:
    runs-on: ubuntu-latest

    steps:
    - name: Checkout Repository
      uses: actions/checkout@v2

    - name: Run Build Script
      run: |
        echo "Hello, GitHub Actions!"

A munkafolyamat első sora határozza meg a nevét, amely a GitHub webes felületén, az adattár Műveletek lapján jelenik meg. A on: [push] sor kijelöli az eseményt, amely elindítja a munkafolyamat futtatását (ebben az esetben leküldés a munkafolyamat adattárának bármely ágába).

A munkafolyamat egyetlen , say_hello nevű feladatból áll, amelyet a jobs: sort követő tartalom jelez. A következő sor (runs-on: ubuntu-latest) határozza meg a feladat futtatásához használni kívánt operációs rendszer típusát. A választás a feladat által tartalmazott feladatoktól függ, és ebben az esetben a feladat bármely Windows-alapú operációs rendszeren is futna.

A feladat két lépésből áll, amelyeket a steps: sort követő tartalom jelez. A lépés szintaxisa támogatja az opcionális névattribútumot, amely segíthet megérteni a lépés célját a munkafolyamat-futtatások áttekintésekor. A szintaxis fennmaradó része attól függ, hogy egy adott lépés milyen típusú műveletet hajtson végre. Ebben a példában az első lépés az aktuális adattár kivétele (amely letölti az adattár tartalmát arra a rendszerre, ahol a feladat fut), a második pedig az echo parancsot futtatja, amely egy barátságos üzenetet jelenít meg.

Ha a CI/CD funkciót a GitHub Actions munkafolyamataiba szeretné integrálni, több lépést is hozzáadhat (egy vagy több feladatban), amelyek automatizált buildelési, tesztelési és üzembe helyezési műveleteket hajtanak végre. A munkafolyamat-végrehajtás aktiválása után nyomon követheti annak előrehaladását a GitHub-adattár "Műveletek" lapjára lépve.

Jegyzet

A GitHub Actions-munkafolyamatok értelmesebb példáival dolgozhat, amelyek a modul laborjában szemléltetik a CI/CD-integrációt.