如何将参数添加到Concourse CI中包含的任务文件中

时间:2017-04-22 21:19:16

标签: concourse

如果管道(file: task.yml)配置中的任务文件(pipeline.yml)需要包含一些{{properties}},那么添加它们的正确方法是什么?

在我的情况下,我想使用来自使用身份验证的存储库的自定义docker镜像,我不想在任务yml本身中硬编码/提交凭据。

当前没有将任务配置移动到主管道yml?

是一种方法吗?

澄清:我想参数化task.yml文件本身(例如,input: {{input_name}})。

1 个答案:

答案 0 :(得分:1)

task.yml中,您可以指定必需的参数,例如:

params:
  USERNAME:
  PASSWORD:

然后在pipeline.yml中提供它们:

jobs:
- name: my-job 
  plan:
  - get: ci-files
  - task: my-task
    file: ci-files/task.yml
    params:
      USERNAME: {{username}}
      PASSWORD: {{password}}

将管道配置为:

fly set-pipeline -p pipeline-name -c pipeline.yml -v=USERNAME=my-username -v=PASSWORD=my-password

然后这些参数将作为您任务中的环境变量提供给您。