Repository navigation
v0.10.3 — A 403 from the runner's Microsoft apt source no longer fails an install
A required leg failed before configuring anything: install-clang died in its
second apt-get update, on a source nothing here installs from.
Err:6 https://packages.microsoft.com/ubuntu/24.04/prod noble InRelease
403 Forbidden [IP: 13.107.246.66 443]
Hit:7 https://apt.llvm.org/noble llvm-toolchain-noble InRelease
E: The repository 'https://packages.microsoft.com/ubuntu/24.04/prod noble InRelease' is no longer signed.
The Ubuntu runner image preinstalls packages.microsoft.com as an apt source.
The LLVM repository answered, and the Microsoft one had served its index six
seconds earlier in the same job, so the 403 was transient. Two things turned it
into a red check anyway:
Acquire::Retries, whichapt-retrysets, retries a 5xx but not a 4xx.- A single source failing its index fails the whole
apt-get update.
The fix is in apt-retry, the step every Linux job already runs once before
its installs. It now also removes any /etc/apt/sources.list.d/ file naming
packages.microsoft.com, in either the one-line .list or the deb822
.sources format, and prints what it removed. It is a no-op when there are
none. Every internal action reference is repinned to it (#53, #54).
What is affected
| Workflow | Affected |
|---|---|
clang.yml, clang-libc++.yml, gcc.yml |
yes |
sanitizers.yml, coverage.yml, clang-tidy.yml |
yes |
clang-format.yml, codeql.yml, consumption.yml |
yes |
visual-studio.yml, mingw.yml, msvc-analyze.yml |
no — Windows, no apt |
apple-clang.yml |
no — macOS, no apt |
actionlint.yml, scorecard.yml |
no — no apt install |
No inputs or check names change
Between v0.10.2 and v0.10.3 the only action that changed is apt-retry, and
toolchains.json is untouched. Every ladder resolves exactly as it did, and no
required check needs renaming.
Upgrading
Repin, nothing else:
uses: rhalbersma/cpp-ci/.github/workflows/clang.yml@480aa17d38efd5c1641b861e9e1a0c6df053a451 # v0.10.3