Skip to content

Commit

Permalink
fix: avoid nil pointer dereference. Fixes argoproj#9269 (argoproj#9787)
Browse files Browse the repository at this point in the history
Signed-off-by: mikutas <23391543+mikutas@users.noreply.github.com>
Signed-off-by: juchao <juchao@coscene.io>
  • Loading branch information
mikutas authored and juchaosong committed Nov 3, 2022
1 parent d9e3e02 commit 2d4c075
Showing 1 changed file with 3 additions and 4 deletions.
7 changes: 3 additions & 4 deletions workflow/controller/operator.go
Original file line number Diff line number Diff line change
Expand Up @@ -572,9 +572,6 @@ func (woc *wfOperationCtx) setGlobalParameters(executionParameters wfv1.Argument
woc.globalParams[common.GlobalVarWorkflowParameters] = string(workflowParameters)
}
for _, param := range executionParameters.Parameters {
if param.Value == nil && param.ValueFrom == nil {
return fmt.Errorf("either value or valueFrom must be specified in order to set global parameter %s", param.Name)
}
if param.ValueFrom != nil && param.ValueFrom.ConfigMapKeyRef != nil {
cmValue, err := common.GetConfigMapValue(woc.controller.configMapInformer, woc.wf.ObjectMeta.Namespace, param.ValueFrom.ConfigMapKeyRef.Name, param.ValueFrom.ConfigMapKeyRef.Key)
if err != nil {
Expand All @@ -587,8 +584,10 @@ func (woc *wfOperationCtx) setGlobalParameters(executionParameters wfv1.Argument
} else {
woc.globalParams["workflow.parameters."+param.Name] = cmValue
}
} else {
} else if param.Value != nil {
woc.globalParams["workflow.parameters."+param.Name] = param.Value.String()
} else {
return fmt.Errorf("either value or valueFrom must be specified in order to set global parameter %s", param.Name)
}
}
if woc.wf.Status.Outputs != nil {
Expand Down

0 comments on commit 2d4c075

Please sign in to comment.