DevOps-bootcamp · Lektion

Introduktion till GitHub Actions

Förstå grundkoncepten i GitHub Actions, inklusive workflows, händelser, jobb och steg.

Lektion 1 av 411 steg

Introduktion till GitHub Actions är en gratis lektion i DevOps-bootcamp på CoddyKit. Detta är lektion 1 av 4. Du kan läsa vilka 3 lektioner som helst i den här lärvägen kostnadsfritt i sin helhet – därefter låser CoddyKit PRO upp alla lektioner, plus praktisk övning med en inbyggd kodredigerare och en AI-lärare dygnet runt. Den ingår i lärvägen för DevOps-bootcamp, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i DevOps-bootcamp innehåller totalt 4 lektioner.

Introduktion till GitHub Actions

Välkommen till GitHub Actions! Den här kraftfulla funktionen på GitHub låter Er automatisera uppgifter direkt i Ert repository.

Tänk på det som Er personliga robotassistent för kod. Den kan bygga Era projekt, köra tester eller till och med distribuera Er webbplats automatiskt när Ni gör ändringar.

I den här lektionen utforskar vi grundbegreppen: arbetsflöden, händelser, jobb och steg.

Arbetsflöden: Er plan för automatisering

I centrum för GitHub Actions står arbetsflödet. Ett arbetsflöde är en automatiserad procedur som kör ett eller flera jobb.

  • Arbetsflöden definieras i YAML-filer.
  • Dessa filer finns i katalogen .github/workflows i Ert repository.
  • Varje arbetsflödesfil representerar en separat automatiseringsprocess.

När vissa händelser inträffar, till exempel när kod pushas, aktiveras Era arbetsflöden!

Ett arbetsflödes anatomi

GitHub Actions-arbetsflöden skrivs i YAML, en människovänlig standard för dataseriefiering. Här är en grundläggande struktur:

name: My First Workflow

on: [push]

jobs:
  my_first_job:
    runs-on: ubuntu-latest
    steps:
      - name: Greet Me
        run: echo "Hello CoddyKit!"

Händelser: Utlösare för automatisering

Händelser är specifika aktiviteter som utlöser körningen av Ert arbetsflöde. De talar om för GitHub Actions när automatiseringsprocessen ska starta.

Vanliga händelser är:

  • push: När kod pushas till repositoryt.
  • pull_request: När en pull request öppnas, uppdateras eller stängs.
  • schedule: För att köra vid specifika tidpunkter, ungefär som ett cron-jobb.

Ni kan ange en eller flera händelser i arbetsflödesfilen med nyckelordet on:.

name: On Push Example

on: [push, pull_request] # This workflow runs on push or pull request events

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout code
        uses: actions/checkout@v3
      - name: Run a simple command
        run: echo "Code was pushed or PR updated!"

Jobb: Organiserade uppgifter

Ett jobb är en uppsättning steg som körs på samma runner. Arbetsflöden består av ett eller flera jobb, som kan köras parallellt eller sekventiellt.

  • Varje jobb körs i en ny instans av den virtuella miljö som anges med runs-on.
  • Vanliga värden för runs-on är ubuntu-latest, windows-latest och macos-latest.

Jobb definierar vad som behöver göras, till exempel att bygga en applikation eller köra tester.

Steg: Enskilda instruktioner

Inom ett jobb är steg enskilda uppgifter som körs. Ett steg kan vara:

  • Ett kommandoradsskript med run.
  • En action med uses – en återanvändbar koddel.

Stegen körs i den ordning de definieras. Om ett steg misslyckas misslyckas jobbet som standard, och efterföljande steg hoppas över.

name: Steps Demo

on: [push]

jobs:
  my_job:
    runs-on: ubuntu-latest
    steps:
      - name: Step 1: Say Hello
        run: echo "Hello from Step 1!"
      - name: Step 2: List files
        run: ls -la
      - name: Step 3: Echo another message
        run: echo "Step 3 completed."

Actions: Återanvändbara koddelar

Actions är den mest detaljerade enheten för automatisering. De är återanvändbara koddelar som utför en specifik uppgift.

