2017-06-28 7 views
-1

複数のジョブで再利用したいタスクがありますが、すべてのジョブでタスク構成を繰り返す必要はありません。私にそれをさせる最良の方法は何ですか?私は、特にコンコースの構成については、ここでこの質問を投稿するコンコースチームによって指示された:duplicateとしてこの質問にフラグを立てている人たちにジョブ間でタスクを共有する方法は?

jobs: 
- name: build 
    plan: 
    - get: git-branch 
     trigger: true 
    - task: get-build-tag # <---- duplicate of below 
     config: {} # truncated for brevity 
    - task: build-image 
     file: some-stuff-to-do-with-get-build-tag 
- name: test 
    plan: 
    - get: git-branch 
    trigger: true 
    - task: get-build-tag # <---- duplicate of above 
    config: {} # truncated for brevity 
    - task: run-tests 
    file: also-to-do-with-get-build-tag 

注:

例。設定がYAMLから何かに変更された場合、この投稿はYAMLとは関係なく、依然として参考になります。

+0

@Anthon上記の編集を参照してください。 – neezer

+6

誰かがあなたにこの質問を投稿するかどうかを指示するかどうかは、これが重複しているかどうかにかかわらず**無し**です。なぜあなたがその編集をしたのかわからない、「メモ」の後のすべてのものは、あなたの問題やプログラミングとは関係ない。このように、編集が不適切であると、あなたの質問から逸脱し、それを劣化させます。重複しているのでこの質問が閉じられると仮定しても、人々は[タグ:コンコース]を探してもそれを見つけることができます。彼らの設定にYAMLを使用するすべてのプログラムのアンカーについては、別個の* answer *を持つ必要はありません。 – Anthon

+4

[この投稿はメタで議論されています](https://meta.stackoverflow.com/q/351505/5244995)。 –

答えて

2

あなたが探しているのはYAMLアンカーです。ここで

はそれがあなたのパイプラインで次のようになります:

# This is not part of concourse semantics but we allow 
# extra keys to support anchoring 
# https://github.com/concourse/concourse/issues/116 
additional_tasks: 
- &get-build-tag 
    task: get-build-tag 
    config: {} 

jobs: 
- name: build 
    plan: 
    - get: git-branch 
     trigger: true 
    - *get-build-tag 
    - task: build-image 
     file: some-stuff-to-do-with-get-build-tag 
- name: test 
    plan: 
    - get: git-branch 
    trigger: true 
    - *get-build-tag 
    - task: run-tests 
    file: also-to-do-with-get-build-tag 

あなたは私たちが行う方法の例をしたい場合は、我々はコンコースチームの私達のテストに使用パイプラインの一つに、あなたがそれを確認することができアウトhere

関連する問題