私はgradleベースのJavaアプリケーションを構築しようとしています。私のパイプラインは次のようになります。Concourseタスクの入力フォルダが空です
---
resources:
- name: hello-concourse-repo
type: git
source:
uri: https://github.com/ractive/hello-concourse.git
jobs:
- name: gradle-build
public: true
plan:
- get: hello-concourse-repo
trigger: true
- task: build
file: hello-concourse-repo/ci/build.yml
- task: find
file: hello-concourse-repo/ci/find.yml
build.ymlは、次のようになります。
---
platform: linux
image_resource:
type: docker-image
source:
repository: java
tag: openjdk-8
inputs:
- name: hello-concourse-repo
outputs:
- name: output
run:
path: hello-concourse-repo/ci/build.sh
caches:
- path: .gradle/
とbuild.sh:
#!/bin/bash
export ROOT_FOLDER=$(pwd)
export GRADLE_USER_HOME="${ROOT_FOLDER}/.gradle"
export TERM=${TERM:-dumb}
cd hello-concourse-repo
./gradlew --no-daemon build
mkdir -p output
cp build/libs/*.jar output
cp src/main/docker/* output
ls -l output
そして最後にfind.yml
---
platform: linux
image_resource:
type: docker-image
source: {repository: busybox}
inputs:
- name: output
run:
path: ls
args: ['-alR']
bash.shの最後にあるlsの出力CRIPTは、出力フォルダが期待されるファイルが含まれていることを私に示しているが、検索タスクは空のフォルダを示しています。
私が間違っているのは何をその私が検索で入力として使用していますoutput
フォルダタスクは空ですか?
完全な例は、ciサブフォルダ内のconcourseファイルのあるhereです。
これは意味があります。私は今、hello-concourse-repoがgit repoのチェックアウトディレクトリであることを理解しています。私はいつも、この特定のタスクのために作成されたディレクトリであるという印象を受けました。 – James