← Niveau 6 – Projektleder

Lektion 5 af 8 ⏱ 35 minutter Premium

Automatisk deployment

Sæt GitHub Actions op: push en ændring, og hjemmesiden opdaterer sig selv. Som professionelle.

Robotter gør arbejdet for dig

Lige nu virker det sådan: du ændrer koden → commit → push → GitHub Pages opdaterer. Det er allerede automatisering! Men professionelle går videre – GitHub Actions er en robot, der efter hvert push gør, hvad du beder den om: byg hjemmesiden, tjek for fejl, deploy.

Det kaldes CI/CD (continuous integration / continuous deployment). Det lyder kompliceret, men det er virkelig bare: “Robotter tjekker og deployer alt efter hver ændring.”

Vis mig: dit første workflow

Opgaver til robotter skrives ind i en fil i mappen .github/workflows/. For eksempel deploy.yml:

name: Check and deploy

on:
  push:
    branches: [main]   # run after every push to main

jobs:
  check:
    runs-on: ubuntu-latest   # the robot gets a clean Linux computer
    steps:
      - uses: actions/checkout@v4      # download my code
      - name: Check HTML
        run: |
          echo "Checking that index.html exists…"
          test -f index.html && echo "OK ✅"

Efter et push dukker en kørende robot op på GitHub under fanen Actions. Et grønt flueben betyder, at alt gik godt; et rødt X betyder, at noget er galt, og robotten fortæller dig hvad.

💡

GitHub Pages bruger allerede Actions! Hvis du kigger på fanen Actions, ser du, at deployment af Pages kører gennem et workflow kaldet “pages build and deployment”. Du tilføjer nu dine egne ekstra tjek ovenpå – som en rigtig chef, der ikke lader en ødelagt version gå live.

Nu er det din tur 💪

  1. Opret .github/workflows/deploy.yml efter eksemplet, push den, og se på fanen Actions.
  2. Ødelæg noget med vilje: omdøb index.html til index2.html, push – workflowet bliver rødt. Ret det og se det blive grønt. (Det er den vigtigste oplevelse i denne lektion!)
  3. Tilføj et andet trin til workflowet – tjek at der ikke er localhost tilbage i HTML’en:
      - name: No localhost in the code
        run: |
          if grep -r "localhost:3000" *.html; then
            echo "WARNING: localhost was left in the code!" && exit 1
          fi
          echo "OK ✅"
  1. Skriv i LAUNCH.md: “Hjemmesiden deployer automatisk, en robot tjekker hvert push.”

Tjek: Dit workflow kører i fanen Actions efter hvert push. Du har set både rødt (ødelagt) og grønt (rettet). Hjemmesiden opdaterer uden et eneste manuelt trin.

Det tager du med fra denne lektion