bootstrap: Automatize runner registration to align with GitLab 18.0 changes
Overview
This merge request introduces essential updates to our runner registration processes in response to breaking changes announced in GitLab 18.0. These changes are critical to ensure fork pipelines remains functional and compliant with the new runner creation workflows described in the GitLab documentation.
Key Changes
-
Refined Bootstrap Script:
- Adjusted
bootstrap_local_containers.sh
to handle the new GitLab runner registration requirements. This includes checks for necessary dependencies, updated error handling, and new functions to interact with GitLab's API. - Enhanced Docker and Podman support, ensuring the script automatically detects and configures the environment based on the available container tool, aligning with the robustness needed for new GitLab standards.
- Adjusted
-
Updated Docker Compose Configuration:
- Modified
docker-compose.yaml
to dynamically handleDOCKER_SOCK_VOLUME
and introduced a newDOCKER_HOST
environment variable to ensure compatibility with changes in the runner setup process.
- Modified
-
Simpler setup
- With automatized runner registration, there is no need anymore to interact with the Web UI to generate a new project runner with its RUNNER_REGISTRATION token.
- The bootstrap script now takes care of removing stale runners from the project.