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

Add opt-in support for tests that include providing a custom trust root #101

Merged
merged 8 commits into from
Dec 5, 2023

Conversation

steiza
Copy link
Member

@steiza steiza commented Sep 27, 2023

This will help us address #30

Summary

Previously the tests assumed the public-good trust root, but supplying a custom trust root lets us exercise additional failure paths, without having to compromise the public-good service.

Release Note

  • Added client CLI option --trusted-root FILE to support additional test cases
    • If your client doesn't yet support --trusted-root, in your Action workflow you can specify xfail: "test_verify_with_trust_root" to skip this test for now

Documentation

N/A

steiza added a commit to sigstore/sigstore-go that referenced this pull request Sep 27, 2023
This allows us to have additional test cases that weren't previously
possible when assuming the public-good trust root.

See also sigstore/sigstore-conformance#101.
@woodruffw
Copy link
Member

Thanks @steiza! I've tagged myself and @tnytown to review.

Copy link
Collaborator

@tnytown tnytown left a comment

Choose a reason for hiding this comment

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

Looks good overall, just one minor nit. Do any clients support this yet? It would be nice to see the new tests exercised by the selftest :)

action.yml Outdated Show resolved Hide resolved
@woodruffw
Copy link
Member

Do any clients support this yet?

sigstore-python doesn't yet, not sure about the others.

steiza added a commit to sigstore/sigstore-go that referenced this pull request Sep 27, 2023
This allows us to have additional test cases that weren't previously
possible when assuming the public-good trust root.

See also sigstore/sigstore-conformance#101.
@steiza
Copy link
Member Author

steiza commented Sep 27, 2023

Do any clients support this yet?

The just-released https://github.com/github/sigstore-go does! As of https://github.com/github/sigstore-go/pull/4.

@woodruffw
Copy link
Member

Awesome! That gives us the design impetus to copy --trusted-root for sigstore-python as well; I'll file a tracking issue 🙂

@loosebazooka
Copy link
Member

I think we can plumb this into Java relatively painlessly.

@steiza steiza force-pushed the optional_trust_root branch from 5c46013 to efdaf92 Compare December 5, 2023 15:50
Previously the tests assumed the public-good trust root, but supplying a
custom trust root lets us exercise additional failure paths, without
having to compromise the public-good service.

Signed-off-by: Zach Steindler <[email protected]>
I initially thought it was needed, but it didn't end up getting used!

Signed-off-by: Zach Steindler <[email protected]>
As requested in the sigstore-clients meetings. Users should be pinning
to release, and we will put in the release notes how to disable this new
test.

Signed-off-by: Zach Steindler <[email protected]>
…d-root

Also rebase onto main

Signed-off-by: Zach Steindler <[email protected]>
@steiza steiza force-pushed the optional_trust_root branch from efdaf92 to 6757257 Compare December 5, 2023 16:16
Signed-off-by: Zach Steindler <[email protected]>
@woodruffw woodruffw added enhancement New feature or request component:cicd CI/CD component:tests Unit and integration tests labels Dec 5, 2023
@woodruffw woodruffw merged commit 1949f40 into sigstore:main Dec 5, 2023
3 checks passed
@woodruffw
Copy link
Member

Thanks @steiza!

@woodruffw
Copy link
Member

xref sigstore/sigstore-python#821 for changes needed to sigstore-python's conformance runner.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component:cicd CI/CD component:tests Unit and integration tests enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants