0

我正在尝试使用 Concourse CI 创建一个管道。管道应:

  1. 从 git 获取代码。
  2. 使用 Maven 构建和打包所有内容。
  3. 将生成的工件 ( target/*war) 推送到 Cloud Foundry。

步骤 1 和 2 已成功执行,但在尝试不同配置数小时后,我无法访问生成的工件并将其推送到 CF。

我在最后一步收到以下错误:error invalid path: found 0 files instead of 1 at path: /tmp/build/put/mvn-package/target/udm-0.1.war

文件 pipeline.yml

resources:
- name: branch-dev
  type: git
  source:
    uri: {{git-url}}
    branch: {{git-branch}}
    private_key: {{private-repo-key}}

- name: PCF-Dev
  type: cf
  source:
    api: {{pcf-api}}
    username: {{pcf-username}}
    password: {{pcf-password}}
    organization: {{pcf-organization}}
    space: {{pcf-space}}
    skip_cert_check: false

jobs:
- name: udm
  serial: true
  plan:
  - get: branch-dev
    trigger: true
  - task: mvn-package
      privileged: true
      file: branch-dev/ci/package.yml
  - put: PCF-Dev
    params:
      manifest: branch-dev/ci/manifest.yml
      path: mvn-package-output/target/udm-0.1.war

文件清单.yml

applications:
- name: udm

文件 package.yml

platform: linux

image_resource:
  type: docker-image
  source:
    repository: maven
    tag: latest

inputs:
  - name: branch-dev
outputs:
  - name: mvn-package-output

run:
  path: "mvn"
  args: ["-f", "branch-dev/udm/pom.xml", "package"]

我想我错过了一些东西。有人可以看看并指出我正确的方向吗?

4

1 回答 1

0

您需要在构建/部署作业之间放置/获取资源(构建工件)(并将其定义为资源)

Pivotal 项目有非常好的生产 Concourse 使用示例,例如https://github.com/azwickey-pivotal/volume-demo/blob/master/ci/pipeline.yml

于 2017-03-21T23:14:22.213 回答