Skip to content

ci: use archive.debian.org for the debian:11 jobs - #1964

Open
Martini991 wants to merge 1 commit into
nodesource:masterfrom
Martini991:ci-debian-11-use-archive
Open

Martini991 wants to merge 1 commit into
nodesource:masterfrom
Martini991:ci-debian-11-use-archive

Conversation

@Martini991

Copy link
Copy Markdown

Problem

The debian:11 jobs in ci.yaml fail on master (e.g. this run). Debian 11 is past end of support and its security archive has moved to archive.debian.org: deb.debian.org still serves the bullseye-security index, but the package files it lists return 404 (e.g. libnghttp2-14_1.43.0-1+deb11u3_amd64.deb). apt then fails to install the prerequisites, falls back to Debian's own nodejs 12, and cannot find nsolid.

Change

On debian:11, before running the setup script, overwrite /etc/apt/sources.list with the bullseye, bullseye-updates and bullseye-security entries on archive.debian.org, as deprecated.yaml already does for debian:10. The archive's Release files are still signed and have no Valid-Until, so no extra apt options are needed.

Why the entries are written out instead of a sed from deb.debian.org to archive.debian.org:

  • They follow the sources.list form documented in archive.debian.org/debian/README and the existing debian:10 step.
  • The result doesn't depend on what the image ships. If a future debian:11 image changes its sources (another mirror host, or deb822 debian.sources), a sed would silently match nothing and the job would fail again with 404s.
  • Reviewers can see the exact sources in the workflow.

The entries use http:// because the image has no ca-certificates until the setup script installs them; apt still verifies every download against the signed Release files.

This also fixes the debian:11 failures on #1962 and #1963.

Testing

Ran the deb job steps in a debian:11 container, with this step (taken from ci.yaml) and the scripts from master:

Node.js setup nodejs nsolid
20 ok v20 v20
22 ok v22 v22
24 ok v24 v24
25 ok v25 skipped (as in CI)
26 ok v26 skipped (as in CI)

No 404s and no apt errors. Without the change the same run fails with 404s from bullseye-security.

Prepared with the help of Claude Code; I reviewed the change and ran the tests above.

Debian 11 is past end of support: deb.debian.org still lists the
bullseye-security packages, but downloading them returns 404, so the
debian:11 jobs fail. Write the image's sources.list with
archive.debian.org entries, as deprecated.yaml already does for
debian:10.
@ns-control-tower

Copy link
Copy Markdown

ns-control-tower

Note

Reviewing the latest changes on this PR — this may take a few minutes.
This comment will be updated in place with the findings; no other top-level comments will be posted.

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