-
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
Incorrect PipelineRun status "ResolvingTaskRef" #5673
Comments
/assign |
I think there are two things that need to be resolved. |
To resolve the first problem I think there are two points that we need to think about. First, the invalid taskref in Second, when failing to create Here is a simple WIP PR that demonstrates what I want to do. If this is fine I will complete this PR. Looking forward to your suggestions. @lbernick @abayer |
SGTM! I saw you already have a PR out; would you mind modifying it so it tackles only this issue first, and we can address the second issue separately?
I think we need to change the TaskRun creation logic so the PipelineRun controller isn't attempting to create an invalid TaskRun. I'm a bit confused because it looks like the resolution happens before the TaskRun is created, and maybe we should instead create the TaskRun and allow the TaskRun controller to handle resolving the TaskRef. I agree that if the PipelineRun controller fails to create the TaskRun, the PipelineRun should be marked as failed. |
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. |
Yes, I was able to reproduce this today, thanks for checking! |
Expected Behavior
If a pipeline task ref is invalid, the Pipeline will be rejected by the admission webhook. In addition, if remote resolution completes successfully, the PipelineRun status should not be "ResolvingTaskRef". Lastly, the validation error
expected exactly one, got both: spec.taskRef.name, spec.taskRef.params, spec.taskRef.resolver".
is confusing since there are three things, and you should be able to specify resolver + paramsActual Behavior
Remote resolution succeeds. PipelineRun is marked as Running(ResolvingTaskRef), but I see the k8s event " PipelineRun Failed to create TaskRun "clone-build-push-run-fetch-source": admission webhook "validation.webhook.pipeline.tekton.dev" denied the request: validation failed: expected exactly one, got both: spec.taskRef.name, spec.taskRef.params, spec.taskRef.resolver".
Steps to Reproduce the Problem
Pipeline:
PipelineRun:
PR status:
The resolutionrequest has successfully resolved:
Additional Info
The text was updated successfully, but these errors were encountered: