[9.20] chg: ci: Test development version of libuv in CI

Recently, a broken version of libuv was released breaking BIND on
several platforms. The offending [commit](https://github.com/libuv/libuv/issues/5030) was on the development branch
for months, but we didn't notice.

In nightly pipelines, build the current 'main' (actually 'v1.x') branch
of libuv and run the unit and system tests against it.

Backport of MR !11647

Merge branch 'backport-stepan/prelease-testing-for-libuv-9.20' into 'bind-9.20'

See merge request isc-projects/bind9!11842
This commit is contained in:
Štěpán Balážik 2026-04-15 14:49:04 +00:00
commit 18e0fe880c

View file

@ -1893,6 +1893,51 @@ unit:clang:freebsd15:amd64:
<<: *unit_test_job
<<: *freebsd_autoscaler_15_amd64_tags
# Build and run tests against the latest git version of libuv
gcc:tumbleweed:libuv-git:amd64:
<<: *tumbleweed_latest_amd64_image
<<: *build_job
variables:
CC: gcc
CFLAGS: "${CFLAGS_COMMON} -DDEBUG"
EXTRA_CONFIGURE: "--with-libidn2 ${WITH_LIBEDIT}"
before_script:
- *list_installed_package_versions
- zypper --non-interactive rm --clean-deps libuv-devel
- git clone --depth 1 https://github.com/libuv/libuv.git /tmp/libuv
- cd /tmp/libuv
- sh autogen.sh
- ./configure --prefix="$CI_PROJECT_DIR/libuv"
- make -j"$BUILD_PARALLEL_JOBS" CFLAGS=""
- make install
- cd "$CI_PROJECT_DIR"
- export PKG_CONFIG_PATH="$CI_PROJECT_DIR/libuv/lib/pkgconfig:${PKG_CONFIG_PATH:-}"
rules:
- *rule_source_other_than_mr
system:gcc:tumbleweed:libuv-git:amd64:
<<: *tumbleweed_latest_amd64_image
<<: *system_test_job
needs:
- job: gcc:tumbleweed:libuv-git:amd64
artifacts: true
rules:
- *rule_source_other_than_mr
unit:gcc:tumbleweed:libuv-git:amd64:
<<: *tumbleweed_latest_amd64_image
<<: *unit_test_job
before_script:
- bin/named/named -V > named.version
- "grep -E '^compiled with libuv version: [0-9]+\\.[0-9]+\\.[0-9]+$' named.version"
- "grep -E '^linked to libuv version: [0-9]+\\.[0-9]+\\.[0-9]+-dev$' named.version"
needs:
- job: gcc:tumbleweed:libuv-git:amd64
artifacts: true
rules:
- *rule_source_other_than_mr
# Job producing a release directory
release: