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

Experimental: Use SLSA generic workflow for generating provenances #3166

Merged
merged 3 commits into from
Aug 25, 2022

Conversation

rbehjati
Copy link
Contributor

@rbehjati rbehjati commented Aug 22, 2022

This PR adds a new job to the provenance workflow to generate a signed provenance using the generic SLSA generator (based on the instructions for using generator_generic_slsa3). This is in an experimental state, since it is not possible to trigger the generator on pull-request events. I have added workflow_dispatch as a trigger for the provenance workflow. Once this is merged it is possible to experiment with provenance generation.

If that is successful, I'll cleanup and complete the added step.

For more context also see: slsa-framework/slsa-github-generator#731

Ref #2626.

@rbehjati rbehjati changed the title Experimental: Use SLSA generic workflow for generating provenacnes Experimental: Use SLSA generic workflow for generating provenances Aug 23, 2022
@rbehjati rbehjati marked this pull request as ready for review August 25, 2022 10:35
@rbehjati rbehjati requested a review from a team as a code owner August 25, 2022 10:35
@rbehjati rbehjati requested review from conradgrobler, mariaschett and a team and removed request for a team August 25, 2022 10:35
Copy link
Contributor

@mariaschett mariaschett left a comment

Choose a reason for hiding this comment

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

Very nice!

base64-subjects: '${{ needs.build_provenance.outputs.hashes }}'
# Set a custom name for the provenance attestation.
attestation-name: 'oak_functions_loader_base.intoto.jsonl'
# Upload provenance to a new release
Copy link
Contributor

Choose a reason for hiding this comment

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

Out of curiousity: Where does this upload to?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

It is GitHub's internal storage or something. These files get attached to the action. Similar to the SARIF file in this action: https://github.com/project-oak/oak/actions/runs/2920567892.

@@ -18,6 +21,7 @@ jobs:
OAK_FUNCTIONS_BASE_PATH: './target/x86_64-unknown-linux-musl/release/oak_functions_loader_base'
OAK_FUNCTIONS_UNSAFE_PATH: './target/x86_64-unknown-linux-musl/release/oak_functions_loader_unsafe'
OAK_BAREMETAL_CROSVM_PATH: './experimental/oak_baremetal_app_crosvm/target/x86_64-unknown-none/release/oak_baremetal_app_crosvm'
OAK_FUNCTIONS_RELEASE_PATH: './target/x86_64-unknown-linux-musl/release'
Copy link
Contributor

Choose a reason for hiding this comment

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

We use the we could use the OAK_FUNCTIONS_RELEASE_PATH in OAK_FUNCTIONS_BASE_PATH and OAK_FUNCTIONS_UNSAFE_PATH.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Exactly. I thought I'd fix this after I am done with the experiment :)

@rbehjati rbehjati merged commit 98b4931 into project-oak:main Aug 25, 2022
@github-actions
Copy link

Reproducibility Index:

cae4b39dfc497563373cf3c29b16b947581352d816b3c29b01eac11a8e5126e5  ./target/x86_64-unknown-linux-musl/release/oak_functions_loader_base
25faffcd383b4407a956bf321bf2f21da6c3a7bfe3f610ae59600d3d8ba2af94  ./target/x86_64-unknown-linux-musl/release/oak_functions_loader_unsafe
04e176c260d2b48d7f244fd39e2e8c0d7987ed26cf2bc98f2a3a4afae539284b  ./experimental/oak_baremetal_app_crosvm/target/x86_64-unknown-none/release/oak_baremetal_app_crosvm

Reproducibility Index diff:

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.

4 participants