Skip to content
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

Fix cosign copy --only for signatures #3904

Merged
merged 1 commit into from
Dec 16, 2024

Conversation

marcofranssen
Copy link
Contributor

@marcofranssen marcofranssen commented Oct 11, 2024

Summary

There is a bug in the cosign copy command for the deprecated flag, as well documentation is invalid for the CLI option.

See
https://github.com/sigstore/cosign/blob/main/cmd/cosign/cli/copy/copy.go#L192
requires to have value sig instead of sign.

Also aligned the option docs order to align with the order of the
example. https://github.com/sigstore/cosign/blob/main/cmd/cosign/cli/copy.go#L40

Release Note

Fixes the cosign copy command to have correct documentation and proper fallback implementation for the deprecated --sig-only commandline option.

Documentation

N.A.

Copy link

codecov bot commented Oct 11, 2024

Codecov Report

Attention: Patch coverage is 71.42857% with 4 lines in your changes missing coverage. Please review.

Project coverage is 36.35%. Comparing base (2ef6022) to head (ac48b3d).
Report is 253 commits behind head on main.

Files with missing lines Patch % Lines
cmd/cosign/cli/copy/copy.go 76.92% 3 Missing ⚠️
cmd/cosign/cli/options/copy.go 0.00% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #3904      +/-   ##
==========================================
- Coverage   40.10%   36.35%   -3.76%     
==========================================
  Files         155      203      +48     
  Lines       10044    12819    +2775     
==========================================
+ Hits         4028     4660     +632     
- Misses       5530     7585    +2055     
- Partials      486      574      +88     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@marcofranssen marcofranssen force-pushed the fix-copy-sig branch 2 times, most recently from 7d23cfa to 3c92f54 Compare October 11, 2024 08:40
See
https://github.com/sigstore/cosign/blob/main/cmd/cosign/cli/copy/copy.go#L192
requires to have value `sig` instead of `sign`.

Also aligned the option docs order to align with the order of the
example. https://github.com/sigstore/cosign/blob/main/cmd/cosign/cli/copy.go#L40

Signed-off-by: Marco Franssen <[email protected]>
Copy link
Member

@cpanato cpanato left a comment

Choose a reason for hiding this comment

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

can we add tests?

@marcofranssen
Copy link
Contributor Author

I propose to do that in follow up pr. There have been historically 0 tests on this command.

@haydentherapper
Copy link
Contributor

We recognize that much of cmd/ is untested but we should use this opportunity to improve coverage. I'd recommend adding tests for the changed function, and refactoring if needed so you can have a more testable function.

@marcofranssen
Copy link
Contributor Author

marcofranssen commented Oct 28, 2024

Well I only have limited time, so don't want to blow up the scope of this PR. I'm just a happy user of cosign doing my contribution, trying to improve things that I can do in the limited amount of time I have. To refactor tests and such I need much more time which I don't have right now.

So I would appreciate at least the improvements in this PR can be merged.

Copy link
Contributor

@haydentherapper haydentherapper left a comment

Choose a reason for hiding this comment

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

Merging as this is straightforward enough, thanks!

@haydentherapper haydentherapper merged commit c9eb68d into sigstore:main Dec 16, 2024
23 checks passed
tmeijn pushed a commit to tmeijn/dotfiles that referenced this pull request Feb 6, 2025
This MR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [cosign](https://github.com/sigstore/cosign) | patch | `2.4.1` -> `2.4.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>sigstore/cosign (cosign)</summary>

### [`v2.4.2`](https://github.com/sigstore/cosign/blob/HEAD/CHANGELOG.md#v242)

[Compare Source](sigstore/cosign@v2.4.1...v2.4.2)

#### Features

-   Updated open-policy-agent to 1.1.0 library ([#&#8203;4036](sigstore/cosign#4036))
    -   Note that only Rego v0 policies are supported at this time
-   Add UseSignedTimestamps to CheckOpts, refactor TSA options ([#&#8203;4006](sigstore/cosign#4006))
-   Add support for verifying root checksum in cosign initialize ([#&#8203;3953](sigstore/cosign#3953))
-   Detect if user supplied a valid protobuf bundle ([#&#8203;3931](sigstore/cosign#3931))
-   Add a log message if user doesn't provide `--trusted-root` ([#&#8203;3933](sigstore/cosign#3933))
-   Support mTLS towards container registry ([#&#8203;3922](sigstore/cosign#3922))
-   Add bundle create helper command ([#&#8203;3901](sigstore/cosign#3901))
-   Add trusted-root create helper command ([#&#8203;3876](sigstore/cosign#3876))

#### Bug Fixes

-   fix: set tls config while retaining other fields from default http transport ([#&#8203;4007](sigstore/cosign#4007))
-   policy fuzzer: ignore known panics ([#&#8203;3993](sigstore/cosign#3993))
-   Fix for multiple WithRemote options ([#&#8203;3982](sigstore/cosign#3982))
-   Add nightly conformance test workflow ([#&#8203;3979](sigstore/cosign#3979))
-   Fix copy --only for signatures + update/align docs ([#&#8203;3904](sigstore/cosign#3904))

#### Documentation

-   Remove usage.md from spec, point to client spec ([#&#8203;3918](sigstore/cosign#3918))
-   move reference from gcr to ghcr ([#&#8203;3897](sigstore/cosign#3897))

#### Contributors

-   AdamKorcz
-   Aditya Sirish
-   Bob Callaway
-   Carlos Tadeu Panato Junior
-   Cody Soyland
-   Colleen Murphy
-   Hayden B
-   Jussi Kukkonen
-   Marco Franssen
-   Nianyu Shen
-   Slavek Kabrda
-   Søren Juul
-   Warren Hodgkinson
-   Zach Steindler

</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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xNTguMSIsInVwZGF0ZWRJblZlciI6IjM5LjE1OC4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJSZW5vdmF0ZSBCb3QiXX0=-->
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants