131% meer gemelde CVE's per dag in 2026 dan vorig jaar.
← Terug naar de woordenlijst

CI-runner

Een CI-runner is de machine die de jobs van een CI/CD-pipeline uitvoert: hij neemt een job aan van de CI-dienst, voert de stappen uit en meldt de resultaten terug.

Laatst bijgewerkt: 11 november 2026

Een CI-runner is de machine, fysiek of virtueel, die de jobs van een CI/CD-pipeline uitvoert. Hij ontvangt een job van de CI-dienst, checkt de code uit, voert de stappen uit en meldt de resultaten terug. Jenkins en Azure Pipelines noemen hetzelfde een agent; andere systemen noemen het een executor.

Hoe een runner werkt in GitHub Actions

De labels in runs-on van een workflow bepalen welke runner een job krijgt: GitHub zoekt een online runner die past bij de labels en groepen van de job, en een job die door geen enkele runner wordt opgepakt, blijft in de wachtrij en mislukt na 24 uur (referentie van GitHub voor self-hosted runners). De runnerapplicatie maakt via HTTPS een uitgaande verbinding met GitHub om jobs te ontvangen, streamt logs terug terwijl de job draait en wordt, bij een ephemeral runner, daarna weggegooid.

GitHub is het control plane: het bewaart de repository, de workflowbestanden, de opslag van secrets, de logs en de checks. De runner doet het werk.

Drie soorten runners

Een runner is ephemeral, één job op een nieuwe machine, of persistent, veel jobs op dezelfde machine. Ephemeral runners zijn veiliger: niets wat één job achterlaat, bestanden of referenties, bereikt de volgende.

Waarom de runner ertoe doet voor beveiliging

Op de runner komen broncode, secrets en gedownloade dependencies samen. Hij bevat de tokens en cloudreferenties van de job, voert elk installatiescript van een pakket uit en maakt elke netwerkverbinding die de build maakt. Een gecompromitteerde dependency handelt met de toegang van de runner.

De runner is dus een beveiligingsgrens. Isoleer jobs van elkaar, beperk wat de runner kan bereiken met een egressbeleid, en leg vast wat elke job ophaalde.

CRACI

CRACI is een GitHub Actions-runner. Een job verhuist met runs-on: craci terwijl de workflow in GitHub blijft, en runs verschijnen daar nog steeds. Elke job draait in een eigen geïsoleerde virtuele machine onder een egressbeleid en levert een SBOM op van wat hij ophaalde. Zie de runners van CRACI en CRACI vs door GitHub gehoste runners.

CRACI draait vandaag alleen Linux-jobs voor GitHub Actions. Runners voor GitLab CI, Jenkins, Windows of macOS komen van die leveranciers of van self-hosting.