コンコースCIを使用してパイプラインを作成しようとしています。パイプラインは:Concourse CI + MVN + PCF issue
- gitからコードを取得する必要があります。
- mavenを使用してすべてをビルドしてパッケージ化します。
- Cloud Foundryに生成された成果物(
target/*war
)をプッシュします。
手順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
ファイルmanifest.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"]
私は何かが足りないと思う。誰かが見て、正しい方向に私を指すことができますか?
のように、生産コンコース利用の非常に良い例を持っています手順1と2を実行した後、このパスは '/ tmp/build/put/mvn-package/target/udm-0.1.war'ですか? –
私はコンテナにハイジャックし、/ tmp/build/put/mvn-packageディレクトリはありません。出力フォルダを生成するためにpackage.ymlを更新しました。その後、出力ディレクトリが空であることがわかります。何らかの理由で、mvnパッケージが出力をフォルダに保存していません。 – Rodney
'-e -x'のような' mvn'コマンドラインにパラメータを追加してデバッグし、何が起こっているのかを見てみましょう。 –