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.
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,releasejafork.
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!
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
- Työnkulkujen käynnistimet ja tapahtumat
- Testien suorittaminen GitHub Actionsilla
- Linttaus ja koodin laatutarkistukset
- Riippuvuuksien välimuistitus koontien nopeuttamiseksi