如何为大厅中的多个作业提供相同的 'get'
How to give same 'get' to multiple jobs in concourse
如果以任何方式允许的话,有什么方法可以通过提供通用的“-get”来优化我的代码,而不是为多个作业提供相同的“-get”。
目前,我已经为不同的工作给出了相同的代码(-get)
jobs:
- name: Name1
plan:
- aggregate:
- get: anyrepo1
- get: anyrepo2
- task: taskhere
image: anyimage1
file: file1.yml
- name: Name2
plan:
- aggregate:
- get: anyrepo1
- get: anyrepo2
- task: taskhere
image: anyimage1
file: file2.yml
我没有收到任何错误,但想优化代码
啊,你要找的"optimization"好像是YAML级别的。您希望减少 YAML 重复。这与 Concourse 无关,该技术可以应用于任何 YAML 文件。
您可以使用 YAML 合并键和锚点。
见
- Concourse 的 YAML 提示和技巧 CI https://blog.betomorrow.com/yaml-tips-and-tricks-for-concourse-ci-35a3b577a239
- YAML 锚点和合并密钥参考 https://camel.readthedocs.io/en/latest/yamlref.html
您可以使用下面的代码一次又一次地重复使用相同的东西。就我而言,我使用的是变量 "jobs_get_common".
`jobs_get_common: &jobs_get_common
- 得到:repo1
- 得到:repo2
职位:
- 姓名:Converge-BHS
计划:
- 总计的:
*jobs_get_common
- 任务:任何任务
图片:图片1
文件:task.yml`
如果以任何方式允许的话,有什么方法可以通过提供通用的“-get”来优化我的代码,而不是为多个作业提供相同的“-get”。
目前,我已经为不同的工作给出了相同的代码(-get)
jobs:
- name: Name1
plan:
- aggregate:
- get: anyrepo1
- get: anyrepo2
- task: taskhere
image: anyimage1
file: file1.yml
- name: Name2
plan:
- aggregate:
- get: anyrepo1
- get: anyrepo2
- task: taskhere
image: anyimage1
file: file2.yml
我没有收到任何错误,但想优化代码
啊,你要找的"optimization"好像是YAML级别的。您希望减少 YAML 重复。这与 Concourse 无关,该技术可以应用于任何 YAML 文件。
您可以使用 YAML 合并键和锚点。
见
- Concourse 的 YAML 提示和技巧 CI https://blog.betomorrow.com/yaml-tips-and-tricks-for-concourse-ci-35a3b577a239
- YAML 锚点和合并密钥参考 https://camel.readthedocs.io/en/latest/yamlref.html
您可以使用下面的代码一次又一次地重复使用相同的东西。就我而言,我使用的是变量 "jobs_get_common".
`jobs_get_common: &jobs_get_common - 得到:repo1 - 得到:repo2
职位: - 姓名:Converge-BHS 计划: - 总计的: *jobs_get_common - 任务:任何任务 图片:图片1 文件:task.yml`