-
Notifications
You must be signed in to change notification settings - Fork 1.8k
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
PipelineRun Cancellation is not working #2337
Comments
/kind bug |
@sbwsg I checked the code: pipeline/pkg/reconciler/pipelinerun/cancel.go Lines 48 to 54 in 8a059fe
It update the |
Ahhh I see. In order to make this work the TaskRun would have to be re-fetched after
This is a good question. If a TaskRun is put into a cancelled state I would expect that the TaskRun reconciler would be responsible for this. |
Actually now I'm confused - I would expect the PipelineRun reconciler to be responsible for putting each TaskRun into a Cancelled state. But I would expect the TaskRun reconciler to perform any non-Status |
Sidenote: I find it weird that any PRs are passing in Pipelines right now given this... |
If you cancel a PipelineRun, the pipelinerun reconcilier needs to update the "wanted" status of all TaskRuns to cancel.. So for we the |
I'm not sure, but I think the |
@vincent-pli yep, the |
I've been trying to fix this today but haven't made very much progress. I think I've managed to reduce the number of failures but I cannot get this test to pass consistently 100% of the time. I've opened a PR with my work-in-progress changes. If anyone else has an opportunity to look at it I'd be very appreciative, otherwise I will pick it up again on Monday. |
Now that #2369 is closed I'm going to call this done. Let's reopen if it starts appearing again. |
Expected Behavior
Cancelling a PipelineRun should result in its TaskRuns being put into a cancelled state.
Our integration test,
test/cancel_test.go
should pass.Actual Behavior
Cancelling a PipelineRun no longer seems to cancel the underlying TaskRun. It appears that each attempt to cancel the TaskRuns hit errors like this:
The e2e
test/cancel_test.go
fails.Steps to Reproduce the Problem
go test -v -count=1 -tags=e2e -timeout=20m -run ".*PipelineRunCancel.*" ./test
Additional Info
Kubernetes version:
Output of
kubectl version
:I've tested against a 1.18 server and a 1.15 server. Both exhibit the same issue.
Latest master
The text was updated successfully, but these errors were encountered: