diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index e45614d71a..94a97f8050 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -15,7 +15,7 @@ variables: BUILD_PARALLEL_JOBS: 6 TEST_PARALLEL_JOBS: 6 - MAKE: make + MAKE_COMMAND: make CONFIGURE: ./configure SCAN_BUILD: scan-build-9 @@ -169,11 +169,7 @@ stages: script: - autoreconf -fi artifacts: - paths: - - aclocal.m4 - - configure - - ltmain.sh - - m4/libtool.m4 + untracked: true expire_in: "1 day" .configure: &configure | @@ -199,13 +195,12 @@ stages: - test -n "${OOT_BUILD_WORKSPACE}" && mkdir "${OOT_BUILD_WORKSPACE}" && cd "${OOT_BUILD_WORKSPACE}" script: - *configure - - ${MAKE} -j${BUILD_PARALLEL_JOBS:-1} -k all V=1 + - ${MAKE_COMMAND} -j${BUILD_PARALLEL_JOBS:-1} -k all V=1 - test -z "${RUN_MAKE_INSTALL}" || make install - test -z "${RUN_MAKE_INSTALL}" || sh util/check-make-install - dependencies: - - autoreconf:sid:amd64 needs: - - autoreconf:sid:amd64 + - job: autoreconf:sid:amd64 + artifacts: true artifacts: untracked: true expire_in: "1 day" @@ -232,9 +227,9 @@ stages: x64' - 'Set-Item -path "Env:CL" -value "/MP$([Math]::Truncate($BUILD_PARALLEL_JOBS/2))"' - '& msbuild.exe /maxCpuCount:2 /t:Build /p:Configuration=$VSCONF bind9.sln' - dependencies: [] needs: - - autoreconf:sid:amd64 + - job: autoreconf:sid:amd64 + artifacts: false artifacts: untracked: true expire_in: "1 day" @@ -376,6 +371,7 @@ misc:sid:amd64: - xmllint --noout --nonet `git ls-files '*.xml' '*.docbook'` - xmllint --noout --nonet --html `git ls-files '*.html'` - sh util/check-win32util-configure + needs: [] artifacts: paths: - util/newcopyrights @@ -386,13 +382,14 @@ misc:sid:amd64: 🐞:sid:amd64: <<: *precheck_job <<: *debian_buster_amd64_image + needs: [] script: - util/check-cocci - if test "$(git status --porcelain | grep -Ev '\?\?' | wc -l)" -gt "0"; then git status --short; exit 1; fi tarball-create:sid:amd64: - <<: *debian_sid_amd64_image stage: precheck + <<: *debian_sid_amd64_image script: - source version - export BIND_DIRECTORY="bind-${MAJORVER}.${MINORVER}.${PATCHVER}${RELEASETYPE}${RELEASEVER}" @@ -417,10 +414,9 @@ docs:sid:amd64: - ./configure || cat config.log - make -C doc/misc docbook - make -C doc/arm Bv9ARM.html - dependencies: - - autoreconf:sid:amd64 needs: - - autoreconf:sid:amd64 + - job: autoreconf:sid:amd64 + artifacts: true artifacts: paths: - doc/arm/ @@ -429,7 +425,9 @@ docs:sid:amd64: push:docs:sid:amd64: <<: *debian_sid_amd64_image stage: push - dependencies: [] + needs: + - job: docs:sid:amd64 + artifacts: false script: - curl -X POST -F token=$GITLAB_PAGES_DOCS_TRIGGER_TOKEN -F ref=master $GITLAB_PAGES_DOCS_TRIGGER_URL only: @@ -449,16 +447,16 @@ gcc:alpine3.11:amd64: system:gcc:alpine3.11:amd64: <<: *alpine_3_11_amd64_image <<: *system_test_job - dependencies: - - gcc:alpine3.11:amd64 - needs: ["gcc:alpine3.11:amd64"] + needs: + - job: gcc:alpine3.11:amd64 + artifacts: true unit:gcc:alpine3.11:amd64: <<: *alpine_3_11_amd64_image <<: *unit_test_job - dependencies: - - gcc:alpine3.11:amd64 - needs: ["gcc:alpine3.11:amd64"] + needs: + - job: gcc:alpine3.11:amd64 + artifacts: true # Jobs for regular GCC builds on CentOS 6 (amd64) @@ -473,16 +471,16 @@ gcc:centos6:amd64: system:gcc:centos6:amd64: <<: *centos_centos6_amd64_image <<: *system_test_job - dependencies: - - gcc:centos6:amd64 - needs: ["gcc:centos6:amd64"] + needs: + - job: gcc:centos6:amd64 + artifacts: true unit:gcc:centos6:amd64: <<: *centos_centos6_amd64_image <<: *unit_test_job - dependencies: - - gcc:centos6:amd64 - needs: ["gcc:centos6:amd64"] + needs: + - job: gcc:centos6:amd64 + artifacts: true # Jobs for regular GCC builds on CentOS 7 (amd64) @@ -497,16 +495,16 @@ gcc:centos7:amd64: system:gcc:centos7:amd64: <<: *centos_centos7_amd64_image <<: *system_test_job - dependencies: - - gcc:centos7:amd64 - needs: ["gcc:centos7:amd64"] + needs: + - job: gcc:centos7:amd64 + artifacts: true unit:gcc:centos7:amd64: <<: *centos_centos7_amd64_image <<: *unit_test_job - dependencies: - - gcc:centos7:amd64 - needs: ["gcc:centos7:amd64"] + needs: + - job: gcc:centos7:amd64 + artifacts: true # Jobs for regular GCC builds on CentOS 8 (amd64) @@ -521,16 +519,16 @@ gcc:centos8:amd64: system:gcc:centos8:amd64: <<: *centos_centos8_amd64_image <<: *system_test_job - dependencies: - - gcc:centos8:amd64 - needs: ["gcc:centos8:amd64"] + needs: + - job: gcc:centos8:amd64 + artifacts: true unit:gcc:centos8:amd64: <<: *centos_centos8_amd64_image <<: *unit_test_job - dependencies: - - gcc:centos8:amd64 - needs: ["gcc:centos8:amd64"] + needs: + - job: gcc:centos8:amd64 + artifacts: true # Jobs for regular GCC builds on Debian 8 Jessie (amd64) @@ -545,16 +543,16 @@ gcc:jessie:amd64: system:gcc:jessie:amd64: <<: *debian_jessie_amd64_image <<: *system_test_job - dependencies: - - gcc:jessie:amd64 - needs: ["gcc:jessie:amd64"] + needs: + - job: gcc:jessie:amd64 + artifacts: true unit:gcc:jessie:amd64: <<: *debian_jessie_amd64_image <<: *unit_test_job - dependencies: - - gcc:jessie:amd64 - needs: ["gcc:jessie:amd64"] + needs: + - job: gcc:jessie:amd64 + artifacts: true # Jobs for regular GCC builds on Debian 9 Stretch (amd64) @@ -568,16 +566,16 @@ gcc:stretch:amd64: system:gcc:stretch:amd64: <<: *debian_stretch_amd64_image <<: *system_test_job - dependencies: - - gcc:stretch:amd64 - needs: ["gcc:stretch:amd64"] + needs: + - job: gcc:stretch:amd64 + artifacts: true unit:gcc:stretch:amd64: <<: *debian_stretch_amd64_image <<: *unit_test_job - dependencies: - - gcc:stretch:amd64 - needs: ["gcc:stretch:amd64"] + needs: + - job: gcc:stretch:amd64 + artifacts: true # Jobs for regular GCC builds on Debian 10 Buster (amd64) @@ -591,16 +589,16 @@ gcc:buster:amd64: system:gcc:buster:amd64: <<: *debian_buster_amd64_image <<: *system_test_job - dependencies: - - gcc:buster:amd64 - needs: ["gcc:buster:amd64"] + needs: + - job: gcc:buster:amd64 + artifacts: true unit:gcc:buster:amd64: <<: *debian_buster_amd64_image <<: *unit_test_job - dependencies: - - gcc:buster:amd64 - needs: ["gcc:buster:amd64"] + needs: + - job: gcc:buster:amd64 + artifacts: true # Jobs for scan-build builds on Debian Buster (amd64) @@ -624,10 +622,9 @@ scan-build:buster:amd64: script: - *configure - *scan_build - dependencies: - - autoreconf:sid:amd64 needs: - - autoreconf:sid:amd64 + - job: autoreconf:sid:amd64 + artifacts: true artifacts: paths: - scan-build.reports/ @@ -642,30 +639,30 @@ gcc:sid:amd64: CFLAGS: "${CFLAGS_COMMON} -O3" EXTRA_CONFIGURE: "--enable-dnstap --with-libidn2" RUN_MAKE_INSTALL: 1 - MAKE: bear make + MAKE_COMMAND: bear --use-cc=${CC} --verbose make <<: *debian_sid_amd64_image <<: *build_job system:gcc:sid:amd64: <<: *debian_sid_amd64_image <<: *system_test_job - dependencies: - - gcc:sid:amd64 - needs: ["gcc:sid:amd64"] + needs: + - job: gcc:sid:amd64 + artifacts: true unit:gcc:sid:amd64: <<: *debian_sid_amd64_image <<: *unit_test_job - dependencies: - - gcc:sid:amd64 - needs: ["gcc:sid:amd64"] + needs: + - job: gcc:sid:amd64 + artifacts: true cppcheck:gcc:sid:amd64: <<: *debian_sid_amd64_image <<: *cppcheck_job - dependencies: - - gcc:sid:amd64 - needs: ["gcc:sid:amd64"] + needs: + - job: gcc:sid:amd64 + artifacts: true # Job for out-of-tree GCC build on Debian Sid (amd64) @@ -693,9 +690,9 @@ tarball:sid:amd64: - tar --extract --file bind-*.tar.${TARBALL_EXTENSION} - rm -f bind-*.tar.${TARBALL_EXTENSION} - cd bind-* - dependencies: - - tarball-create:sid:amd64 - needs: ["tarball-create:sid:amd64"] + needs: + - job: tarball-create:sid:amd64 + artifacts: true only: - tags @@ -705,9 +702,9 @@ system:tarball:sid:amd64: before_script: - cd bind-* - *setup_interfaces - dependencies: - - tarball:sid:amd64 - needs: ["tarball:sid:amd64"] + needs: + - job: tarball:sid:amd64 + artifacts: true only: - tags @@ -716,9 +713,9 @@ unit:tarball:sid:amd64: <<: *unit_test_job before_script: - cd bind-* - dependencies: - - tarball:sid:amd64 - needs: ["tarball:sid:amd64"] + needs: + - job: tarball:sid:amd64 + artifacts: true only: - tags @@ -735,16 +732,16 @@ gcc:sid:i386: system:gcc:sid:i386: <<: *debian_sid_i386_image <<: *system_test_job - dependencies: - - gcc:sid:i386 - needs: ["gcc:sid:i386"] + needs: + - job: gcc:sid:i386 + artifacts: true unit:gcc:sid:i386: <<: *debian_sid_i386_image <<: *unit_test_job - dependencies: - - gcc:sid:i386 - needs: ["gcc:sid:i386"] + needs: + - job: gcc:sid:i386 + artifacts: true # Jobs for regular GCC builds on openSUSE Tumbleweed (amd64) @@ -759,16 +756,16 @@ gcc:tumbleweed:amd64: system:gcc:tumbleweed:amd64: <<: *tumbleweed_latest_amd64_image <<: *system_test_job - dependencies: - - gcc:tumbleweed:amd64 - needs: ["gcc:tumbleweed:amd64"] + needs: + - job: gcc:tumbleweed:amd64 + artifacts: true unit:gcc:tumbleweed:amd64: <<: *tumbleweed_latest_amd64_image <<: *unit_test_job - dependencies: - - gcc:tumbleweed:amd64 - needs: ["gcc:tumbleweed:amd64"] + needs: + - job: gcc:tumbleweed:amd64 + artifacts: true # Jobs for regular GCC builds on Fedora 31 (amd64) @@ -783,16 +780,16 @@ gcc:fedora31:amd64: system:gcc:fedora31:amd64: <<: *fedora_31_amd64_image <<: *system_test_job - dependencies: - - gcc:fedora31:amd64 - needs: ["gcc:fedora31:amd64"] + needs: + - job: gcc:fedora31:amd64 + artifacts: true unit:gcc:fedora31:amd64: <<: *fedora_31_amd64_image <<: *unit_test_job - dependencies: - - gcc:fedora31:amd64 - needs: ["gcc:fedora31:amd64"] + needs: + - job: gcc:fedora31:amd64 + artifacts: true # Jobs for regular GCC builds on Ubuntu 16.04 Xenial Xerus (amd64) @@ -807,16 +804,16 @@ gcc:xenial:amd64: system:gcc:xenial:amd64: <<: *ubuntu_xenial_amd64_image <<: *system_test_job - dependencies: - - gcc:xenial:amd64 - needs: ["gcc:xenial:amd64"] + needs: + - job: gcc:xenial:amd64 + artifacts: true unit:gcc:xenial:amd64: <<: *ubuntu_xenial_amd64_image <<: *unit_test_job - dependencies: - - gcc:xenial:amd64 - needs: ["gcc:xenial:amd64"] + needs: + - job: gcc:xenial:amd64 + artifacts: true # Jobs for regular GCC builds on Ubuntu 18.04 Bionic Beaver (amd64) @@ -831,16 +828,16 @@ gcc:bionic:amd64: system:gcc:bionic:amd64: <<: *ubuntu_bionic_amd64_image <<: *system_test_job - dependencies: - - gcc:bionic:amd64 - needs: ["gcc:bionic:amd64"] + needs: + - job: gcc:bionic:amd64 + artifacts: true unit:gcc:bionic:amd64: <<: *ubuntu_bionic_amd64_image <<: *unit_test_job - dependencies: - - gcc:bionic:amd64 - needs: ["gcc:bionic:amd64"] + needs: + - job: gcc:bionic:amd64 + artifacts: true # Jobs for GCC builds with ASAN enabled on Debian Sid (amd64) @@ -858,18 +855,18 @@ system:asan:sid:amd64: ASAN_OPTIONS: ${ASAN_OPTIONS_COMMON} <<: *debian_sid_amd64_image <<: *system_test_job - dependencies: - - asan:sid:amd64 - needs: ["asan:sid:amd64"] + needs: + - job: asan:sid:amd64 + artifacts: true unit:asan:sid:amd64: variables: ASAN_OPTIONS: ${ASAN_OPTIONS_COMMON} <<: *debian_sid_amd64_image <<: *unit_test_job - dependencies: - - asan:sid:amd64 - needs: ["asan:sid:amd64"] + needs: + - job: asan:sid:amd64 + artifacts: true # Jobs for Clang builds on Debian Stretch (amd64) @@ -884,9 +881,9 @@ clang:stretch:amd64: unit:clang:stretch:amd64: <<: *debian_stretch_amd64_image <<: *unit_test_job - dependencies: - - clang:stretch:amd64 - needs: ["clang:stretch:amd64"] + needs: + - job: clang:stretch:amd64 + artifacts: true # Jobs for Clang builds on Debian Stretch (i386) @@ -911,16 +908,16 @@ pkcs11:sid:amd64: system:pkcs11:sid:amd64: <<: *debian_sid_amd64_image <<: *system_test_job - dependencies: - - pkcs11:sid:amd64 - needs: ["pkcs11:sid:amd64"] + needs: + - job: pkcs11:sid:amd64 + artifacts: true unit:pkcs11:sid:amd64: <<: *debian_sid_amd64_image <<: *unit_test_job - dependencies: - - pkcs11:sid:amd64 - needs: ["pkcs11:sid:amd64"] + needs: + - job: pkcs11:sid:amd64 + artifacts: true # Jobs for Clang builds on FreeBSD 11.3 (amd64) @@ -937,18 +934,18 @@ system:clang:freebsd11.3:amd64: variables: USER: gitlab-runner TEST_PARALLEL_JOBS: 4 - dependencies: - - clang:freebsd11.3:amd64 - needs: ["clang:freebsd11.3:amd64"] + needs: + - job: clang:freebsd11.3:amd64 + artifacts: true unit:clang:freebsd11.3:amd64: <<: *freebsd_amd64 <<: *unit_test_job variables: USER: gitlab-runner - dependencies: - - clang:freebsd11.3:amd64 - needs: ["clang:freebsd11.3:amd64"] + needs: + - job: clang:freebsd11.3:amd64 + artifacts: true # Jobs for Clang builds on FreeBSD 12.1 (amd64) @@ -966,18 +963,18 @@ system:clang:freebsd12.1:amd64: variables: USER: gitlab-runner TEST_PARALLEL_JOBS: 4 - dependencies: - - clang:freebsd12.1:amd64 - needs: ["clang:freebsd12.1:amd64"] + needs: + - job: clang:freebsd12.1:amd64 + artifacts: true unit:clang:freebsd12.1:amd64: <<: *freebsd_amd64 <<: *unit_test_job variables: USER: gitlab-runner - dependencies: - - clang:freebsd12.1:amd64 - needs: ["clang:freebsd12.1:amd64"] + needs: + - job: clang:freebsd12.1:amd64 + artifacts: true # Jobs for Clang builds on OpenBSD 6.6 (amd64) @@ -993,9 +990,9 @@ system:clang:openbsd6.6:amd64: <<: *system_test_job variables: USER: gitlab-runner - dependencies: - - clang:openbsd6.6:amd64 - needs: ["clang:openbsd6.6:amd64"] + needs: + - job: clang:openbsd6.6:amd64 + artifacts: true only: - schedules - web @@ -1013,16 +1010,15 @@ nolibtool:sid:amd64: system:nolibtool:sid:amd64: <<: *debian_sid_amd64_image <<: *system_test_job - dependencies: - - nolibtool:sid:amd64 - needs: ["nolibtool:sid:amd64"] + needs: + - job: nolibtool:sid:amd64 unit:nolibtool:sid:amd64: <<: *debian_sid_amd64_image <<: *unit_test_job - dependencies: - - nolibtool:sid:amd64 - needs: ["nolibtool:sid:amd64"] + needs: + - job: nolibtool:sid:amd64 + artifacts: true # Jobs for Visual Studio 2017 builds on Windows (amd64) @@ -1036,9 +1032,9 @@ system:msvc:windows:amd64: <<: *windows_system_test_job variables: VSCONF: Release - dependencies: - - msvc:windows:amd64 - needs: ["msvc:windows:amd64"] + needs: + - job: msvc:windows:amd64 + artifacts: true msvc-debug:windows:amd64: <<: *windows_build_job @@ -1053,9 +1049,9 @@ system:msvc-debug:windows:amd64: <<: *windows_system_test_job variables: VSCONF: Debug - dependencies: - - msvc-debug:windows:amd64 - needs: ["msvc-debug:windows:amd64"] + needs: + - job: msvc-debug:windows:amd64 + artifacts: true # Job producing a release tarball @@ -1088,10 +1084,13 @@ release:sid:amd64: - popd # Create release tarball - tar --create --file="${CI_COMMIT_TAG}.tar.gz" --gzip release/ - dependencies: - - tarball-create:sid:amd64 - - msvc:windows:amd64 - - msvc-debug:windows:amd64 + needs: + - job: tarball-create:sid:amd64 + artifacts: true + - job: msvc:windows:amd64 + artifacts: true + - job: msvc-debug:windows:amd64 + artifacts: true only: - tags artifacts: @@ -1138,10 +1137,9 @@ build:coverity:sid:amd64: - *coverity_cache_prep - *configure - *coverity_build - dependencies: - - autoreconf:sid:amd64 needs: - - autoreconf:sid:amd64 + - job: autoreconf:sid:amd64 + artifacts: true artifacts: paths: - curl-response.txt @@ -1169,18 +1167,18 @@ respdiff:sid:amd64: BIND_BASELINE_VERSION: v9_11_3 script: - ./configure --without-make-clean - - ${MAKE} -j${BUILD_PARALLEL_JOBS:-1} V=1 + - ${MAKE_COMMAND} -j${BUILD_PARALLEL_JOBS:-1} V=1 - *setup_interfaces - git clone --depth 1 https://gitlab-ci-token:${CI_JOB_TOKEN}@gitlab.isc.org/isc-private/bind-qa.git - git clone --branch "${BIND_BASELINE_VERSION}" --depth 1 https://gitlab.isc.org/isc-projects/bind9.git refbind - cd refbind/ - ./configure --without-make-clean - - ${MAKE} -j${BUILD_PARALLEL_JOBS:-1} V=1 + - ${MAKE_COMMAND} -j${BUILD_PARALLEL_JOBS:-1} V=1 - cd ../bind-qa/bind9/respdiff - bash respdiff.sh -q "${PWD}/100k_mixed.txt" -c 3 -w "${PWD}/rspworkdir" "${CI_PROJECT_DIR}/refbind" "${CI_PROJECT_DIR}" - dependencies: - - tarball-create:sid:amd64 - needs: ["tarball-create:sid:amd64"] + needs: + - job: tarball-create:sid:amd64 + artifacts: true only: - tags artifacts: