【发布时间】:2017-09-01 21:55:21
【问题描述】:
我的工作有很多这样的任务:
- name: main-job
serial: true
plan:
- aggregate:
- get: <git-resource>
passed: [previous-job]
trigger: true
- get: <git-resource-3>
- task: <task-1>
file: <git-resource>/<path>/<task-1-no-db>.yml
- task: <task-2>
tags: ['<specific-tag>']
file: <git-resource>/<path>/<task-1>.yml
params:
DATABASE_HOST: <file>
DATABASE: <my-db-1>
- task: <task-2>
tags: ['<specific-tag>']
file: <git-resource>/<path>/<task-1>.yml
params:
DATABASE_HOST: <file>
DATABASE: <my-db-1>
对我来说问题是,我必须直接调用同一个工作,但不是 DATABASE 参数是 my-db-1,我希望它是 my-db-2。
我能够做到这一点的唯一方法是通过新工作并传递参数,从字面上复制整组行。我的工作太繁重了,因为其中有太多任务,所以复制它是显而易见的解决方案,我想知道是否有一种方法可以通过拥有多个管道和一个主要管道来重用,该管道基本上用DATABASE 的参数已通过或有两个小作业使用不同的参数调用此主作业,如下所示:
- name: <call-main-job-with-db-1>
serial: true
plan:
- aggregate:
- get: <git-resource>
passed: [previous-job]
trigger: true
- task: <call-main-job-task>
params:
DATABASE_HOST: <file>
DATABASE: <my-db-1>
- name: <call-main-job-with-db-2>
serial: true
plan:
- aggregate:
- get: <git-resource>
passed: [previous-job]
trigger: true
- task: <call-main-job-task>
params:
DATABASE: <my-db-2>
我不确定这是否可能,因为我没有找到任何这样的例子。
【问题讨论】:
标签: concourse