I stället för att skriva komplexa skript för vanliga uppgifter kan Ni använda befintliga actions från GitHub Marketplace eller skapa egna.

  • Använd nyckelordet uses: för att referera till en action.
  • Actions kan komma från GitHub, till exempel actions/checkout, från en Docker-avbildning eller från en JavaScript-fil.

Det sparar tid och främjar enhetlighet!

name: Using Actions

on: [push]

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout repository code
        uses: actions/checkout@v4 # This action checks out your repo
      - name: Setup Node.js environment
        uses: actions/setup-node@v4
        with:
          node-version: '20'
      - name: Install dependencies
        run: npm install

Bygg ett komplett arbetsflöde

Låt oss kombinera allt vi har lärt oss i ett enda körbart exempel på ett arbetsflöde. Det här arbetsflödet checkar ut Er kod och skriver ut en hälsning.

Den här YAML-filen skulle sparas som .github/workflows/greeting.yml i Ert repository.

name: Simple Greeting Workflow

on: [push] # Triggers on any push to the repository

jobs:
  greet_job:
    runs-on: ubuntu-latest # Runs on a fresh Ubuntu virtual machine
    steps:
      - name: Checkout the repository
        uses: actions/checkout@v4 # Action to get your code
      - name: Say hello
        run: echo "Hello, GitHub Actions User!" # A simple command-line step
      - name: Show current directory
        run: pwd # Another command to show where we are

Så körs ett arbetsflöde

När en händelse, till exempel en push, inträffar gör GitHub Actions följande:

  1. Läser den relevanta YAML-filen för arbetsflödet från .github/workflows/.
  2. Initierar en virtuell maskin, en runner, för varje jobb.
  3. Kör varje steg i jobbet sekventiellt.
  4. Rapporterar statusen, lyckades/misslyckades, för varje steg och för hela jobbet.

Ni kan övervaka processen på fliken "Actions" i Ert GitHub-repository.

Snabbkontroll: Arbetsflödets komponenter

Vilka av följande är viktiga komponenter i en GitHub Actions-arbetsflödesfil?

Sammanfattning: Introduktion till GitHub Actions

Bra jobbat! Ni har lärt Er grunderna i GitHub Actions:

  • Arbetsflöden: Era automatiseringsplaner i YAML-filer.
  • Händelser: Utlösare som startar Era arbetsflöden.
  • Jobb: Uppsättningar av steg som körs på en runner.
  • Steg: Enskilda kommandon eller återanvändbara actions.
  • Actions: Återanvändbara arbetsenheter för vanliga uppgifter.

Härnäst går vi vidare till att bygga mer praktiska CI/CD-arbetsflöden!

Gratis att börja

Lär dig DevOps-bootcamp med en AI-lärare – gratis

Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.

Kurser
142
Lektioner
568

Vanliga frågor

Är lektionen ”Introduktion till GitHub Actions” gratis?

Ja – du kan läsa vilka 3 lektioner som helst i lärvägen DevOps-bootcamp, inklusive ”Introduktion till GitHub Actions”, kostnadsfritt i sin helhet här på webben. Därefter låser CoddyKit PRO upp alla lektioner, plus interaktiv övning med en inbyggd kodredigerare och en AI-lärare dygnet runt. Kursen i DevOps-bootcamp innehåller totalt 4 lektioner.

Vad lär jag mig i ”Introduktion till GitHub Actions”?

Förstå grundkoncepten i GitHub Actions, inklusive workflows, händelser, jobb och steg. Ni övar på DevOps-bootcamp med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.

Behöver jag någon erfarenhet för att börja lära mig DevOps-bootcamp?

Du behöver inga förkunskaper. Utbildningen i DevOps-bootcamp på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 1 av 4.

Hur lång tid tar lektionen ”Introduktion till GitHub Actions”?

De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.

Kan jag skriva och köra kod i den här DevOps-bootcamp-lektionen?

Ja. Varje DevOps-bootcamp-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.

Alla lektioner i den här kursen

  1. Introduktion till GitHub Actions
  2. Bygga CI/CD-workflows
  3. Anpassade Actions och Marketplace
  4. Secrets och miljövariabler i Actions
← Tillbaka till DevOps-bootcamp