From 16c4970e78c5f15ced290b7ae7d330e6c6252467 Mon Sep 17 00:00:00 2001 From: Ruin09 Date: Tue, 16 Jan 2024 15:36:19 +0900 Subject: [PATCH] fix: Fixed mutex with withSequence in http template broken. Fixes #12018 (#12176) Signed-off-by: shmruin Signed-off-by: Isitha Subasinghe --- pkg/apis/workflow/v1alpha1/workflow_types.go | 2 ++ workflow/controller/http_template.go | 2 ++ 2 files changed, 4 insertions(+) diff --git a/pkg/apis/workflow/v1alpha1/workflow_types.go b/pkg/apis/workflow/v1alpha1/workflow_types.go index 5a7c3cf60536..3d29464e67fe 100644 --- a/pkg/apis/workflow/v1alpha1/workflow_types.go +++ b/pkg/apis/workflow/v1alpha1/workflow_types.go @@ -3015,6 +3015,8 @@ func (tmpl *Template) GetNodeType() NodeType { return NodeTypeSteps case TemplateTypeSuspend: return NodeTypeSuspend + case TemplateTypeHTTP: + return NodeTypeHTTP case TemplateTypePlugin: return NodeTypePlugin } diff --git a/workflow/controller/http_template.go b/workflow/controller/http_template.go index 0bbd9fcbfde2..de6a7048c1c6 100644 --- a/workflow/controller/http_template.go +++ b/workflow/controller/http_template.go @@ -8,6 +8,8 @@ func (woc *wfOperationCtx) executeHTTPTemplate(nodeName string, templateScope st node, err := woc.wf.GetNodeByName(nodeName) if err != nil { node = woc.initializeExecutableNode(nodeName, wfv1.NodeTypeHTTP, templateScope, tmpl, orgTmpl, opts.boundaryID, wfv1.NodePending, opts.nodeFlag) + } + if !node.Fulfilled() { woc.taskSet[node.ID] = *tmpl } return node