0

我有一个大厅管道,它采用 git 源代码,构建然后将其部署到 pcf。

现在我必须在构建之后进行两次部署,pcf-dev并且pcf-qa依赖于qaover 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"我的情况下使用它。

有人可以帮忙吗?

4

1 回答 1

2

它应该按原样工作。如果pcf-dev失败,则作业将失败并停止,并且pcf-qa不会运行。如果pcf-dev通过pcf-qa则将运行。只有在块中的任务才会同时运行aggregate

于 2018-09-19T04:08:45.833 回答