Runners are used to execute jobs in GitLab CI
Executors interface with infrastructure
Jobs are executed in the context of the runner
Dedicated execution environment per job
Executor talks to infrastructure:
Services are executed in separate containers next to the build container
Jobs are executed in a dedicated container
Jobs are executed in a dedicated containers in a pod per pipeline
Shared across all groups and projects
Reserved for instance administrators
Managed from admin area
Shared across a group or a project
Accessible to members with Owner role
Shared runners can be disabled
Runners can have tags
Tags specify features based on…
Each can use a different runner:
job_name:
tags:
- foo
All features work across different runners
Beta support for AWS
Experimantal support for Azure and GCP