Skip to content

Fix Codecov PGP key fetch in coverage upload - #22963

Merged
nbradbury merged 1 commit into
trunkfrom
fix/codecov-keybase-url
Jun 9, 2026
Merged

Fix Codecov PGP key fetch in coverage upload#22963
nbradbury merged 1 commit into
trunkfrom
fix/codecov-keybase-url

Conversation

@wzieba

@wzieba wzieba commented Jun 9, 2026

Copy link
Copy Markdown
Contributor

Summary

CI was failing in the Uploading code coverage step because curl https://keybase.io/codecovsecurity/pgp_keys.asc now returns a 32-byte HTTP 404 (SELF-SIGNED PUBLIC KEY NOT FOUND). That body gets piped into gpg --import, gpg fails with "no valid OpenPGP data found", and set -e aborts the rest of the run-unit-tests script before merge_junit_reports runs — which is why later steps complain about a missing merged-test-results.xml artifact.

Codecov (now under Sentry Harness) appears to have renamed their Keybase account from codecovsecurity to codecovsecops. The new URL serves the same signing key (fingerprint 27034E7FDB850E0BBC2C62FF806BB28AED779869, key ID ED779869).

Changes

  • Update the keybase URL: codecovsecuritycodecovsecops.
  • Add --fail --silent --show-error to the curl call so the next time this URL moves, curl exits non-zero with a clear error instead of silently piping a 404 page into gpg.

Same fix being applied in woocommerce-android: woocommerce/woocommerce-android#16051

Test plan

  • CI green on this PR (the coverage upload step in particular).
  • Codecov report appears on the PR.

Follow-up (not in this PR)

The legacy uploader.codecov.io is deprecated in favor of the codecov-cli at cli.codecov.io. Worth migrating in a separate PR.

🤖 Generated with Claude Code

Codecov rotated their Keybase username from codecovsecurity to
codecovsecops (the new URL serves the same key fingerprint
27034E7FDB850E0BBC2C62FF806BB28AED779869). The old URL now returns a
32-byte 404 body that curl was happily piping into gpg, breaking the
import and aborting run-unit-tests.sh under `set -e` before
merge_junit_reports could run.

Also add `--fail --silent --show-error` so any future move surfaces as
a curl failure with a clear message instead of an opaque gpg error.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@wzieba
wzieba requested a review from nbradbury June 9, 2026 12:29
@dangermattic

dangermattic commented Jun 9, 2026

Copy link
Copy Markdown
Collaborator
1 Warning
⚠️ PR is not assigned to a milestone.

Generated by 🚫 Danger

@wpmobilebot

Copy link
Copy Markdown
Contributor

App Icon📲 You can test the changes from this Pull Request in WordPress Android by scanning the QR code below to install the corresponding build.

App NameWordPress Android
Build TypeDebug
Versionpr22963-8cb795a
Build Number1493
Application IDorg.wordpress.android.prealpha
Commit8cb795a
Installation URL3ir5lr3tomq5o
Automatticians: You can use our internal self-serve MC tool to give yourself access to those builds if needed.

@wpmobilebot

Copy link
Copy Markdown
Contributor

App Icon📲 You can test the changes from this Pull Request in Jetpack Android by scanning the QR code below to install the corresponding build.

App NameJetpack Android
Build TypeDebug
Versionpr22963-8cb795a
Build Number1493
Application IDcom.jetpack.android.prealpha
Commit8cb795a
Installation URL6ebn9b3s5abu8
Automatticians: You can use our internal self-serve MC tool to give yourself access to those builds if needed.

@nbradbury nbradbury left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good, thanks for the fix! :shipit:

@nbradbury
nbradbury merged commit da948c2 into trunk Jun 9, 2026
30 checks passed
@nbradbury
nbradbury deleted the fix/codecov-keybase-url branch June 9, 2026 15:30
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.

4 participants