-
Notifications
You must be signed in to change notification settings - Fork 7.6k
Add PGP key rotation PoC #12176
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. Weβll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add PGP key rotation PoC #12176
Conversation
Signed-off-by: Babak K. Shandiz <[email protected]>
Signed-off-by: Babak K. Shandiz <[email protected]>
Signed-off-by: Babak K. Shandiz <[email protected]>
Signed-off-by: Babak K. Shandiz <[email protected]>
Signed-off-by: Babak K. Shandiz <[email protected]>
Signed-off-by: Babak K. Shandiz <[email protected]>
These changes are focused on polishing the user experience around the new Debian development script: 1. Make important details of the process easier to see with spacing and formatting 2. Remove artifact directory prompting for default directory 3. Start within /root directory of container 4. Display message of the day instructing user on commands 5. Prompt users during docker setup when container is running 6. Update help usage with more details of targets
Now that the help usage, docker setup, and other targets guide users to the next step, the docblock explaining how to run the script are unnecessary.
6805e89 to
e11da56
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR adds a comprehensive proof-of-concept bash script for simulating PGP key rotation in APT repositories. The script demonstrates the complete lifecycle of managing signing keys for Debian packages, from initial setup through key rotation and deprecation.
Key Changes:
- Adds
script/debian-devel: A self-contained bash script that creates a Docker-based test environment for simulating APT repository key rotation scenarios - Implements multi-stage workflow: repository setup, new key generation, key deprecation, and cleanup
- Provides interactive demonstrations of package signing, repository management with reprepro, and keyring package updates
π‘ Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Signed-off-by: Babak K. Shandiz <[email protected]>
|
Merging as this has already been reviewed internally. |
This MR contains the following updates: | Package | Update | Change | |---|---|---| | [cli/cli](https://github.com/cli/cli) | patch | `v2.83.1` -> `v2.83.2` | MR created with the help of [el-capitano/tools/renovate-bot](https://gitlab.com/el-capitano/tools/renovate-bot). **Proposed changes to behavior should be submitted there as MRs.** --- ### Release Notes <details> <summary>cli/cli (cli/cli)</summary> ### [`v2.83.2`](https://github.com/cli/cli/releases/tag/v2.83.2): GitHub CLI 2.83.2 [Compare Source](cli/cli@v2.83.1...v2.83.2) #### What's Changed ##### π Fixes - Isolate user-provided search query from contextual qualifiers by [@​babakks](https://github.com/babakks) in [#​12170](cli/cli#12170) ##### π Docs & Chores - Refactor cfg out of CAPI Client by [@​williammartin](https://github.com/williammartin) in [#​12148](cli/cli#12148) - Remove extra flag default from help usage by [@​andyfeller](https://github.com/andyfeller) in [#​12154](cli/cli#12154) - Add PGP key rotation PoC by [@​babakks](https://github.com/babakks) in [#​12176](cli/cli#12176) - Add Debian/Ubuntu to unofficial packages by [@​andyfeller](https://github.com/andyfeller) in [#​12191](cli/cli#12191) - Error if go-licenses is not on the PATH by [@​williammartin](https://github.com/williammartin) in [#​12238](cli/cli#12238) - refactor: drop multierror in favor of std by [@​ferhatelmas](https://github.com/ferhatelmas) in [#​12234](cli/cli#12234) #####Dependencies - chore(deps): bump golang.org/x/crypto from 0.43.0 to 0.45.0 by [@​dependabot](https://github.com/dependabot)\[bot] in [#​12165](cli/cli#12165) - chore(deps): bump actions/checkout from 5 to 6 by [@​dependabot](https://github.com/dependabot)\[bot] in [#​12178](cli/cli#12178) - chore(deps): bump google.golang.org/protobuf from 1.36.9 to 1.36.10 by [@​dependabot](https://github.com/dependabot)\[bot] in [#​12037](cli/cli#12037) - chore(deps): bump golangci/golangci-lint-action from 9.0.0 to 9.1.0 by [@​dependabot](https://github.com/dependabot)\[bot] in [#​12189](cli/cli#12189) - chore(deps): bump github.com/theupdateframework/go-tuf/v2 from 2.2.0 to 2.3.0 by [@​dependabot](https://github.com/dependabot)\[bot] in [#​12100](cli/cli#12100) - chore(deps): bump github.com/gabriel-vasile/mimetype from 1.4.10 to 1.4.11 by [@​dependabot](https://github.com/dependabot)\[bot] in [#​12051](cli/cli#12051) - chore(deps): bump google.golang.org/grpc from 1.75.0 to 1.76.0 by [@​dependabot](https://github.com/dependabot)\[bot] in [#​11972](cli/cli#11972) - chore(deps): bump github.com/charmbracelet/huh from 0.7.0 to 0.8.0 by [@​dependabot](https://github.com/dependabot)\[bot] in [#​11971](cli/cli#11971) - Bump Go to 1.25.4 by [@​github-actions](https://github.com/github-actions)\[bot] in [#​12104](cli/cli#12104) - chore(deps): bump github.com/gdamore/tcell/v2 from 2.9.0 to 2.13.1 by [@​dependabot](https://github.com/dependabot)\[bot] in [#​12246](cli/cli#12246) - chore(deps): bump github.com/hashicorp/go-version from 1.7.0 to 1.8.0 by [@​dependabot](https://github.com/dependabot)\[bot] in [#​12247](cli/cli#12247) - chore(deps): bump github.com/google/go-containerregistry from 0.20.6 to 0.20.7 by [@​dependabot](https://github.com/dependabot)\[bot] in [#​12245](cli/cli#12245) - Bump Go to 1.25.5 by [@​github-actions](https://github.com/github-actions)\[bot] in [#​12250](cli/cli#12250) - Bump dev-tunnels SDK 0.1.13 to 0.1.19 by [@​sam-byng](https://github.com/sam-byng) in [#​12285](cli/cli#12285) #### New Contributors - [@​ferhatelmas](https://github.com/ferhatelmas) made their first contribution in [#​12234](cli/cli#12234) - [@​sam-byng](https://github.com/sam-byng) made their first contribution in [#​12285](cli/cli#12285) **Full Changelog**: <cli/cli@v2.83.1...v2.83.2> </details> --- ### Configuration π **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). π¦ **Automerge**: Enabled. β» **Rebasing**: Whenever MR is behind base branch, or you tick the rebase/retry checkbox. π **Ignore**: Close this MR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this MR, check this box --- This MR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi40Ny4wIiwidXBkYXRlZEluVmVyIjoiNDIuNDcuMCIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiUmVub3ZhdGUgQm90Il19-->
This PR adds the PGP key rotation PoC to
trunk. This is meant to be used for future reference and as a self-explanatory sample script to simulate steps of updating our APT repository when we need to rotate our PGP signing keys.Important
This is just a PoC and is not meant to be used for production purposes.