2017-05-03 4 views

Antwort

4

Wenn Sie nur zwischen Aufgaben innerhalb desselben Jobs wechseln, können Sie Artefakte verwenden (http://concourse.ci/running-tasks.html#outputs) und wenn Sie zwischen Jobs wechseln, können Sie Ressourcen verwenden (z. B. in git oder s3). wenn Sie zwischen den Aufgaben Zum Beispiel sind vorbei, können Sie eine Aufgabendatei haben

--- 
platform: linux 

image_resource: # ... 

outputs: 
- name: unique-id 

run: 
    path: project-src/ci/fill-in-output.sh 

Und das Skript fill-in-output.sh die Datei setzen, die die eindeutige ID in Pfad enthält unique-id/. Damit können Sie eine andere Aufgabe haben, die die eindeutige ID-Ausgabe als Eingabe verwendet (http://concourse.ci/running-tasks.html#inputs) und diese eindeutige ID-Datei verwendet.

0

Zusätzlich zu den Aufgaben legen die Ressourcen die Dateien automatisch in ihr Arbeitsverzeichnis.

Zum Beispiel habe ich eine Pipeline Job als

jobs: 
- name: build 
    plan: 
    - get: git-some-repo 
    - put: push-some-image 
     params: 
     build: git-some-repo/the-image 
    - task: Use-the-image-details 
     config: 
     platform: linux 
     image_resource: 
      type: docker-image 
      source: 
      repository: alpine 
     inputs: 
      - name: push-some-image 
     run: 
      path: sh 
      args: 
      - -exc 
      - | 
      ls -lrt push-some-image 
      cat push-some-image/repository 
      cat push-some-image/digest 
folgt

Nun die Details des Bildes Push von push-some-image

+ cat push-some-image/repository 
xxxxxxxxx.dkr.ecr.eu-west-1.amazonaws.com/path/image 
+ cat push-some-image/digest 
sha256:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx 
0

Passing Daten innerhalb eines Jobs Aufgaben sehen einfach mit Eingabe getan werden könnte/Ausgabeartefakte (Dateien), wie Clara Fu bemerkte.

Für den Fall zwischen Jobs, wenn einfach, z.B. 'string' Daten müssen übergeben werden, und die Verwendung eines git ist ein Overkill, die 'keyval' Ressource [1] scheint eine gute Lösung zu sein. Die Readme beschreibt, dass die Daten als Standard-Eigenschaftendatei gespeichert und verwaltet werden.

  1. https://github.com/SWCE/keyval-resource
Verwandte Themen