← Nivå 6 – Prosjektleder

Leksjon 5 av 8 ⏱ 35 minutter Premium

Automatisk deployment

Sett GitHub Actions op: push en endring, og nettsiden oppdaterer sig selv. Som profesjonelle.

Robotter gjør arbejdet for dig

Akkurat nå fungerer det sådan: du endrer koden → commit → push → GitHub Pages oppdaterer. Det er allerede automatisering! Men profesjonelle går videre – GitHub Actions er en robot, der etter hvert push gør, hva du beder den om: byg nettsiden, sjekk for feil, deploy.

Det kaldes CI/CD (continuous integration / continuous deployment). Det lyder kompliceret, men det er virkelig bare: “Robotter sjekker og deployer alt etter hver endring.”

Jeg viser deg: ditt 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 ✅"

Etter et push dukker en kjørende robot op på GitHub under fanen Actions. Et grønt kryss av betyder, at alt gik godt; et rødt X betyder, at noe er galt, og robotten forteller deg hva.

💡

GitHub Pages bruker allerede Actions! Hvis du ser på fanen Actions, ser du, at deployment av Pages kjører gjennom et workflow kalt “pages build and deployment”. Du legger til nu dine egne ekstra sjekk ovenpå – som en ekte chef, der ikke lader en ødelagt versjon gå live.

Nå er det din tur 💪

  1. Opprett .github/workflows/deploy.yml etter eksemplet, push den, og se på fanen Actions.
  2. Ødelæg noe med vilje: omdøb index.html til index2.html, push – workflowet blir rødt. Ret det og se det bli grønt. (Det er den vigtigste oplevelse i denne leksjon!)
  3. Legg til et andet trin til workflowet – sjekk at der ikke er localhost tilbake 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: “Nettsiden deployer automatisk, en robot sjekker hvert push.”

Sjekk: Ditt workflow kjører i fanen Actions etter hvert push. Du har set både rødt (ødelagt) og grønt (rettet). Nettsiden oppdaterer uden et eneste manuelt trin.

Dette tar du med deg fra leksjonen