]> git.ipfire.org Git - thirdparty/bind9.git/commitdiff
Fix .respdiff-recent-named anchor to work when the ABI changes
authorŠtěpán Balážik <stepan@isc.org>
Mon, 2 Mar 2026 14:54:53 +0000 (15:54 +0100)
committerŠtěpán Balážik <stepan@isc.org>
Mon, 2 Mar 2026 16:08:41 +0000 (17:08 +0100)
Previously, on 9.20 and 9.18, both builds (reference and the version
being tested) would use the same .so files which lead to a crash if the
ABI changed.

Use `git worktree` to get completely separate build environment for the
reference version.

This is not a problem on 9.21 as Meson is smart and covers this mistake,
but apply the fix to it as well for consistency.

.gitlab-ci.yml

index 09dd889b914c0d94fe554f052cd5a10a1bbf55c3..d26f568a259f5871ce34ca7a2e0f60c21084f84d 100644 (file)
@@ -2176,15 +2176,14 @@ respdiff-third-party:
       artifacts: true
   script:
     - cd ${CI_PROJECT_DIR}
-    - mkdir version-under-test
-    - mv build version-under-test/
     - BASELINE=${CI_MERGE_REQUEST_TARGET_BRANCH_NAME:-$BIND_BASELINE_VERSION}
     - git fetch --unshallow origin ${BASELINE}
-    - git checkout FETCH_HEAD
+    - git worktree add baseline-build FETCH_HEAD
+    - cd baseline-build
     - *configure
     - meson compile -C build
     - cd "$CI_PROJECT_DIR"/bind9-qa/respdiff
-    - bash respdiff.sh -s named -q "${PWD}/100k_mixed.txt" -c 3 -w "${PWD}/rspworkdir" "${CI_PROJECT_DIR}/version-under-test" "${CI_PROJECT_DIR}/build/named"
+    - bash respdiff.sh -s named -q "${PWD}/100k_mixed.txt" -c 3 -w "${PWD}/rspworkdir" "${CI_PROJECT_DIR}" "${CI_PROJECT_DIR}/baseline-build/build/named"
 
 respdiff:recent-named:
   <<: *respdiff_recent_named