Skip to content

Repair wp/6.3 branch Actions: Fix wp-env Docker builds broken by archived Debian Buster/Bullseye repositories and expired Debian Stretch signing keys - #261

Closed
desrosj wants to merge 4 commits into
fix-actions-6.3/docker-compose-v2from
fix-actions-6.3/fix-wp-env-debian-bullseye
Closed

desrosj wants to merge 4 commits into
fix-actions-6.3/docker-compose-v2from
fix-actions-6.3/fix-wp-env-debian-bullseye

Conversation

@desrosj

@desrosj desrosj commented Sep 11, 2026 •

Copy link
Copy Markdown
Owner

What?

Repairs wp-env's generated Dockerfile (packages/env/lib/init-config.js) so it can still build images for every PHP version this branch supports, across all three now-archived Debian releases:

Suite PHP versions affected Change
Buster 7.1, 7.2 Cherry-picks upstream #70718, rewriting deb.debian.org/security.debian.org to archive.debian.org and dropping buster-updates.
Bullseye 7.3, 7.4, 8.0 Cherry-picks upstream d21304e3323571401364805242fc26d1cf03a52d (#82478), rewriting the suite to archive.debian.org and dropping bullseye-security/bullseye-updates — the security suite is not on the archive host, so it is removed rather than redirected.
Stretch 5.6, 7.0 Adds a conditional apt.conf.d override allowing unauthenticated packages. The host rewrite for Stretch already existed on this branch, but archive.debian.org's own Stretch signing keys have fully expired, so apt-get -qy install $PHPIZE_DEPS still fails with E: There were unauthenticated packages and -y was used without --allow-unauthenticated.

A final commit records all three in packages/env/CHANGELOG.md.

Why?

Debian moves a release's package repositories to its archive server once that release reaches end-of-life, and drops them from the regular mirrors. wp-env start's Docker build then fails with apt-get 404s for any PHP version whose base image relies on an archived release. Stretch and Buster are already gone from deb.debian.org; Bullseye's rewrite is preemptive, and archive.debian.org already serves it.

wp-env imposes no PHP allowlist — checkVersion() in packages/env/lib/config/validate-config.js only checks the shape of the string, which is then interpolated straight into FROM wordpress:php${version}. The effective range is therefore this branch's Requires PHP floor of 5.6 up to whatever wordpress:php* tags exist. All three suites above fall inside that range.

The test-php matrix (7.0, 7.4, 8.0, 8.2) exercises Stretch and Bullseye but not Buster, so the Buster rewrite is not observable from this branch's CI alone. It is still required: packages/env/README.md on this branch uses "phpVersion": "7.2" as its worked example, and that value resolves to a Buster image.

The Stretch override is scoped to take effect only when the Stretch suite is actually present in /etc/apt/sources.list — matching how the per-suite sed rewrites are scoped by suite name rather than by PHP version — so Buster, Bullseye and any newer Debian-based build are unaffected.

Use of AI Tools

This PR was authored with the help of Claude Code. All code should be treated as AI-produced and not yet reviewed by a human until this PR is marked Ready for Review.

@desrosj
desrosj added this pull request to stack #97 September 11, 2026 15:22
@desrosj
desrosj removed this pull request from stack #97 September 13, 2026 00:48
@desrosj
desrosj added this pull request to stack #317 September 13, 2026 00:49
@desrosj
desrosj removed this pull request from stack #317 September 13, 2026 01:26
@desrosj
desrosj added this pull request to stack #320 September 13, 2026 01:27
@desrosj desrosj changed the title Repair wp/6.3 branch Actions: Fix wp-env Docker builds broken by archived Debian Bullseye repositories Repair wp/6.3 branch Actions: Fix wp-env Docker builds broken by archived Debian Bullseye repositories and expired Debian Stretch signing keys Sep 13, 2026
@desrosj
desrosj force-pushed the fix-actions-6.3/fix-wp-env-debian-bullseye branch from 68f8aab to c67fe86 Compare September 14, 2026 01:37
@desrosj
desrosj force-pushed the fix-actions-6.3/fix-wp-env-debian-bullseye branch from c67fe86 to cf9b260 Compare September 14, 2026 02:40
@desrosj
desrosj removed this pull request from stack #320 September 14, 2026 03:09
@desrosj
desrosj added this pull request to stack #351 September 14, 2026 03:11
@desrosj
desrosj force-pushed the fix-actions-6.3/fix-wp-env-debian-bullseye branch from fa44f09 to 14c3fe4 Compare September 15, 2026 19:14
@desrosj
desrosj removed this pull request from stack #351 September 21, 2026 18:35
@desrosj
desrosj changed the base branch from fix-actions-6.3/add-workflow-concurrency to wp/6.3 September 21, 2026 18:36
@desrosj
desrosj force-pushed the fix-actions-6.3/fix-wp-env-debian-bullseye branch from 14c3fe4 to fc04c96 Compare September 21, 2026 18:45
@desrosj
desrosj changed the base branch from wp/6.3 to fix-actions-6.3/fix-workflow-branch-filters September 21, 2026 18:48
@desrosj
desrosj added this pull request to stack #403 September 21, 2026 18:48
@desrosj
desrosj removed this pull request from stack #403 September 21, 2026 19:36
@desrosj
desrosj changed the base branch from fix-actions-6.3/fix-workflow-branch-filters to wp/6.3 September 21, 2026 19:37
@desrosj
desrosj force-pushed the fix-actions-6.3/fix-wp-env-debian-bullseye branch 2 times, most recently from fc04c96 to f1de22b Compare September 21, 2026 19:48
@desrosj
desrosj changed the base branch from wp/6.3 to fix-actions-6.3/fix-workflow-branch-filters September 21, 2026 19:52
@desrosj
desrosj added this pull request to stack #420 September 21, 2026 19:52
@desrosj
desrosj removed this pull request from stack #420 September 21, 2026 21:06
@desrosj
desrosj changed the base branch from fix-actions-6.3/fix-workflow-branch-filters to wp/6.3 September 21, 2026 21:06
@desrosj
desrosj force-pushed the fix-actions-6.3/fix-wp-env-debian-bullseye branch from f1de22b to 966e5de Compare September 21, 2026 21:17
@desrosj
desrosj added this pull request to stack #477 September 22, 2026 20:20
@desrosj
desrosj removed this pull request from stack #477 September 23, 2026 01:30
@desrosj
desrosj changed the base branch from fix-actions-6.3/docker-compose-v2 to wp/6.3 September 23, 2026 01:31
@desrosj
desrosj force-pushed the fix-actions-6.3/fix-wp-env-debian-bullseye branch from ab4dfe4 to f61e9f7 Compare September 23, 2026 01:39
@desrosj
desrosj changed the base branch from wp/6.3 to fix-actions-6.3/docker-compose-v2 September 23, 2026 01:41
@desrosj
desrosj added this pull request to stack #486 September 23, 2026 01:41
@desrosj
desrosj removed this pull request from stack #486 September 24, 2026 17:11
@desrosj
desrosj changed the base branch from fix-actions-6.3/docker-compose-v2 to wp/6.3 September 24, 2026 17:11
@desrosj
desrosj changed the base branch from wp/6.3 to fix-actions-6.3/docker-compose-v2 September 24, 2026 17:13
@desrosj
desrosj added this pull request to stack #511 September 24, 2026 17:15
@desrosj
desrosj removed this pull request from stack #511 September 24, 2026 17:44
@desrosj
desrosj added this pull request to stack #515 September 24, 2026 17:45
@desrosj
desrosj removed this pull request from stack #515 September 28, 2026 14:31
@desrosj
desrosj added this pull request to stack #537 September 28, 2026 14:32
@desrosj
desrosj removed this pull request from stack #537 September 28, 2026 15:24
@desrosj
desrosj added this pull request to stack #552 September 28, 2026 15:25
@desrosj
desrosj removed this pull request from stack #552 September 28, 2026 18:41
@desrosj
desrosj changed the base branch from fix-actions-6.3/docker-compose-v2 to wp/6.3 September 28, 2026 18:42
@desrosj
desrosj changed the base branch from wp/6.3 to fix-actions-6.3/docker-compose-v2 September 28, 2026 18:46
@desrosj
desrosj added this pull request to stack #563 September 28, 2026 18:46
t-hamano and others added 4 commits September 28, 2026 14:56
…Press#70718)

Co-authored-by: t-hamano <wildworks@git.wordpress.org>
Co-authored-by: Mamaduka <mamaduka@git.wordpress.org>
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DtSAAJkQ9P6vPtDumqStg8
Cherry-picks d21304e
(WordPress#82478) into the `wp/6.3` branch to
fix failures encountered when attempting to use a version of PHP that relies on
Debian Bullseye.

Debian 11 ("bullseye") reached end-of-life on 2026-08-31 and its packages left
the regular mirrors. Since then, `wp-env start`'s Docker build for the
bullseye-based WordPress images fails during `apt-get -qy install sudo` with
404s against `deb.debian.org`. This is the same class of problem as the earlier
Buster fix in this same PR, now extended to the Bullseye suite: point the
`bullseye` apt suite at `archive.debian.org`, dropping the
`bullseye-security`/`bullseye-updates` suites entirely (rather than rewriting
them) since `archive.debian.org` doesn't carry `bullseye-security` yet.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DtSAAJkQ9P6vPtDumqStg8
…ning keys.

wp-env's existing archive.debian.org rewrite already redirects the Stretch
suite's package mirrors (used by the PHP 7.0/7.1 Docker images), since
Debian moved Stretch to its archive server. Since then, the archive's own
Stretch-suite GPG signing keys have themselves expired, with no replacement
key ever going to be published for this now fully end-of-life suite (unlike
Buster/Bullseye, whose archived keys are still valid). apt-get -qy update
still succeeds (with GPG warnings), but apt-get -qy install $PHPIZE_DEPS
then fails with:

E: There were unauthenticated packages and -y was used without --allow-unauthenticated

This adds a conditional apt.conf.d override that allows unauthenticated
packages, scoped to only take effect when the Stretch suite is actually
present in /etc/apt/sources.list (matching how the existing
stretch/buster/bullseye sed rewrites above it are each scoped by matching
suite name rather than by PHP version), so Buster, Bullseye, and any newer
Debian-based build stay unaffected.

Ported verbatim from wp/6.5's equivalent fix (#127),
already also ported to wp/6.4 (#126).

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DtSAAJkQ9P6vPtDumqStg8
…retch wp-env Docker build fixes.

Per packages/README.md's "Maintaining Changelogs" section, every package PR
needs an Unreleased changelog entry. This PR's commits fix wp-env's Docker
builds for this branch's buster-based PHP versions (7.1 and 7.2),
bullseye-based PHP versions (7.4, 8.0, and 8.2), and stretch-based PHP
version (7.0); this entry documents all three under a new Bug fix heading,
matching this file's existing heading style.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DtSAAJkQ9P6vPtDumqStg8
@desrosj
desrosj removed this pull request from stack #563 September 28, 2026 19:03
@desrosj
desrosj changed the base branch from fix-actions-6.3/docker-compose-v2 to wp/6.3 September 28, 2026 19:03
@desrosj
desrosj force-pushed the fix-actions-6.3/fix-wp-env-debian-bullseye branch from f61e9f7 to 84ff48e Compare September 28, 2026 19:03
@desrosj
desrosj changed the base branch from wp/6.3 to fix-actions-6.3/docker-compose-v2 September 28, 2026 19:04
@desrosj
desrosj added this pull request to stack #566 September 28, 2026 19:04
@desrosj

desrosj commented Sep 28, 2026

Copy link
Copy Markdown
Owner Author

Moved to WordPress#83706. The branch is left in place.

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

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants