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 tool and GH workflow for adding fast-tracks and pins #1441
Conversation
We're going to add more functionality.
We're going to be updating lockfiles in other ways too.
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.
Very cool! A few minor comments, but overall LGTM.
|
||
pin = subcommands.add_parser('pin', description='Pin source RPMs.') | ||
pin.add_argument('nvr', nargs='+', | ||
help='NVR of SRPM to pin') |
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.
Minor/optional: since we're already importing koji, could be nice to also support Koji build URLs.
For fast-tracks, take the Bodhi update, and for pins, take the SRPM NVR.
Verify that newly added pins and fast-tracks have dist tags that match the releasever from manifest.yaml, unless --ignore-dist-mismatch is specified.
This enforces existing policy.
The CI workflow will need it.
Updated! Also fixed handling of noarch packages, which were being ignored. |
Run `overrides.py {fast-track|pin}` and submit a PR. For now, only handle one Bodhi update (for fast-track) or SRPM (for pin) per run. Two runs are required when overriding both testing-devel and next-devel, since next-devel might be on a different Fedora major.
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.
LGTM! Nice work.
Rename and generalize
remove-graduated-overrides.py
. Add subcommands for adding fast-tracks (from Bodhi update IDs or URLs) and pins (from SRPM NVRs). Unless--force
is specified, reject newly added overrides for the wrong Fedora major by comparing their dist tags to thereleasever
frommanifest.yaml
.Add a wrapper GitHub workflow that creates a PR to one branch, pinning one SRPM or fast-tracking one Bodhi update. More complex cases can use multiple workflow runs or manual PRs.