From 7ed3c92286374dab393284bc6c69c93d17191600 Mon Sep 17 00:00:00 2001 From: Jerop Date: Fri, 24 Jun 2022 10:52:46 -0400 Subject: [PATCH] Get Names of TaskRuns from ChildReferences only In https://github.com/tektoncd/community/pull/736, we decided that `Matrix` will use `ChildReferences` only. Therefore, it is unnecessary to check the `TaskRuns` field of `PipelineRun` status when getting the names of `TaskRuns` for matrixed `PipelineTasks`. Related PR: https://github.com/tektoncd/pipeline/pull/5019 --- .../resources/pipelinerunresolution.go | 20 +++---------------- .../resources/pipelinerunresolution_test.go | 16 +-------------- 2 files changed, 4 insertions(+), 32 deletions(-) diff --git a/pkg/reconciler/pipelinerun/resources/pipelinerunresolution.go b/pkg/reconciler/pipelinerun/resources/pipelinerunresolution.go index 1a6c852707d..6c4b54a86e5 100644 --- a/pkg/reconciler/pipelinerun/resources/pipelinerunresolution.go +++ b/pkg/reconciler/pipelinerun/resources/pipelinerunresolution.go @@ -522,7 +522,7 @@ func ResolvePipelineTask( } rpt.Run = run case rpt.IsMatrixed(): - rpt.TaskRunNames = GetNamesOfTaskRuns(pipelineRun.Status.TaskRuns, pipelineRun.Status.ChildReferences, pipelineTask.Name, pipelineRun.Name, pipelineTask.GetMatrixCombinationsCount()) + rpt.TaskRunNames = GetNamesOfTaskRuns(pipelineRun.Status.ChildReferences, pipelineTask.Name, pipelineRun.Name, pipelineTask.GetMatrixCombinationsCount()) for _, taskRunName := range rpt.TaskRunNames { if err := rpt.resolvePipelineRunTaskWithTaskRun(ctx, taskRunName, getTask, getTaskRun, pipelineTask, providedResources); err != nil { return nil, err @@ -648,12 +648,8 @@ func GetTaskRunName(taskRunsStatus map[string]*v1beta1.PipelineRunTaskRunStatus, } // GetNamesOfTaskRuns should return unique names for `TaskRuns` if one has not already been defined, and the existing one otherwise. -func GetNamesOfTaskRuns(taskRunsStatus map[string]*v1beta1.PipelineRunTaskRunStatus, childRefs []v1beta1.ChildStatusReference, ptName, prName string, combinationCount int) []string { - var taskRunNames []string - if taskRunNames = getTaskRunNamesFromChildRefs(childRefs, ptName); taskRunNames != nil { - return taskRunNames - } - if taskRunNames = getTaskRunNamesFromTaskRunsStatus(taskRunsStatus, ptName); taskRunNames != nil { +func GetNamesOfTaskRuns(childRefs []v1beta1.ChildStatusReference, ptName, prName string, combinationCount int) []string { + if taskRunNames := getTaskRunNamesFromChildRefs(childRefs, ptName); taskRunNames != nil { return taskRunNames } return getNewTaskRunNames(ptName, prName, combinationCount) @@ -669,16 +665,6 @@ func getTaskRunNamesFromChildRefs(childRefs []v1beta1.ChildStatusReference, ptNa return taskRunNames } -func getTaskRunNamesFromTaskRunsStatus(taskRunsStatus map[string]*v1beta1.PipelineRunTaskRunStatus, ptName string) []string { - var taskRunNames []string - for k, v := range taskRunsStatus { - if v.PipelineTaskName == ptName { - taskRunNames = append(taskRunNames, k) - } - } - return taskRunNames -} - func getNewTaskRunNames(ptName, prName string, combinationCount int) []string { var taskRunNames []string for i := 0; i < combinationCount; i++ { diff --git a/pkg/reconciler/pipelinerun/resources/pipelinerunresolution_test.go b/pkg/reconciler/pipelinerun/resources/pipelinerunresolution_test.go index 7b565a3ee5a..095146b8830 100644 --- a/pkg/reconciler/pipelinerun/resources/pipelinerunresolution_test.go +++ b/pkg/reconciler/pipelinerun/resources/pipelinerunresolution_test.go @@ -2831,15 +2831,6 @@ func TestGetTaskRunName(t *testing.T) { func TestGetNamesOfTaskRuns(t *testing.T) { prName := "mypipelinerun" - taskRunsStatus := map[string]*v1beta1.PipelineRunTaskRunStatus{ - "mypipelinerun-mytask-0": { - PipelineTaskName: "mytask", - }, - "mypipelinerun-mytask-1": { - PipelineTaskName: "mytask", - }, - } - childRefs := []v1beta1.ChildStatusReference{{ TypeMeta: runtime.TypeMeta{Kind: "TaskRun"}, Name: "mypipelinerun-mytask-0", @@ -2892,12 +2883,7 @@ func TestGetNamesOfTaskRuns(t *testing.T) { if tc.prName != "" { testPrName = tc.prName } - namesOfTaskRunsFromTaskRunsStatus := GetNamesOfTaskRuns(taskRunsStatus, nil, tc.ptName, testPrName, 2) - sort.Strings(namesOfTaskRunsFromTaskRunsStatus) - if d := cmp.Diff(tc.wantTrNames, namesOfTaskRunsFromTaskRunsStatus); d != "" { - t.Errorf("GetTaskRunName: %s", diff.PrintWantGot(d)) - } - namesOfTaskRunsFromChildRefs := GetNamesOfTaskRuns(nil, childRefs, tc.ptName, testPrName, 2) + namesOfTaskRunsFromChildRefs := GetNamesOfTaskRuns(childRefs, tc.ptName, testPrName, 2) sort.Strings(namesOfTaskRunsFromChildRefs) if d := cmp.Diff(tc.wantTrNames, namesOfTaskRunsFromChildRefs); d != "" { t.Errorf("GetTaskRunName: %s", diff.PrintWantGot(d))