Add OpenBSD to GitLab CI

Ensure BIND can be tested on OpenBSD in GitLab CI to more quickly catch
build and test errors on that operating system.

Some notes:

  - While GCC is packaged for OpenBSD, only old versions (4.2.1, 4.9.4)
    are readily available and none of them is the default system
    compiler, so we are only doing Clang builds in GitLab CI.

  - Unit tests are currently not run on OpenBSD because it ships with an
    old version of kyua which does not handle skipped tests properly.
    These jobs will be added when we move away from using kyua in the
    future as the test code itself works fine.

  - All OpenBSD jobs are run inside QEMU virtual machines, using GitLab
    Runner Custom executor.
This commit is contained in:
Michał Kępień 2019-10-15 16:38:04 +02:00
parent 6b5426e1a7
commit 07d2fcb544

View file

@ -28,7 +28,7 @@ stages:
### Runner Tag Templates
# Note: FreeBSD runners extract the FreeBSD version to use from job name
# Note: BSD runners extract the operating system version to use from job name
.freebsd-amd64: &freebsd_amd64
tags:
@ -45,6 +45,11 @@ stages:
- linux
- i386
.openbsd-amd64: &openbsd_amd64
tags:
- openbsd
- amd64
### Docker Image Templates
# Alpine Linux
@ -763,6 +768,21 @@ unit:clang:freebsd12.0:amd64:
- clang:freebsd12.0:amd64
needs: ["clang:freebsd12.0:amd64"]
# Jobs for Clang builds on OpenBSD 6.5 (amd64)
clang:openbsd6.5:amd64:
variables:
CC: clang
<<: *openbsd_amd64
<<: *build_job
system:clang:openbsd6.5:amd64:
<<: *openbsd_amd64
<<: *system_test_job
dependencies:
- clang:openbsd6.5:amd64
needs: ["clang:openbsd6.5:amd64"]
# Jobs with libtool disabled
nolibtool:sid:amd64: