Skip to content

ci: backport Ubuntu 26.04 support to 3.18 - #14093

Open
kayx23 wants to merge 5 commits into
apache:release/3.18from
kayx23:ci/backport-ubuntu2604-318
Open

kayx23 wants to merge 5 commits into
apache:release/3.18from
kayx23:ci/backport-ubuntu2604-318

Conversation

@kayx23

@kayx23 kayx23 commented Oct 26, 2026 •

Copy link
Copy Markdown
Member

Why this PR is needed

GitHub now routes ubuntu-latest jobs to Ubuntu 26.04. The release/3.18 branch predates that runner image, so its pull requests fail during environment setup before their tests execute: Python 3.9 is unavailable, libpcre3 packages were removed, and apt-key no longer exists.

Master fixed the migration in #14070, and the equivalent release/3.19 backport in #14086 has passed the complete CI matrix. This PR applies the same compatibility work to release/3.18.

Changes

  • use Python 3.12 for Link Checker
  • remove unavailable libpcre3 packages and link lrexlib-pcre against the APISIX runtime PCRE
  • replace apt-key with an /etc/apt/keyrings signed-by configuration
  • fall back to the Ubuntu 24.04 OpenResty repository when 26.04 packages are unavailable
  • update lua-resty-saml to 0.2.7 while retaining the branch's other dependency versions
  • update the CI runtime from 1.3.16 to 1.3.18 to avoid the Dubbo worker crash fixed in the maintained runtime
  • pin the CI bootstrap to pnpm 11.25.0 because pnpm 12 rejects the branch's root-run setup and blocks all test shards before execution
  • preserve shard environment variables with sudo-rs
  • update the OpenWhisk test service for the current Docker API floor and supported Node.js runtime
  • make disk cleanup tolerate packages absent from the runner image
  • include the runner image in dependency cache keys
  • document Ubuntu 26.04 as supported
  • synchronize the garbage-collection and stream-metrics tests with their background worker and refresh intervals
  • wait for the Admin API route update to reach proxy workers before the access-log test exercises the route

The test changes retain all assertions; they prevent slower runners from starving the worker-events broker or scraping before the configured metrics refresh.

Validation

  • all modified workflow YAML files parse
  • bash -n passes for all modified shell scripts
  • git diff --check passes
  • the conflict resolution preserves the release/3.18 dependency set except for the required lua-resty-saml update

The complete PR CI matrix is the end-to-end validation for the backport.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants