Jatkuvan toimituksen tutkiminen GitHub Actionsin avulla
GitHub Actions tarjoaa mekanismin ohjelmistojen toimitustyönkulkujen toteuttamiseen GitHub-ympäristön toiminnoilla. Tämä olisi optimaalinen CI/CD-lähestymistapa organisaatiolle malliskenaariossamme, kun otetaan huomioon sen suunnitelmat käyttää GitHubia DevOps-matkallaan. Tässä osiossa tutustut GitHub Actionsin käyttöön CI/CD-työnkulkujen luonnissa ja suorittamisessa.
Mitä GitHub Actions on?
GitHubin yhteydessä termillä toiminnoilla itse asiassa olla kaksoismerkitys. Ensimmäinen (capitalized Actions) edustaa GitHub-palvelua, joka tarjosi mahdollisuuden toteuttaa CI/CD-työnkulkuja. Toisessa (pienin kirjaimin toiminnot) suunnitellaan uudelleenkäytettävät yksiköt, jotka voidaan sisällyttää työnkulkuihin. Niiden avulla voidaan tarjota tietty toiminto, kuten komentosarjojen ja suoritettavien tiedostojen suorittaminen, artefaktien luominen ja lataaminen tai Azure-tilauksen käyttöoikeuksien määrittäminen.
Mitkä ovat GitHub Actionsin tärkeimmät osat?
GitHub Actionsin tärkeimpiä osia ovat seuraavat:
- työnkulun: VAIHEsarja, joka on tallennettu YAML-muotoiseen tiedostoon. Työnkulut suorittavat vaiheet, kun ne on käynnistetty joko manuaalisesti tai (useammin) automaattisesti säilöön liittyvillä toiminnoilla, kuten push-toiminnoilla tai haarayhdistämisillä.
- työn: työnkulun tärkein elementti. Työnkulun sisäiset työt voidaan suorittaa rinnakkain tai peräkkäin.
- vaiheen: työn ylin elementti. Jokainen vaihe on tehtävä tai toiminto, joka suorittaa tietyn toiminnon, kuten komentosarjan suorittamisen tai artefaktin luomisen.
- toiminto: valmis tai mukautettu toiminto (kuten edellä mainittiin). GitHub tarjoaa Marketplacen, josta löydät laajan valikoiman valmiita toimintoja.
- muuttujan: nimetty arvo, jonka avulla voit tallentaa ja käyttää uudelleen tietoja työnkulun vaiheissa. Voit luoda omia mukautettuja muuttujia tai käyttää mitä tahansa ennalta määritettyjä oletusympäristömuuttujia, jotka määritetään automaattisesti kuhunkin työnkulkuun.
- salaisen koodin: salattu muuttuja, jota voidaan käyttää luottamuksellisten tietojen tallentamiseen.
Miten GitHub Actions -työnkulku luodaan?
Voit luoda GitHub Actions -työnkulun seuraavasti:
- Luo säilö. Jotta voit ottaa käyttöön GitHub Actions -työnkulun, tarvitset GitHub-tilin ja säilön. Uusi säilö sisältää oletusarvoisesti oletushaaran, jonka nimi on yleensä pääsäilö.
- Luo .github/workflows-hakemiston. GitHub Actions -työnkulkujen pitäisi sijaita .github/workflows-hakemistossa säilön pääkansiossa.
- Luo YAML-tiedosto. GitHub Actions -työnkulun YAML-muoto on. Sen nimi on mielivaltainen, mutta laajennuksen arvoksi odotetaan .yml.
- Määritä YAML-tiedoston työnkulku ja tallenna muutokset. YAML-tiedoston on sisällettävä työnkulun määritys.
- Vahvista tallennettu tiedosto säilöön. Jos haluat viimeistellä työnkulun muutokset, sinun on suoritettava vahvistus (kuten kaikissa tiedostoissa, jotka ovat osa säilöä). Jos päätät luoda työnkulun paikallisessa tietokoneessa (GitHub-verkkoliittymän käyttämisen sijaan), kloonaat säilön, kun olet luonut sen, ota muutokset käyttöön ja vahvista ne paikallisesti ja lähetä ne sitten GitHubiin.
Tässä on yksinkertainen esimerkki GitHub Actions -työnkulusta, joka näyttää viestin Hei GitHub Actionsista! suoritettu kerran.
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!"
Työnkulun ensimmäinen rivi määrittää sen nimen, joka näkyy säilön Actions -välilehdessä GitHub-verkkoliittymässä.
on: [push] määrittää tapahtuman, joka käynnistää työnkulun suorittamisen (tässä tapauksessa työnkulun säilön mihin tahansa haaraan).
Työnkulku koostuu yhdestä työstä nimeltä say_hello, kuten jobs: riviä seuraava sisältö osoittaa. Seuraavalla rivillä (runs-on: ubuntu-latest) määritetään työn suorittamiseen käytettävän käyttöjärjestelmän tyyppi. Valinta riippuu työn sisältämästä tehtävästä, ja tässä tapauksessa työ suoritettaisiin myös missä tahansa Windows-pohjaisessa käyttöjärjestelmässä.
Työ koostuu kahdesta osavaiheesta, jotka on merkitty steps: rivin jälkeen olevalla sisällöllä. Vaiheen syntaksi tukee valinnaista nimimääritettä, joka auttaa ymmärtämään vaiheen tarkoituksen työnkulun suorittamisten tarkastelun aikana. Syntaksin loppuosa riippuu toiminnon tyypistä, joka tietty vaihe on tarkoitus suorittaa. Tässä esimerkissä ensimmäinen vaihe on tarkistaa nykyinen säilö (joka lataa säilön sisällön järjestelmään, jossa työ on käynnissä), kun taas toinen suorittaa echo komento, joka näyttää ystävällisen viestin.
Integroidaksesi CI/CD-toiminnon GitHub Actions -työnkulkuihin, lisää joukko vaiheita (yhdessä tai useammassa työssä), jotka suorittavat automaattisia koonti-, testi- ja käyttöönottotoimintoja. Kun työnkulun suorittaminen on käynnistetty, voit seurata sen edistymistä siirtymällä GitHub-säilön Toiminnot-välilehteen.
Muistiinpano
Saat mahdollisuuden käsitellä merkityksellisiä esimerkkejä GitHub Actions -työnkuluista, jotka kuvaavat CI/CD-integrointia tämän moduulin labratyössä.