volcano.sh/volcano@v1.9.0/example/integrations/argo/20-job-DAG.yaml (about) 1 apiVersion: argoproj.io/v1alpha1 2 kind: Workflow 3 metadata: 4 generateName: volcano-dag-job- 5 spec: 6 entrypoint: volcano-dag-job 7 serviceAccountName: argo 8 templates: 9 - name: volcano-dag-job 10 dag: 11 tasks: 12 - name: A 13 template: hello-tmpl 14 arguments: 15 parameters: [{name: message, value: A}, {name: task, value: aaa}] 16 - name: B 17 template: hello-tmpl 18 dependencies: [A] 19 arguments: 20 parameters: [{name: message, value: B}, {name: task, value: bbb}] 21 - name: C 22 template: hello-tmpl 23 dependencies: [A] 24 arguments: 25 parameters: [{name: message, value: C}, {name: task, value: ccc}] 26 - name: D 27 template: hello-tmpl 28 dependencies: [B, C] 29 arguments: 30 parameters: [{name: message, value: D}, {name: task, value: ddd}] 31 - name: hello-tmpl 32 inputs: 33 parameters: 34 - name: message 35 - name: task 36 resource: 37 action: create 38 successCondition: status.state.phase = Completed 39 failureCondition: status.state.phase = Failed 40 manifest: | 41 apiVersion: batch.volcano.sh/v1alpha1 42 kind: Job 43 metadata: 44 generateName: dag-job-{{inputs.parameters.task}}- 45 ownerReferences: 46 - apiVersion: argoproj.io/v1alpha1 47 blockOwnerDeletion: true 48 kind: Workflow 49 name: "{{workflow.name}}" 50 uid: "{{workflow.uid}}" 51 spec: 52 minAvailable: 1 53 schedulerName: volcano 54 policies: 55 - event: PodEvicted 56 action: RestartJob 57 plugins: 58 ssh: [] 59 env: [] 60 svc: [] 61 maxRetry: 1 62 queue: default 63 tasks: 64 - replicas: 2 65 name: "default-hello" 66 template: 67 metadata: 68 name: helloworld 69 spec: 70 containers: 71 - image: docker/whalesay 72 imagePullPolicy: IfNotPresent 73 command: [cowsay] 74 args: ["{{inputs.parameters.message}}"] 75 name: hello 76 resources: 77 requests: 78 cpu: "100m" 79 restartPolicy: OnFailure