Argo Workflows 4
1.简单的例子
apiVersion: argoproj.io/v1alpha1
kind: Workflow
metadata:
generateName: container-
spec:
entrypoint: main
templates:
- name: main
container:
image: docker/whalesay
command: [cowsay]
args: ["hello world"]
创建之后的效果
可使用的标签取决于模板类型,您可以使用许多全局标签,例如 {{workflow.name}}
apiVersion: argoproj.io/v1alpha1
kind: Workflow
metadata:
generateName: container-
spec:
entrypoint: main
templates:
- name: main
container:
image: docker/whalesay
command: [cowsay]
args: ["hello {{workflow.name}}" ]
效果
2.DAG模板例子
apiVersion: argoproj.io/v1alpha1
kind: Workflow
metadata:
generateName: dag-
spec:
entrypoint: main
templates:
- name: main
dag:
tasks:
- name: a
template: whalesay
- name: b
template: whalesay
dependencies:
- a
- name: whalesay
container:
image: docker/whalesay
command: [cowsay]
args: ["hello world"]
DAG有两个任务:“a”和“B”。两者都运行“whalesay”模板,但由于“B”依赖于“a”,因此只有在“a”成功完成后,它才会启动。
循环
apiVersion: argoproj.io/v1alpha1
kind: Workflow
metadata:
generateName: with-items-
spec:
entrypoint: main
templates:
- name: main
dag:
tasks:
- name: print-message
template: whalesay
arguments:
parameters:
- name: message
value: "{{item}}"
withItems:
- "hello world"
- "goodbye world"
- name: whalesay
inputs:
parameters:
- name: message
container:
image: docker/whalesay
command: [cowsay]
args: ["{{inputs.parameters.message}}"]
循环带序列
apiVersion: argoproj.io/v1alpha1
kind: Workflow
metadata:
generateName: with-sequence-
spec:
entrypoint: main
templates:
- name: main
dag:
tasks:
- name: print-message
template: whalesay
arguments:
parameters:
- name: message
value: "{{item}}"
withSequence:
count: 5
- name: whalesay
inputs:
parameters:
- name: message
container:
image: docker/whalesay
command: [cowsay]
args: ["{{inputs.parameters.message}}"]
需要在某件事完成后执行一个任务,可以使用退出处理程序。使用 onExit
指定退出处理程序:
apiVersion: argoproj.io/v1alpha1
kind: Workflow
metadata:
generateName: exit-handler-
spec:
entrypoint: main
templates:
- name: main
dag:
tasks:
- name: a
template: whalesay
onExit: tidy-up
- name: whalesay
container:
image: docker/whalesay
command: [cowsay]
- name: tidy-up
container:
image: docker/whalesay
command: [cowsay]
args: ["tidy up!"]
License:
杭州小单纯