Waarop draait de runner pipeline in GitLab CI?
sobes.tech AI
Antwoord van AI
GitLab Runner is een agent die je pipeline-taken uitvoert. De Runner kan op verschillende platforms worden uitgevoerd:
- Virtuele machine of fysieke server: Traditionele methode die volledige controle over de omgeving mogelijk maakt.
- Containers (Docker): Hiermee wordt elke taak in een geïsoleerde, standaardomgeving uitgevoerd. Dit is de meest populaire methode.
- Kubernetes: GitLab Runner heeft een executor voor Kubernetes, die elke taak in een aparte pod uitvoert.
- Cloudproviders: Sommige cloudproviders bieden services voor het uitvoeren van containers of virtuele machines die als Runner kunnen worden gebruikt.
- macOS / Windows: Het is mogelijk om de runner op deze besturingssystemen uit te voeren voor het bouwen van specifieke projecten.
Bij het instellen van de runner wordt een "executor" opgegeven, die bepaalt hoe taken worden uitgevoerd. De meest voorkomende zijn: docker, shell, kubernetes.
Voorbeeld van het definiëren van een runner in het .gitlab-ci.yml-bestand met gebruik van de docker-executor:
stages:
- build
build_job:
stage: build
script:
- echo "Project bouwen..."
In dit voorbeeld wordt de taak build_job uitgevoerd op een runner die is geconfigureerd met de docker-executor. GitLab Runner ontvangt deze taak en voert deze uit in een nieuwe Docker-container, met behulp van de Docker-afbeelding die is opgegeven in de configuratie van de runner of in het .gitlab-ci.yml-bestand zelf (indien image is gespecificeerd).