Конкурс: Как добавить "пройденное" условие на поставленное задание
У меня есть параллельный конвейер, который принимает исходный код git, строит и развертывает его на pcf.
Теперь я должен сделать два развертывания после сборки, pcf-dev
а также pcf-qa
с зависимостью qa
над dev
, Это означает, что если dev deployment
успешно, то сделайте qa deployment
,
groups: []
resources:
- name: pcf-dev
type: cf
- name: pcf-qa
type: cf
- name: source-code
type: git
resource_types: []
jobs:
- name: build-deploy
public: true
plan:
- get: source-code
- task: build
privileged: true
config:
platform: linux
image_resource:
type: docker-image
source:
repository: java
tag: openjdk-8-alpine
run:
path: sh
args:
- -exc
- |
set -e -u -x
cd source-code/api/
./mvnw package
cp target/*.jar ../../build-output/api.jar
cd /tmp
find .
inputs:
- name: source-code
outputs:
- name: build-output
- put: pcf-dev
params:
path: build-output/api.jar
- put: pcf-qa
params:
path: build-output/api.jar
Я не знаю как пользоваться "passed"
условие для такого случая. Я знаю, что могу использовать это с "get"
но не знаю, как использовать его с "put"
для моего случая.
Может кто-нибудь, пожалуйста, помогите?
1 ответ
Это должно работать как есть. Если pcf-dev
терпит неудачу, то работа будет терпеть неудачу и останавливаться, и pcf-qa
не побежит Если pcf-dev
проходит потом pcf-qa
побежит. Задачи выполняются одновременно, только если они находятся в aggregate
блок.