-
Notifications
You must be signed in to change notification settings - Fork 133
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
Chains creates attestation for non-successful TaskRuns #484
Comments
This might be a feature? For the same reason I don't think it's a bad idea to generate attestations for failed TaskRuns, since an attestation is just a signed statement saying that something happened. Let me know what you think! Do have a case in mind where publishing attestations for failed TaskRun might be problematic? |
In the case of a non-successful TaskRun, its attestation will always in include a The current TaskRun attestation also has no indication that the task actually failed (at least I can't tell). Here's an example from a failed git clone task:
With TEP-84, an attestation for a non-successful PipelineRun might be of some use, since it would cover the non-criticial step scenario you explained. |
So the current expectation is that only Successful TaskRuns would go through the Chains workflow. I thought we take care of that here -- chains/pkg/reconciler/taskrun/taskrun.go Lines 51 to 54 in a86f18b
but if it's not working then this is currently a bug! As @wlynch mentioned, there might be use cases for generating attestations for failed runs but we haven't really considered that as of yet 😄 |
Some of this might be wrapped up in tektoncd/pipeline#3749 (ensuring results are published from failed Runs). I guess a related question here is is it worth publishing attestations with no subjects? And if we consider the TaskRun itself to be an artifact, should this be listed as a subject? 🤔 |
This makes me wonder if we can use another field we can generate not at the end of a Run. This would be similar to the discussion about adding a new field to Run status to capture input/output artifacts to make this more discoverable / extensible by chains |
Issues go stale after 90d of inactivity. /lifecycle stale Send feedback to tektoncd/plumbing. |
Stale issues rot after 30d of inactivity. /lifecycle rotten Send feedback to tektoncd/plumbing. |
Rotten issues close after 30d of inactivity. /close Send feedback to tektoncd/plumbing. |
@tekton-robot: Closing this issue. In response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
/reopen |
Expected Behavior
The Tekton Chains controller should only create TaskRun attestations if the TaskRun succeeds.
Actual Behavior
The controller creates TaskRun attestations regardless of the final state of the TaskRun.
Steps to Reproduce the Problem
It's easier to verify this behavior when the transparency log is enabled. The steps below assume this has been done.
revision
value that does not exist:"chains.tekton.dev/transparency"
. This should not happen.Additional Info
The text was updated successfully, but these errors were encountered: