使用Jinja模板与Argo工作流控制流程



我有一个与Argo Workflow&JINJA模板:

我知道Argo工作流支持以下表达式的JINJA模板:{{…}},但是Argo工作流是否也支持JINJA模板控制结构,如:{%…%}。。。。。。。。还是不?

我正在处理一个用例,我需要在"单一"工作流模板中添加以下语句

{% if inputs.parameters.resources.gpu == 1 %}
nvidia.com/gpu: {{ inputs.parameters.resources.gpu }}
{% end %}

Argo工作流当前不支持Jinja控制结构。

如果您可以处理一些代码重复,一种解决方法是使用条件来实现gpu == 1gpu != 1分支(作为不同的步骤(。

您也可以使用podSpecPatch。它是应用于pod规范的补丁的JSON字符串表示。对于JSON中的简单变体,您可能会使用Jinja字符串模板。对于更复杂的突变,可以在一个步骤中生成JSON,然后将其用作输出参数。

相关内容

  • 没有找到相关文章

最新更新