CI/CD GitHub Actionsilla ja DevOps-putket · Oppitunti

Työnkulkujen käynnistimet ja tapahtumat

Tutustukaa erilaisiin tapahtumiin, jotka voivat käynnistää GitHub Actions -työnkulkuja, kuten push- ja pull request -tapahtumiin sekä ajastettuihin tapahtumiin.

Oppitunti 1/411 vaihetta

Työnkulkujen käynnistimet ja tapahtumat on ilmainen CI/CD GitHub Actionsilla ja DevOps-putket-oppitunti CoddyKitissä. Tämä on oppitunti 1/4. Voit lukea koko oppitunnin alta ilmaiseksi ja harjoitella sen jälkeen käytännössä selaimessa sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla. Oppitunti kuuluu CI/CD GitHub Actionsilla ja DevOps-putket-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. CI/CD GitHub Actionsilla ja DevOps-putket-kurssilla on yhteensä 4 oppituntia.

Mikä käynnistää workflow'n?

GitHub Actionsin workflow't eivät käynnisty itsestään. Ne tarvitsevat signaalin käynnistymiseen! Tätä signaalia kutsutaan käynnistimeksi.

Käynnistimet ovat tiettyjä tapahtumia, jotka kertovat GitHub Actionsille: "Hei, jotain tapahtui! On aika suorittaa tämä workflow." Käynnistimien ymmärtäminen on tärkeää, jotta kehitysprosessin voi automatisoida tehokkaasti.

`on`-avainsana

Workflow-tiedostossa (hakemistossa .github/workflows sijaitsevassa .yml-tiedostossa) määrität käynnistimet on-avainsanalla.

Tämä osio kertoo GitHub Actionsille, milloin workflow suoritetaan. Voit määrittää yhden tai useita tapahtumia.

name: My First Triggered Workflow

on:
  push: # This workflow will run on every push event

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout code
        uses: actions/checkout@v4
      - name: Run a simple command
        run: echo "Workflow triggered!"

Koodin push-tapahtumiin reagoiminen

push-tapahtuma on yksi yleisimmistä käynnistimistä. Se aktivoituu aina, kun koodia pusketaan repositorioon, olipa kyseessä uusi commit tai yhdistäminen.

Oletuksena push-käynnistin suoritetaan kaikille haaroille.

on: push

jobs:
  greeting:
    runs-on: ubuntu-latest
    steps:
      - name: Say Hello
        run: echo "Code was pushed!"

Kohdennetut push-tapahtumat

Voit tarkentaa push-käynnistintä suorittamaan workflow'n vain tiettyjen haarojen yhteydessä tai silloin, kun muutoksia tehdään tiettyihin tiedostopolkuihin. Tämä auttaa optimoimaan workflow't.

  • branches: Suoritetaan vain, kun pusheja tehdään tietynnimisiin haaroihin.
  • paths: Suoritetaan vain, kun muutoksia tehdään määritetyissä hakemistoissa oleviin tiedostoihin.
on:
  push:
    branches:
      - main
      - 'feature/*' # Glob pattern for feature branches
    paths:
      - 'src/**' # Only if changes in src/ directory

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - run: echo "Push to relevant branch/path detected!"

Pull requestien tarkistusten automatisointi

pull_request-tapahtuma aktivoituu, kun pull request avataan, synkronoidaan (PR-haaraan pusketaan uusia committeja) tai avataan uudelleen.

Se sopii erinomaisesti automaattisten tarkistusten, kuten testien, linttauksen tai koodin tarkistuksen, suorittamiseen ennen muutosten yhdistämistä pääkoodikantaan.

on: pull_request

jobs:
  pr_check:
    runs-on: ubuntu-latest
    steps:
      - name: PR opened/updated
        run: echo "A pull request was opened or updated!"

PR:ien erityistoiminnot

Voit tarkentaa pull_request-käynnistintä määrittämällä types-arvon. Näin workflow reagoi vain tiettyihin pull requestiin liittyviin toimintoihin.

  • opened: Kun uusi pull request luodaan.
  • synchronize: Kun PR:n haaraan pusketaan uusia committeja.
  • reopened: Kun suljettu pull request avataan uudelleen.
on:
  pull_request:
    types: [opened, synchronize, reopened] # Run only on these PR actions

jobs:
  pr_review:
    runs-on: ubuntu-latest
    steps:
      - run: echo "PR action: ${{ github.event.action }}"

Aikaperusteiset käynnistimet

schedule-tapahtuman avulla työnkulkuja voi suorittaa tiettyinä aikoina cron-syntaksia käyttäen. Se sopii erinomaisesti päivittäisiin raportteihin, siivoustehtäviin ja säännöllisiin tarkistuksiin.

Cron-syntaksissa käytetään viittä tähteä, jotka tarkoittavat seuraavia: minute hour day-of-month month day-of-week.

