From d876d2a61df61599d77bfba26cc2a169cd6fe4d7 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Micha=C5=82=20K=C4=99pie=C5=84?= Date: Tue, 21 Nov 2023 10:18:52 +0100 Subject: [PATCH] Move job definition to the proper place The definition of the "cross-version-config-tests" GitLab CI job was accidentally added in the .gitlab-ci.yml section that claims to only contain job templates. Move the definition of that job to a more appropriate location in .gitlab-ci.yml, without changing the job definition itself. (cherry picked from commit 192cceba5aeb960ddf5dbd92d173acea50b48e1d) --- .gitlab-ci.yml | 88 ++++++++++++++++++++++++++------------------------ 1 file changed, 45 insertions(+), 43 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index f4bd471f2e6..9945e6df4f3 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -328,49 +328,6 @@ stages: - export SLOT=$(sh -x bin/tests/prepare-softhsm2.sh) - test -n "${SLOT}" && test "${SLOT}" -gt 0 -cross-version-config-tests: - stage: system - <<: *base_image - <<: *default_triggering_rules - variables: - CC: gcc - CFLAGS: "${CFLAGS_COMMON}" - # Disable option checking to prevent problems with new default options in - # the &configure anchor. - EXTRA_CONFIGURE: "--disable-option-checking" - script: - # Exclude the dyndb test from the system test as the sample library can't - # locate the libdns library from the BIND 9 baseline version. - - sed -i '/^dyndb \\$/d' bin/tests/system/conf.sh.common - - *configure - - *setup_interfaces - - make -j${BUILD_PARALLEL_JOBS:-1} - - export BIND_BRANCH=16 - # When testing a .0 release, compare it against the previous development - # release (e.g., 9.19.0 and 9.18.0 should both be compared against 9.17.22). - - if [ "$(sed -n -E "s|^m4_define\(\[bind_VERSION_PATCH\], ([0-9]+)\)dnl$|\1|p" configure.ac)" = "0" ]; then export BIND_BRANCH=$((BIND_BRANCH - 1 - (BIND_BRANCH % 2))); fi - - BASELINE="$(curl -s "https://gitlab.isc.org/api/v4/projects/1/repository/tags?search=^v9.${BIND_BRANCH}&order_by=version" | jq -r ".[0].name")" - - git clone --branch "${BASELINE}" --depth 1 https://gitlab.isc.org/isc-projects/bind9.git "bind-${BASELINE}" - - cd "bind-${BASELINE}" - - *configure - - make -j${BUILD_PARALLEL_JOBS:-1} - - cd bin/tests/system - # Neutralize shell and pytests; in effect, "nsX" servers are just started - # and stopped, thus configuration checked. - - truncate --size=0 */tests{.sh,*.py} - # Run the setup phase of all system tests in the most recently tagged BIND 9 - # release using the binaries built for the current BIND 9 version. This - # intends to detect obvious backward compatibility issues with the latter. - - sed -i -E "s|(export TOP)=.*|\1=${CI_PROJECT_DIR}|" conf.sh - - make -j${TEST_PARALLEL_JOBS:-1} -k check V=1 - artifacts: - paths: - - bind-* - untracked: true - expire_in: "1 day" - when: on_failure - needs: [] - .system_test_common: &system_test_common <<: *default_triggering_rules stage: system @@ -640,6 +597,51 @@ docs:pdf: untracked: true needs: [] +# Job detecting named.conf breakage introduced since the previous point release + +cross-version-config-tests: + stage: system + <<: *base_image + <<: *default_triggering_rules + variables: + CC: gcc + CFLAGS: "${CFLAGS_COMMON}" + # Disable option checking to prevent problems with new default options in + # the &configure anchor. + EXTRA_CONFIGURE: "--disable-option-checking" + script: + # Exclude the dyndb test from the system test as the sample library can't + # locate the libdns library from the BIND 9 baseline version. + - sed -i '/^dyndb \\$/d' bin/tests/system/conf.sh.common + - *configure + - *setup_interfaces + - make -j${BUILD_PARALLEL_JOBS:-1} + - export BIND_BRANCH=16 + # When testing a .0 release, compare it against the previous development + # release (e.g., 9.19.0 and 9.18.0 should both be compared against 9.17.22). + - if [ "$(sed -n -E "s|^m4_define\(\[bind_VERSION_PATCH\], ([0-9]+)\)dnl$|\1|p" configure.ac)" = "0" ]; then export BIND_BRANCH=$((BIND_BRANCH - 1 - (BIND_BRANCH % 2))); fi + - BASELINE="$(curl -s "https://gitlab.isc.org/api/v4/projects/1/repository/tags?search=^v9.${BIND_BRANCH}&order_by=version" | jq -r ".[0].name")" + - git clone --branch "${BASELINE}" --depth 1 https://gitlab.isc.org/isc-projects/bind9.git "bind-${BASELINE}" + - cd "bind-${BASELINE}" + - *configure + - make -j${BUILD_PARALLEL_JOBS:-1} + - cd bin/tests/system + # Neutralize shell and pytests; in effect, "nsX" servers are just started + # and stopped, thus configuration checked. + - truncate --size=0 */tests{.sh,*.py} + # Run the setup phase of all system tests in the most recently tagged BIND 9 + # release using the binaries built for the current BIND 9 version. This + # intends to detect obvious backward compatibility issues with the latter. + - sed -i -E "s|(export TOP)=.*|\1=${CI_PROJECT_DIR}|" conf.sh + - make -j${TEST_PARALLEL_JOBS:-1} -k check V=1 + artifacts: + paths: + - bind-* + untracked: true + expire_in: "1 day" + when: on_failure + needs: [] + # Jobs for regular GCC builds on Alpine Linux 3.18 (amd64) gcc:alpine3.18:amd64: -- 2.47.3