-
Michał Kępień authored
Ensure BIND can be tested on FreeBSD in GitLab to more quickly catch build and test errors on that operating system. Make the relevant jobs optional until the CI environment supporting them is deemed stable enough for continuous use. FreeBSD jobs are run using the Custom executor feature of GitLab Runner. Unlike the Docker executor, the Custom executor does not support the "image" option and thus some way of informing the runner about the OS version to use for a given job is necessary. Arguably the simplest way of doing that without a lot of code duplication in .gitlab-ci.yml would be to use a YAML template with a "variables" block specifying the desired FreeBSD release to use, but including such a template in a job definition would cause issues in case other variables also needed to be set for that job (e.g. CFLAGS or EXTRA_CONFIGURE for build jobs). Thus, only one FreeBSD YAML template is defined instead and the Custom executor scripts on FreeBSD runners extract the OS version to use from the CI job name. This allows .gitlab-ci.yml variables to be defined for FreeBSD jobs in the same way as for Docker-based jobs.
51af91d0
Validating GitLab CI configuration…
Learn more