Deze post behandelt Continuous Integration (CI) en CI/CD pipelines, met focus op Git branching strategieën en GitHub Actions implementatie voor full-stack applicaties.
Figuur 1: DevOps Infinity Loop.
Kernvereisten
A. Kennis
Begrip van CI/CD concepten en pipeline architectuur.
Deze post behandelt Continuous Integration (CI) en CI/CD pipelines, met focus op Git branching strategieën en GitHub Actions implementatie voor full-stack applicaties.
Figuur 1: DevOps Infinity Loop.
Kernvereisten
A. Kennis
Begrip van CI/CD concepten en pipeline architectuur.
Martin Fowler beschrijft CI als: “team members merge changes into codebase together with colleagues’ changes at least daily,” met verificatie door “automated build (including test) to detect integration errors quickly.”
Het Netflix principe stelt: “Do more painful things more often!” - frequente integratie vermindert frictie.
Figuur 2: If it hurts, do it more often.
GitHub Actions Pipeline Setup
Minimaal Java Pipeline Voorbeeld
steps:-uses:actions/checkout@v4-name:Set up JDK 17uses:actions/setup-java@v4with:java-version:'17'distribution:'temurin'cache:maven-name:Build with Mavenrun:mvn clean install
Node.js/React Frontend Pipeline
-name:Set up Node.jsuses:actions/setup-node@v4with:node-version:'21'cache:npmcache-dependency-path:./frontend/package-lock.json-name:Install and lintworking-directory:./frontendrun:|npm installnpm run lintnpm run buildnpm test
Linting & Static Analysis
Tools per Stack
Technologie
Tool
Configuratie
JavaScript/React
ESLint
.eslintrc of package.json
Java
Maven Checkstyle
checkstyle.xml in project root
Richtlijnen
Streef naar nul errors en warnings
Pas ignore rules toe op configuratie niveau
Vermijd inline code suppressions
Prioriteer feature delivery boven perfecte linting
Test Piramide
Figuur 3: Test Piramide.
Van basis naar top:
Unit Tests (grootste volume)
Integration Tests
Component Tests
End-to-End Tests (kleinste volume)
Maven Test Commands
mvn test: Draait alleen unit tests (Surefire)
mvn verify: Draait unit tests + integration tests (Failsafe)
Docent aan de HAN University of Applied Sciences en MAMIL met een passie voor SwimRun en andere avontuurlijke duursportavonturen. Schrijft over technologie, softwareontwikkeling en duursport.