From c50ad3e85a50ca63fabd53891f5b282465f2ea87 Mon Sep 17 00:00:00 2001 From: Dan Lorenc Date: Thu, 27 Jun 2019 09:12:54 +0800 Subject: [PATCH] Add the imageID for each step to the TaskRun.Spec.Status object. This allows users to trace the exact steps (including digest) used in each TaskRun. This information is already available on a Pod, but we need to assume completed Pods will be GC'ed and not available long after the run is complete. --- pkg/apis/pipeline/v1alpha1/taskrun_types.go | 3 ++- pkg/status/taskrunpod.go | 1 + pkg/status/taskrunpod_test.go | 3 ++- 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/pkg/apis/pipeline/v1alpha1/taskrun_types.go b/pkg/apis/pipeline/v1alpha1/taskrun_types.go index ca1c51a2511..8edf1a5b5c3 100644 --- a/pkg/apis/pipeline/v1alpha1/taskrun_types.go +++ b/pkg/apis/pipeline/v1alpha1/taskrun_types.go @@ -165,7 +165,8 @@ func (tr *TaskRunStatus) SetCondition(newCond *apis.Condition) { // StepState reports the results of running a step in the Task. type StepState struct { corev1.ContainerState - Name string `json:"name,omitempty"` + Name string `json:"name,omitempty"` + ImageID string `json:"imageID,omitempty"` } // +genclient diff --git a/pkg/status/taskrunpod.go b/pkg/status/taskrunpod.go index f698d2a399a..c992e4364a4 100644 --- a/pkg/status/taskrunpod.go +++ b/pkg/status/taskrunpod.go @@ -36,6 +36,7 @@ func UpdateStatusFromPod(taskRun *v1alpha1.TaskRun, pod *corev1.Pod, resourceLis taskRun.Status.Steps = append(taskRun.Status.Steps, v1alpha1.StepState{ ContainerState: *s.State.DeepCopy(), Name: resources.TrimContainerNamePrefix(s.Name), + ImageID: s.ImageID, }) } } diff --git a/pkg/status/taskrunpod_test.go b/pkg/status/taskrunpod_test.go index 031a0bad2a5..9ecf59e8c20 100644 --- a/pkg/status/taskrunpod_test.go +++ b/pkg/status/taskrunpod_test.go @@ -74,7 +74,8 @@ func TestUpdateStatusFromPod(t *testing.T) { Terminated: &corev1.ContainerStateTerminated{ ExitCode: 123, }}, - Name: "state-name", + Name: "state-name", + ImageID: "image-id", }}, }, }, {