Kubernetes Argo 将参数提交到步骤中
Kubernetes Argo submit parameter into steps
我正在按照 Argo 上的示例进行操作 GitHub 但是当我将模板移动到步骤中时,我无法更改消息的参数。
apiVersion: argoproj.io/v1alpha1
kind: Workflow
metadata:
generateName: hello-world-parameters-
spec:
# invoke the whalesay template with
# "hello world" as the argument
# to the message parameter
entrypoint: entry-point
templates:
- name: entry-point
steps:
- - name: print-message
template: whalesay
arguments:
parameters:
- name: message
value: hello world
- name: whalesay
inputs:
parameters:
- name: message # parameter declaration
container:
# run cowsay with that message input parameter as args
image: docker/whalesay
command: [cowsay]
args: ["{{inputs.parameters.message}}"]
如果我使用以下命令提交工作流:
argo submit .\workflow.yml -p message="goodbye world"
它仍然打印出 hello world 而不是 goodbye world。不知道为什么
-p
参数设置在工作流规范的 arguments
字段中定义的全局工作流参数。更多信息可用 here。要使用全局参数,您的工作流程应该更改如下:
apiVersion: argoproj.io/v1alpha1
kind: Workflow
metadata:
generateName: hello-world-parameters-
spec:
# invoke the whalesay template with
# "hello world" as the argument
# to the message parameter
entrypoint: entry-point
arguments:
parameters:
- name: message
value: hello world
templates:
- name: entry-point
steps:
- - name: print-message
template: whalesay
arguments:
parameters:
- name: message
value: "{{workflow.parameters.message}}"
- name: whalesay
inputs:
parameters:
- name: message # parameter declaration
container:
# run cowsay with that message input parameter as args
image: docker/whalesay
command: [cowsay]
args: ["{{inputs.parameters.message}}"]
我正在按照 Argo 上的示例进行操作 GitHub 但是当我将模板移动到步骤中时,我无法更改消息的参数。
apiVersion: argoproj.io/v1alpha1
kind: Workflow
metadata:
generateName: hello-world-parameters-
spec:
# invoke the whalesay template with
# "hello world" as the argument
# to the message parameter
entrypoint: entry-point
templates:
- name: entry-point
steps:
- - name: print-message
template: whalesay
arguments:
parameters:
- name: message
value: hello world
- name: whalesay
inputs:
parameters:
- name: message # parameter declaration
container:
# run cowsay with that message input parameter as args
image: docker/whalesay
command: [cowsay]
args: ["{{inputs.parameters.message}}"]
如果我使用以下命令提交工作流:
argo submit .\workflow.yml -p message="goodbye world"
它仍然打印出 hello world 而不是 goodbye world。不知道为什么
-p
参数设置在工作流规范的 arguments
字段中定义的全局工作流参数。更多信息可用 here。要使用全局参数,您的工作流程应该更改如下:
apiVersion: argoproj.io/v1alpha1
kind: Workflow
metadata:
generateName: hello-world-parameters-
spec:
# invoke the whalesay template with
# "hello world" as the argument
# to the message parameter
entrypoint: entry-point
arguments:
parameters:
- name: message
value: hello world
templates:
- name: entry-point
steps:
- - name: print-message
template: whalesay
arguments:
parameters:
- name: message
value: "{{workflow.parameters.message}}"
- name: whalesay
inputs:
parameters:
- name: message # parameter declaration
container:
# run cowsay with that message input parameter as args
image: docker/whalesay
command: [cowsay]
args: ["{{inputs.parameters.message}}"]