如何在Argo WorkflowTemplate中条件性添加容器参数项?
Argo WorkflowTemplate 条件添加容器参数方案
针对需求,可通过Argo Workflows的模板条件渲染语法,直接在args数组中根据参数值动态添加条目,避免生成空字符串。具体实现如下:
修改后的WorkflowTemplate YAML片段:
# yaml-language-server: $schema=https://raw.githubusercontent.com/argoproj/argo-workflows/v3.5.5/api/jsonschema/schema.json apiVersion: argoproj.io/v1alpha1 kind: WorkflowTemplate spec: arguments: parameters: - name: create_foo value: 'true' enum: - 'false' - 'true' templates: - name: your-template-name container: args: - '--bar' # 仅当create_foo为'true'时添加--foo参数 {{ if eq .workflow.parameters.create_foo "true" }} - '--foo' {{ end }}
说明
- 使用Argo的
{{ if }}条件判断语法直接包裹整个数组条目:当create_foo参数值为'true'时,会向args数组中添加--foo条目;条件不满足时,该条目完全不会被渲染,不会产生空字符串。 - 注意保持YAML缩进正确,条件块内的
- '--foo'需和其他args条目缩进一致。
内容的提问来源于stack exchange,提问作者l0b0
相关产品推荐
相关产品推荐

