chore: sign Linux repositories only with the new PGP key - #14197
Draft
babakks wants to merge 1 commit into
Draft
Conversation
Now that the old key (K1) has expired, drop all references to it and sign both the APT and RPM repositories, and the RPM package files, with the new key (K2) only. Signed-off-by: Babak K. Shandiz <babakks@github.com> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 72f81ef6-56e2-410b-b8df-49c65f7a08a3
Contributor
There was a problem hiding this comment.
Pull request overview
Rotates Linux package signing from the expired-soon K1 key to K2. The changes are internally consistent but must not merge before September 5, 2026.
Changes:
- Signs all APT repositories exclusively with K2.
- Signs RPM packages and repository metadata exclusively with K2.
- Removes K1 secrets and setup from the deployment workflow.
Show a summary per file
| File | Description |
|---|---|
.github/workflows/deployment.yml |
Imports only K2 and uses it for RPM metadata signing. |
script/distributions |
Configures every APT distribution to use only K2. |
script/rpmmacros |
Selects K2 for RPM package signing. |
Review details
💡 Configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
- Files reviewed: 3/3 changed files
- Comments generated: 0
- Review effort level: Balanced
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Warning
This PR is not ready to be merged yet. It must wait until the current signing key (K1) has expired (after 5 Sep 2026). Merging and releasing before that date would break APT/RPM installs for users, since we would stop signing with a key that is still the only one some users trust. Please hold until the expiry window per the rollout plan.
Description
We are rotating the PGP key used to sign our Linux package repositories. The old/current key (K1,
2C6106201985B60E6C7AC87323F3D4EA75716059) is expiring, and we have already introduced a new key (K2,7F38BBB59D064DBCB3D84D725612B36462313325).In Step 1 (#13271, merged) we started signing the APT repository with both keys so existing and new users would keep working across the transition. This PR is Step 2: after the old key expires, we drop every reference to K1 and sign the APT repo, the RPM repo, and the individual
.rpmfiles with K2 only.Concretely:
script/distributions: everySignWithline now lists only K2 (was K1 + K2).script/rpmmacros:%_gpg_namenow points at K2 (was K1), so.rpmpackage signing uses the new key..github/workflows/deployment.yml, "Set up GPG": removed the K1 secrets and import/preset steps, keeping only the K2 (_2026) secrets..github/workflows/deployment.yml, "Run createrepo": the--default-keyused to signrepomd.xmlnow points at K2.How did you test this change?
This is a deployment-workflow and packaging-config change; it cannot be exercised via the
ghCLI locally. Verification is done after a release is cut, per the tracking issue:Given a new release has been published
When I run the checks below
Then each repository/artifact is signed only with K2 (
7F38BBB59D064DBCB3D84D725612B36462313325):The published keyring (
githubcli-archive-keyring.gpg/.asc) contains both keys, so clients that trust K2 will validate the new signatures.Key points
Notes for reviewers
.github/workflows/deployment.yml("Set up GPG" and "Run createrepo"), thenscript/rpmmacrosandscript/distributions.Authorship and follow-up
Who wrote this:
Who answers review comments: