-
Notifications
You must be signed in to change notification settings - Fork 7.3k
Perform all gh attestation verify policy options configuration in the newEnforcementCriteria() function
#10012
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
Perform all gh attestation verify policy options configuration in the newEnforcementCriteria() function
#10012
Conversation
Signed-off-by: Meredith Lancaster <[email protected]>
Signed-off-by: Meredith Lancaster <[email protected]>
Signed-off-by: Meredith Lancaster <[email protected]>
| require.ErrorContains(t, err, "expected SourceRepositoryOwnerURI to be https://github.com/fakeowner, got https://github.com/sigstore") | ||
| }) | ||
|
|
||
| t.Run("with invalid owner and invalid repo", func(t *testing.T) { |
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.
The with repo which not matches SourceRepositoryURI and with owner which not matches SourceRepositoryOwnerURI test cases cover the possible scenarios.
| OIDCIssuer: verification.GitHubOIDCIssuer, | ||
| Owner: "sigstore", | ||
| PredicateType: verification.SLSAPredicateV1, | ||
| SANRegex: "(?i)^https://github.com/sigstore/", |
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.
Since SANRegex is not longer set using opts.Repo or opts.Owner in the RunE function, this value should be removed since it never be set in the tests and will fail.
These tests don't call runVerify, which will create the enforcement criteria where SANRegex is set. They instead call a dummy function. There are other tests that call runVerify.
gh attestation verify policy options configuration into enforcement criteria structgh attestation verify policy options configuration in the newEnforcementCriteria() function
Signed-off-by: Meredith Lancaster <[email protected]>
β¦:malancas/cli into consolidate-verify-policy-options-config
Signed-off-by: Meredith Lancaster <[email protected]>
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.
I approve of this, but only now got around to reading the tests. Assuming my suggestions are unfounded - maybe it's tested elsewhere! then i hereby bless this as free to merge.
Signed-off-by: Meredith Lancaster <[email protected]>
Signed-off-by: Meredith Lancaster <[email protected]>
Signed-off-by: Meredith Lancaster <[email protected]>
β¦:malancas/cli into consolidate-verify-policy-options-config
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.
π
This MR contains the following updates: | Package | Update | Change | |---|---|---| | [cli/cli](https://github.com/cli/cli) | minor | `v2.63.2` -> `v2.64.0` | 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.64.0`](https://github.com/cli/cli/releases/tag/v2.64.0): GitHub CLI 2.64.0 [Compare Source](cli/cli@v2.63.2...v2.64.0) #### What's Changed - docs: improve docs for browse command as of [#​5352](cli/cli#5352) by [@​ankddev](https://github.com/ankddev) in cli/cli#10025 - Open MR against gh-merge-base by [@​heaths](https://github.com/heaths) in cli/cli#9712 - Add integration tests for `gh attestation verify` when the `bundle-from-oci` flag is specified by [@​malancas](https://github.com/malancas) in cli/cli#10020 - `gh repo rename` help text clarifies new repo name should not include owner by [@​BagToad](https://github.com/BagToad) in cli/cli#10044 - fix: list branches in square brackets in `gh run` and `gh codespace` by [@​uday-rana](https://github.com/uday-rana) in cli/cli#10043 - Bump actions/attest-build-provenance from 1.4.4 to 2.1.0 by [@​dependabot](https://github.com/dependabot) in cli/cli#10056 - Bump golang.org/x/crypto from 0.29.0 to 0.31.0 by [@​dependabot](https://github.com/dependabot) in cli/cli#10070 - Improve documentation and error messaging for local extension installations without executables by [@​BagToad](https://github.com/BagToad) in cli/cli#9933 - docs: better document auth scopes by [@​ankddev](https://github.com/ankddev) in cli/cli#10026 - Sigstore verifier logic updates by [@​malancas](https://github.com/malancas) in cli/cli#9999 - `gh pr merge --delete-branch` exits with error when merge requested via merge queue by [@​BagToad](https://github.com/BagToad) in cli/cli#10074 - sundry `gh at inspect` improvements by [@​phillmv](https://github.com/phillmv) in cli/cli#9954 - Support `pr view` for intra-org forks by [@​williammartin](https://github.com/williammartin) in cli/cli#10078 - Print policy information before verifying attestations by [@​malancas](https://github.com/malancas) in cli/cli#9891 - Improve error handling in apt setup script by [@​jobegrabber](https://github.com/jobegrabber) in cli/cli#10055 - Use Windows compatible file name for downloaded attestations when running `gh attestation download` by [@​malancas](https://github.com/malancas) in cli/cli#10051 - Bump github.com/cpuguy83/go-md2man/v2 from 2.0.5 to 2.0.6 by [@​dependabot](https://github.com/dependabot) in cli/cli#10094 - Perform all `gh attestation verify` policy options configuration in the `newEnforcementCriteria()` function by [@​malancas](https://github.com/malancas) in cli/cli#10012 #### New Contributors - [@​ankddev](https://github.com/ankddev) made their first contribution in cli/cli#10025 - [@​uday-rana](https://github.com/uday-rana) made their first contribution in cli/cli#10043 - [@​jobegrabber](https://github.com/jobegrabber) made their first contribution in cli/cli#10055 **Full Changelog**: cli/cli@v2.63.2...v2.64.0 </details> --- ### Configuration π **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). π¦ **Automerge**: Disabled by config. Please merge this manually once you are satisfied. β» **Rebasing**: Whenever MR becomes conflicted, 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:eyJjcmVhdGVkSW5WZXIiOiIzOS43Ny4wIiwidXBkYXRlZEluVmVyIjoiMzkuNzcuMCIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiUmVub3ZhdGUgQm90Il19-->
Move the content of the
gh attestation verifycommand'sOptions#SetPolicyFlags()method to thenewEnforcementCriteria()function. Since theSetPolicyFlags()function takes the given user options and setsOwnerandSANRegex, this logic can be consolidated with the existing enforcement criteria constructor logic.cc #9850