首页 > 解决方案 > 避免在 argo 资源中复制粘贴清单

问题描述

假设我有一个现有的清单

apiVersion: batch/v1
kind: Job
metadata:
   generateName: pi-job-
spec:
   template:
      metadata:
         name: pi
      spec:
         containers:
         - name: pi
           image: perl
           command: ["perl",  "-Mbignum=bpi", "-wle", "print bpi(2000)"]
         restartPolicy: Never
    backoffLimit: 4

我想将其用作 argo 工作流程的一部分

apiVersion: argoproj.io/v1alpha1
kind: Workflow
metadata:
  generateName: k8s-jobs-
spec:
  entrypoint: pi-tmpl
  templates:
  - name: pi-tmpl
    resource:                   
      action: create            
      successCondition: status.succeeded > 0
      failureCondition: status.failed > 3
      manifest: |              
        apiVersion: batch/v1
        kind: Job
        metadata:
          generateName: pi-job-
        spec:
          template:
            metadata:
              name: pi
            spec:
              containers:
              - name: pi
                image: perl
                command: ["perl",  "-Mbignum=bpi", "-wle", "print bpi(2000)"]
              restartPolicy: Never
          backoffLimit: 4

有没有办法避免在第二个清单中复制粘贴第一个清单?或者是否可以使用 helm 或 kustomize 等工具?

标签: argo-workflows

解决方案


推荐阅读