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

Refactor PipelineRun and TaskRun Cancel Error Based on Condition Status #1189

Merged
merged 2 commits into from
Oct 20, 2020
Merged

Refactor PipelineRun and TaskRun Cancel Error Based on Condition Status #1189

merged 2 commits into from
Oct 20, 2020

Conversation

danielhelfand
Copy link
Member

Closes #1188

Instead of validating based on the result of formatted.Condition, the validation should check whether the condition status of the run is ConditionUnknown, which indicates the PipelineRun or TaskRun is still running and can be cancelled. There needed to be some minor tweaks to unit tests which had condition statuses for running that were incorrect.

Submitter Checklist

These are the criteria that every PR should meet, please check them off as you
review them:

  • Includes tests (if functionality changed/added)
  • Run the code checkers with make check
  • Regenerate the manpages, docs and go formatting with make generated
  • Commit messages follow commit message best practices

Release Notes

NONE

@tekton-robot tekton-robot added the release-note-none Denotes a PR that doesnt merit a release note. label Sep 28, 2020
@tekton-robot tekton-robot added the size/L Denotes a PR that changes 100-499 lines, ignoring generated files. label Sep 28, 2020
@tekton-robot
Copy link
Contributor

The following is the coverage report on the affected files.
Say /test pull-tekton-cli-go-coverage to re-run this coverage report

File Old Coverage New Coverage Delta
pkg/cmd/pipelinerun/cancel.go 95.0% 95.2% 0.2
pkg/cmd/taskrun/cancel.go 94.7% 95.0% 0.3

Status: duckv1beta1.Status{
Conditions: duckv1beta1.Conditions{
{
Status: corev1.ConditionUnknown,
Copy link
Member Author

Choose a reason for hiding this comment

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

This should be changed to Unknown since it needs to make it through the validation of whether or not the TaskRun has finished or not.

@@ -311,7 +322,7 @@ func TestTaskRunCancel_v1beta1(t *testing.T) {
Status: duckv1beta1.Status{
Conditions: duckv1beta1.Conditions{
{
Status: corev1.ConditionTrue,
Status: corev1.ConditionUnknown,
Copy link
Member Author

Choose a reason for hiding this comment

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

This should be changed to Unknown since it needs to make it through the validation of whether or not the TaskRun has finished or not.

@@ -242,7 +253,7 @@ func TestTaskRunCancel_v1beta1(t *testing.T) {
Status: duckv1beta1.Status{
Conditions: duckv1beta1.Conditions{
{
Status: corev1.ConditionTrue,
Status: corev1.ConditionUnknown,
Copy link
Member Author

Choose a reason for hiding this comment

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

This should be changed since the TaskRun is in a running state, so its Condition status should be unknown.

Status: duckv1beta1.Status{
Conditions: duckv1beta1.Conditions{
{
Status: corev1.ConditionUnknown,
Copy link
Member Author

Choose a reason for hiding this comment

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

This should be changed to Unknown since it needs to make it through the validation of whether or not the PipelineRun has finished or not.

@@ -369,6 +411,16 @@ func Test_cancel_pipelinerun_v1beta1(t *testing.T) {
},
},
},
Status: v1alpha1.PipelineRunStatus{
Copy link
Member Author

Choose a reason for hiding this comment

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

Adding status here since the test is for a successful cancel, which means the PipelineRun should be in a running state.

@danielhelfand
Copy link
Member Author

/test pull-tekton-cli-integration-tests

@danielhelfand
Copy link
Member Author

/test pull-tekton-cli-integration-tests

Copy link
Contributor

@piyush-garg piyush-garg left a comment

Choose a reason for hiding this comment

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

/lgtm

@tekton-robot tekton-robot added the lgtm Indicates that a PR is ready to be merged. label Oct 20, 2020
Copy link
Contributor

@pradeepitm12 pradeepitm12 left a comment

Choose a reason for hiding this comment

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

/lgtm

@tekton-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: pradeepitm12

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@tekton-robot tekton-robot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Oct 20, 2020
@tekton-robot tekton-robot merged commit 2d3875d into tektoncd:master Oct 20, 2020
piyush-garg added a commit that referenced this pull request Oct 21, 2020
#1194 | [Daniel Helfand] update README to v0.13.0 | 2020/09/30-22:18
#1196 | [Chmouel Boudjnah] Update OSX instruction to install from brew 🍻 | 2020/10/02-11:36
#1197 | [Daniel Helfand] reorganize release process docs and add details | 2020/10/07-07:26
#1192 | [Daniel Helfand] add eventlistener logs command | 2020/10/07-08:00
#1198 | [Matt Moore] Bump Knative/K8s dependencies | 2020/10/08-00:34
#1201 | [Daniel Helfand] avoid use of previous TaskRunSpecStatus and PipelineRunSpecStatus | 2020/10/13-17:32
#1205 | [Daniel Helfand] remove assertions to help with debugging eventlistener e2e failures | 2020/10/20-07:27
#1207 | [Piyush Garg] tkn pr describe failing in pr with conditions | 2020/10/20-08:57
#1189 | [Daniel Helfand] refactor pipelinerun and taskrun cancel err based on condition status | 2020/10/20-09:15
#1189 | [Daniel Helfand] add pipelinerun and taskrun cancel e2e tests | 2020/10/20-09:15
null | [Daniel Helfand] common way of referring to tekton resources in user facing messages: EventListener | 2020/10/21-07:21
null | [Daniel Helfand] common way of referring to tekton resources in user facing messages: TriggerBinding | 2020/10/21-08:00

Signed-off-by: Piyush Garg <pgarg@redhat.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. lgtm Indicates that a PR is ready to be merged. release-note-none Denotes a PR that doesnt merit a release note. size/L Denotes a PR that changes 100-499 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Refactor PipelineRun and TaskRun Cancel to Handle Cancelling Already Completed Run Using Status
4 participants