on:
  schedule:
    - cron: '0 0 * * *' # Run daily at midnight UTC
    - cron: '0 12 * * 1-5' # Run at 12 PM UTC, Mon-Fri

jobs:
  scheduled_task:
    runs-on: ubuntu-latest
    steps:
      - run: echo "Scheduled workflow running!"

Työnkulkujen manuaalinen suorittaminen

Joskus työnkulku täytyy suorittaa manuaalisesti esimerkiksi käyttöönottoa tai tiettyä ylläpitotehtävää varten. workflow_dispatch-tapahtuma mahdollistaa tämän.

Kun tämä käynnistin on määritetty, kyseisen työnkulun GitHub-käyttöliittymään ilmestyy "Run workflow" -painike, jonka avulla työnkulku voidaan käynnistää tarvittaessa.

on: workflow_dispatch

jobs:
  manual_task:
    runs-on: ubuntu-latest
    steps:
      - run: echo "This workflow was triggered manually!"

Perusteita pidemmälle

Vaikka push, pull_request, schedule ja workflow_dispatch ovat yleisimpiä, GitHub Actions tarjoaa monia muitakin tapahtumakäynnistimiä.

  • workflow_call: Uudelleenkäytettävien työnkulkujen luomiseen.
  • repository_dispatch: Työnkulkujen käynnistämiseen ulkoisista järjestelmistä API-kutsun avulla.
  • Monia muita tiettyihin GitHub-tapahtumiin liittyviä käynnistimiä, kuten issues, release ja fork.

Käynnistinhaaste

Tehtävänäsi on määrittää työnkulku, joka luo viikoittaisen raportin automaattisesti joka perjantai kello 17.00 UTC riippumatta koodiin tehdyistä muutoksista. Mikä tapahtumakäynnistin sopii tähän tehtävään parhaiten?

Käynnistimet kerrattuna

Hienoa työtä GitHub Actions -käynnistimien tutkimisessa! Olet oppinut, miten työnkulut käynnistyvät erilaisten tapahtumien seurauksena:

  • push: Tietovarastoon lähetettyjen muutosten yhteydessä.
  • pull_request: Pull request -pyyntöihin liittyviä toimintoja varten.
  • schedule: Cron-syntaksia käyttäviin aikaperusteisiin ja toistuviin tehtäviin.
  • workflow_dispatch: Manuaaliseen suorittamiseen käyttöliittymästä tai API:sta.

Oikean käynnistimen valitseminen on ensimmäinen askel tehokkaiden ja toimivien CI/CD-putkien rakentamisessa!

Aloita maksutta

Opi CI/CD GitHub Actionsilla ja DevOps-putket tekoälytuutorin avulla — ilmaiseksi

Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.

Kurssit
12
Oppitunnit
48

Usein kysytyt kysymykset

Onko oppitunti ”Työnkulkujen käynnistimet ja tapahtumat” ilmainen?

Kyllä – oppitunnin ”Työnkulkujen käynnistimet ja tapahtumat” koko tekstin voi lukea täällä verkossa ilmaiseksi. Jos haluat harjoitella interaktiivisesti sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla sekä avata koko CI/CD GitHub Actionsilla ja DevOps-putket-kurssin, päivitä CoddyKit PROhon. CI/CD GitHub Actionsilla ja DevOps-putket-kurssilla on yhteensä 4 oppituntia.

Mitä opin oppitunnilla ”Työnkulkujen käynnistimet ja tapahtumat”?

Tutustukaa erilaisiin tapahtumiin, jotka voivat käynnistää GitHub Actions -työnkulkuja, kuten push- ja pull request -tapahtumiin sekä ajastettuihin tapahtumiin. Harjoittelet CI/CD GitHub Actionsilla ja DevOps-putket-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.

Tarvitsenko kokemusta aloittaakseni CI/CD GitHub Actionsilla ja DevOps-putket-opiskelun?

Aiempi kokemus ei ole tarpeen. CoddyKitin CI/CD GitHub Actionsilla ja DevOps-putket-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 1/4.

Kuinka kauan ”Työnkulkujen käynnistimet ja tapahtumat”-oppitunnin suorittaminen kestää?

Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.

Voinko kirjoittaa ja suorittaa koodia tällä CI/CD GitHub Actionsilla ja DevOps-putket-oppitunnilla?

Kyllä. Jokainen CI/CD GitHub Actionsilla ja DevOps-putket-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.

Kaikki tämän kurssin oppitunnit

  1. Työnkulkujen käynnistimet ja tapahtumat
  2. Testien suorittaminen GitHub Actionsilla
  3. Linttaus ja koodin laatutarkistukset
  4. Riippuvuuksien välimuistitus koontien nopeuttamiseksi
← Takaisin: CI/CD GitHub Actionsilla ja DevOps-putket