Professionele Git- en GitHub-werkwijze · Les

CI/CD-workflows bouwen

Maak praktische CI/CD-pipelines om uw code automatisch te builden, testen en deployen na pushes of pull requests.

Les 2 van 411 stappen

CI/CD-workflows bouwen is een gratis Professionele Git- en GitHub-werkwijze-les op CoddyKit. Dit is les 2 van 4. Je kunt de volledige les hieronder gratis lezen en daarna in de browser praktisch oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject Professionele Git- en GitHub-werkwijze. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus Professionele Git- en GitHub-werkwijze bevat in totaal 4 lessen.

Welkom bij CI/CD

In deze les leer je krachtige pipelines voor Continuous Integration (CI) en Continuous Deployment (CD) bouwen met GitHub Actions.

CI/CD automatiseert je softwareontwikkelingsproces, van codewijzigingen tot implementatie, waardoor het sneller en betrouwbaarder wordt.

Waarom CI/CD belangrijk is

Waarom is automatisering zo belangrijk in moderne softwareontwikkeling?

  • Snellere feedback: ontdek bugs en integratieproblemen vroeg door tests automatisch uit te voeren.
  • Consistente builds: zorg ervoor dat elke build dezelfde stappen volgt en verminder problemen van het type 'het werkt op mijn computer'.
  • Betrouwbare releases: implementeer nieuwe functies of oplossingen met vertrouwen en minder handmatige fouten.
  • Betere samenwerking: teams integreren wijzigingen vaak en soepel, waardoor mergeconflicten tot een minimum worden beperkt.

GitHub Actions: kernconcepten

GitHub Actions gebruikt workflows die in YAML-bestanden zijn gedefinieerd. Deze bestanden staan in een speciale map in je repository: .github/workflows/.

Een workflow definieert een reeks jobs, en elke job bevat steps die opdrachten uitvoeren of vooraf gebouwde actions gebruiken. Zo vertel je GitHub wat het moet doen!

Je eerste CI-workflow bouwen

Laten we een eenvoudige CI-workflow maken die wordt gestart bij elke push naar je repository. De workflow stelt Node.js in en simuleert het bouwproces van een project.

Sla deze inhoud in je repository op als .github/workflows/ci.yml:

name: Node.js CI

on: [push]

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - name: Set up Node.js
        uses: actions/setup-node@v4
        with:
          node-version: '18'
      - name: Install dependencies
        run: npm install
      - name: Build project
        run: node build.js

Het buildscript simuleren

De opdracht node build.js in de workflow zou een script zoals dit uitvoeren. Dit script simuleert het compileren, bundelen of voorbereiden van de code van je applicatie.

Probeer het uit te voeren om de uitvoer te bekijken:

console.log("Starting project build...");
console.log("  - Compiling source files...");
console.log("  - Bundling assets for deployment...");
console.log("Build process finished successfully!");

Geautomatiseerde tests toevoegen

Een belangrijk onderdeel van CI is het uitvoeren van geautomatiseerde tests. Laten we onze workflow uitbreiden met een teststep na het installeren van de afhankelijkheden. Als tests mislukken, mislukt de workflow en kan slechte code niet verdergaan!

We voegen een test-step toe:

name: Node.js CI

on: [push]

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

Het testscript simuleren

Hier is een eenvoudig test.js-script dat je workflow kan uitvoeren. In een echt project zou je testframeworks zoals Jest of Mocha gebruiken, maar dit voorbeeld laat het principe van het uitvoeren van tests zien.

Voer het uit om een gesimuleerd testresultaat te bekijken:

console.log("Running automated tests...");
const allTestsPass = Math.random() > 0.1; // Simulate 90% chance of passing

if (allTestsPass) {
  console.log("All 12 tests passed successfully!");
} else {
  console.error("Tests failed! Please fix the errors.");
  process.exit(1); // Exit with a non-zero code to indicate failure
}

Continuous Deployment (CD) introduceren

Waar CI zich richt op bouwen en testen, gaat Continuous Deployment (CD) een stap verder door je applicatie automatisch te implementeren op een server of cloudservice zodra alle CI-controles zijn geslaagd.

Veelvoorkomende CD-triggers zijn:

  • Een nieuwe Git-tag maken, bijvoorbeeld v1.0.0
  • Naar een specifieke branch pushen, bijvoorbeeld main of production
  • Een GitHub Release maken

Een eenvoudige CD-workflow

Hier is een workflow die wordt gestart bij een nieuwe Git-tag en een nagebootste implementatiestep bevat. In een echte situatie zou deze step communiceren met je hostingprovider, bijvoorbeeld AWS, Azure of Heroku.

Sla dit op als .github/workflows/cd.yml:

name: Deploy to Production

on:
  push:
    tags:
      - 'v*.*.*' # Triggers on tags like v1.0.0, v1.2.3

jobs:
  deploy:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - name: Simulate deployment
        run: |
          echo "Deploying application to production server..."
          echo "Version: ${{ github.ref_name }}"
          echo "Deployment complete!"
          # In a real scenario, you'd use a deployment action here
          # e.g., aws-actions/configure-aws-credentials, appleboy/ssh-action

Controle van de CI/CD-workflow

Welke van de volgende punten zijn belangrijke voordelen van het implementeren van CI/CD-pipelines?

Samenvatting: CI/CD bouwen

Je hebt geleerd hoe je robuuste CI/CD-workflows met GitHub Actions bouwt!

  • We hebben CI/CD en de voordelen ervan voor moderne ontwikkeling gedefinieerd.
  • We hebben de essentiële YAML-structuur van een GitHub Actions-workflow verkend.
  • We hebben CI-workflows gemaakt om projectbuilds en tests te automatiseren.
  • We hebben een CD-workflow ontworpen voor geautomatiseerde implementaties die door tags worden gestart.

Blijf automatiseren om code sneller en met meer vertrouwen uit te leveren!

Gratis beginnen

Leer Professionele Git- en GitHub-werkwijze met een AI-tutor — gratis

Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.

Cursussen
12
Lessen
48

Veelgestelde vragen

Is de les “CI/CD-workflows bouwen” gratis?

Ja — de volledige tekst van “CI/CD-workflows bouwen” kun je hier gratis op het web lezen. Als je interactief wilt oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is, en de rest van de cursus Professionele Git- en GitHub-werkwijze wilt ontgrendelen, kun je upgraden naar CoddyKit PRO. De cursus Professionele Git- en GitHub-werkwijze bevat in totaal 4 lessen.

Wat leer ik in “CI/CD-workflows bouwen”?

Maak praktische CI/CD-pipelines om uw code automatisch te builden, testen en deployen na pushes of pull requests. Je oefent met Professionele Git- en GitHub-werkwijze door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.

Heb ik ervaring nodig om met Professionele Git- en GitHub-werkwijze te beginnen?

Ervaring vooraf is niet nodig. Professionele Git- en GitHub-werkwijze op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 2 van 4.

Hoe lang duurt de les “CI/CD-workflows bouwen”?

De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.

Kan ik code schrijven en uitvoeren in deze les over Professionele Git- en GitHub-werkwijze?

Ja. Elke les over Professionele Git- en GitHub-werkwijze bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.

Alle lessen in deze cursus

  1. Inleiding tot GitHub Actions
  2. CI/CD-workflows bouwen
  3. Aangepaste Actions en Marketplace
  4. Secrets en omgevingsvariabelen in Actions
← Terug naar Professionele Git- en GitHub-werkwijze