diff --git a/workflow/controller/operator.go b/workflow/controller/operator.go index ca6ec63a7474..f471921b9865 100644 --- a/workflow/controller/operator.go +++ b/workflow/controller/operator.go @@ -2190,7 +2190,8 @@ func (woc *wfOperationCtx) getPodByNode(node *wfv1.NodeStatus) (*apiv1.Pod, erro if node.Type != wfv1.NodeTypePod { return nil, fmt.Errorf("Expected node type %s, got %s", wfv1.NodeTypePod, node.Type) } - return woc.controller.getPod(woc.wf.GetNamespace(), node.ID) + podName := wfutil.PodName(woc.wf.Name, node.Name, node.TemplateName, node.ID) + return woc.controller.getPod(woc.wf.GetNamespace(), podName) } func (woc *wfOperationCtx) recordNodePhaseEvent(node *wfv1.NodeStatus) { diff --git a/workflow/controller/operator_test.go b/workflow/controller/operator_test.go index 860677125089..d7538a1c2b41 100644 --- a/workflow/controller/operator_test.go +++ b/workflow/controller/operator_test.go @@ -3519,7 +3519,6 @@ func getEvents(controller *WorkflowController, num int) []string { } func TestGetPodByNode(t *testing.T) { - t.Skip("See https://github.com/argoproj/argo-workflows/issues/6458") workflowText := ` metadata: name: dag-events @@ -3543,6 +3542,7 @@ spec: woc := newWorkflowOperationCtx(wf, controller) createRunningPods(ctx, woc) woc.operate(ctx) + time.Sleep(time.Second) // Parent dag node has no pod parentNode := woc.wf.GetNodeByName("dag-events") pod, err := woc.getPodByNode(parentNode)