Udvikling involverer ofte trin som at bygge og teste din kode. Strømlin din arbejdsgang – og sørg for, at den er pålidelig – ved at automatisere disse opgaver.
At definere arbejdsgange til at automatisere opgaver kan i høj grad accelerere din softwareudvikling. Der findes mange strategier for at strømline arbejdsgange, hvor valget ofte afhænger af det specifikke værktøj og det specifikke miljø, der bruges.
En populær løsning, som du kan bruge til at automatisere dine udviklingsarbejdsgange, er GitHub Actions. GitHub Actions giver mulighed for problemfri integration og automatisering af softwareudviklingsprocesser. Ved at bruge GitHub Actions kan du definere, dele og automatisk køre brugerdefinerede arbejdsgange.
Hvad er GitHub Actions?
GitHub Actions er en fleksibel og skalerbar platform til automatisering af opgaver og arbejdsgange i softwareprojekter. Det eliminerer behovet for komplekse eksterne CI/CD-systemer ved at give et centraliseret rum til at skabe, dele og genbruge arbejdsgange.
Kritiske funktioner i GitHub Actions inkluderer workflowautomatisering, et stort økosystem af præbyggede handlinger og samarbejde med eksisterende workflows. GitHub Actions giver mulighed for tilpasning gennem variabler, hemmeligheder og input. Det tilbyder også kompatibilitet på tværs af platforme for forskellige programmeringssprog og operativsystemer.
GitHub Actions forenkler kontinuerlig integration og implementering og administrerer afhængigheder. Det sikrer også test og kvalitetssikring og strømliner kontinuerlig levering og implementering.
Det tilbyder essentielle use cases som kontinuerlig integration og test, automatiseret kodegennemgang og -analyse, releaseautomatisering og cloud-infrastrukturprovisionering. Disse funktioner forbedrer udviklingsarbejdsgange og fremmer produktivitet og samarbejde.
Kom godt i gang med GitHub Actions
Før du dykker ned i forviklingerne ved GitHub Actions, skal du aktivere det for din GitHub-depot.
Du kan aktivere GitHub Actions for dit lager ved at følge disse trin:
- Naviger til dit lager på GitHub og klik på fanen "Handlinger" i lagermenuen.
- Hvis dette er din første gang, du får adgang til GitHub Actions for depotet, vil du få en prompt om at konfigurere en arbejdsgang. Vælg en passende workflow-skabelon, eller opret en ny fra bunden.
- Opsætning af arbejdsgangen vil aktivere GitHub Actions for depotet.
Forstå GitHub-handlinger: Nøgleord og koncepter
GitHub Actions kredser om flere grundlæggende koncepter. Disse koncepter danner byggestenene i dets automatiseringsevner. Du skal forstå følgende nøgleord for at få mest muligt ud af GitHub Actions.
Arbejdsgange
Arbejdsgange er et afgørende begreb; de lader dig definere tilpassede automatiserede processer. Disse automatiserede processer kører, når der opstår specifikke hændelser i dit lager.
Du definerer arbejdsgange med YAML-filer og specificerer de job, de består af.
Jobs
En arbejdsgang indeholder et eller flere job. Hvert job repræsenterer en arbejdsenhed, der kan køre sideløbende eller sekventielt med andre job i en arbejdsgang. Du vil definere job med en YAML-fil, og du vil typisk definere dem som en række trin.
Trin
Trin er de individuelle opgaver eller handlinger, der udgør et job. De repræsenterer den mindste arbejdsenhed i en arbejdsgang. Trin kan udføre en lang række handlinger, såsom at køre kommandoer, kalde eksterne API'er eller implementere kode.
Handlinger
Handlinger er genbrugelige kodeenheder, der indkapsler specifik funktionalitet. Du kan bruge handlinger på tværs af flere arbejdsgange.
Handlinger omfatter byggekode, implementering af applikationer, afsendelse af meddelelser eller interaktion med eksterne tjenester. Der er tre typer handlinger tilgængelige:
- Forudbyggede handlinger: De handlinger, der er oprettet af GitHub eller fællesskabet, er tilgængelige på GitHub Actions Marketplace. Du kan bruge dem i dine arbejdsgange ved at angive handlingens navn og version i anvendelsesfeltet (f.eks. bruger: actions/checkout@v2).
- Docker Container Actions: Du kan definere handlinger ved hjælp af Docker-containere. Dette giver dig mulighed for at indkapsle et sæt kommandoer eller scripts i et containerbillede og bruge det som en handling. Du kan angive Docker-billedet i anvendelsesfeltet, ligesom en forudbygget handling (f.eks. bruger: docker://node: 14).
- Sammensatte kørselstrin: Sammensatte kørselstrin giver dig mulighed for at definere tilpassede handlinger direkte i din workflowfil. Disse trin kan omfatte en sekvens af shell-kommandoer eller reference til eksterne scripts. De hjælper med at skabe små, genbrugelige handlinger, der er specifikke for din arbejdsgang.
Handlinger er byggestenene i GitHub Actions, da de giver dig mulighed for at udvide og tilpasse dine automatiseringsarbejdsgange.
Begivenheder
Hændelser udløser arbejdsgange til at starte. Hændelser kan være specifikke handlinger, såsom lager-push, oprettelse af pull-anmodninger eller planlagte handlinger. GitHub tilbyder en bred vifte af begivenheder, som du kan udnytte til at udløse dine arbejdsgange baseret på de ønskede forhold.
Løbere
Løbere er virtuelle maskiner eller containere, der udfører job inden for en arbejdsgang. GitHub leverer hostede løbere, der understøtter en række forskellige operativsystemer og miljøer. Du kan også konfigurere selvværtede løbere for at opfylde specifikke krav.
Oprettelse af arbejdsgange med GitHub-handlinger
Du definerer arbejdsgange i en YAML-fil (Yet Another Markup Language) med YAML-syntaks. YAML giver en menneskelig læsbar og let forståelig måde at definere konfigurationer og arbejdsgange på.
Lave en .github/workflows mappe i dit lager for at være vært for YAML-filer, der repræsenterer din arbejdsgang.
Her er indholdet af en simpel workflow YAML-fil:
navn:GåWorkflow
på:
skubbe:
grene:
-vigtigstepull_request:
grene:
-vigtigstejob:
bygge:
kører på:ubuntu-senestetrin:
-navn:Checkoutkode
bruger:actions/checkout@v2-navn:SætopGå
bruger:actions/setup-go@v2
med:
go-version:'1.16'-navn:Bygprojekt
løb:gåbygge./...
-navn:Løbtests
løb:gåprøve./...
Dette YAML-program definerer en arbejdsgang kaldet "Go Workflow" for et Go-projekt.
Workflowet definerer to hændelser, der udløser det: skubbe og pull_request på den vigtigste afdeling. Det betyder, at den kører, når der er en push- eller pull-anmodning til hovedgrenen.
Det bygge job kører på en ubuntu-seneste runner, en GitHub-hostet virtuel maskine, som du kan angive til at køre jobbet.
Det trin komponent indeholder en liste over handlinger, der skal køres i rækkefølge. I dette tilfælde tjekker jobbet først koden ved hjælp af handlinger/checkout handling og bygger derefter projektet op ved at køre gå i gang med at bygge./... og testene ved at køre gå til test./... kommando.
Når du har defineret din workflow-fil, kan du commit og skubbe den til dit lager. GitHub Actions registrerer og kører den nye arbejdsgang, når de angivne hændelser opstår.
Du kan tjekke dit lager Handlinger fanen for information om dine GitHub-handlinger og arbejdsgange.
Implementer React-applikationer til Firebase med GitHub-handlinger
Der er meget, du kan gøre med GitHub Actions. For eksempel er det utrolig nyttigt til automatisk at implementere React-apps til Firebase.
Du kan konfigurere en CI/CD-pipeline, der bygger, tester og implementerer din React-applikation til Firebase, når du sender ændringer til dit lager. Integration af GitHub Actions og Firebase kan hjælpe dig med effektive og pålidelige implementeringer.