Skip to content
  • Michał Kępień's avatar
    Add FreeBSD to GitLab CI · 51af91d0
    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