Guide til å sette opp CI/CD med GitHub Actions

Guide til å sette opp CI/CD med GitHub Actions

Hva er GitHub Actions?

GitHub Actions er en innebygd CI/CD-løsning som lar deg automatisere bygg, testing og deploy direkte i GitHub-repoet.

 

Forutsetninger

  • GitHub-konto
  • Et repository med kode
  • (Valgfritt) Cloud - eller server-tilgang for deploy

 

Steg 1: Opprette workflow-fil

I repoet, opprett mappen .github/workflows/.

 

Opprett en fil, f.eks. ci.yml.

 

name: CI

on:
  push:
    branches: [ main ]
  pull_request:
    branches: [ main ]

jobs:
  build-and-test:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3
      - name: Set up Node.js
        uses: actions/setup-node@v3
        with:
          node-version: '18'
      - name: Install dependencies
        run: npm install
      - name: Run tests
        run: npm test

 

Steg 2: Legg til bygg- og pakketrinn

Utvid jobben med bygg- og pakketrinn:

 

      - name: Build
        run: npm run build
      - name: Archive artefacts
        uses: actions/upload-artifact@v3
        with:
          name: build-output
          path: dist/

 

Steg 3: Deploy (eksempel til Heroku)

Legg til eget deploy-jobb som kjører etter vellykket bygg:

 

deploy:
    needs: build-and-test
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3
      - uses: actions/download-artifact@v3
        with:
         name: build-output
          path: dist/
      - name: Deploy to Heroku
        uses: akhileshns/heroku-deploy@v3.12.12
        with:
          heroku_api_key: ${{ secrets.HEROKU_API_KEY }}
          heroku_app_name: my-app
          heroku_email: you@example.com 

 

Tips: Legg HEROKU_API_KEY i repoets Secrets under Settings > Secrets and variables.

 

Steg 4: Monitorering og varsler

GitHub viser status i PR-er og commits.

Bruk actions/notifications eller koble til Slack/email via tredjeparts-actions.

 

Oppsummering

  • Lag workflow i .github/workflows/ci.yml.
  • Definer triggers (push, pull_request).
  • Sjekk ut kode, installer, test, bygg og pakk.
  • Konfigurer deploy med hemmeligheter.
  • Overvåk status i GitHub og få varsler.
  • Med dette har du full CI/CD-pipeline med GitHub Actions – automatisk, gratis og tett integrert i repositoriet ditt.
Publisert
Visninger 28
Lesetid 1 minutt og 25 sekunder
Skrevet av Andrè S
Emner
GitHub CI/CD utvikling teknologi Automatikk Data
Del