diff --git a/.github/workflows/docker-build-test.yml b/.github/workflows/docker-build-test.yml index 1ddc3fb..07913c9 100644 --- a/.github/workflows/docker-build-test.yml +++ b/.github/workflows/docker-build-test.yml @@ -9,8 +9,12 @@ on: pull_request: jobs: + build-jdk: + uses: ./.github/workflows/fat-build.yml + build-test: runs-on: ubuntu-latest + needs: build-jdk strategy: matrix: docker-compose-file: @@ -31,17 +35,11 @@ jobs: fail-fast: false steps: - uses: actions/checkout@v3 + - uses: actions/download-artifact@v3 + with: + name: piped.jar - name: Create Version File run: echo $(git log -1 --date=short --pretty=format:%cd)-$(git rev-parse --short HEAD) > VERSION - - name: set up JDK 17 - uses: actions/setup-java@v3 - with: - java-version: 17 - distribution: temurin - cache: "gradle" - - name: Run Build - run: ./gradlew shadowJar - - run: mv build/libs/piped-*-all.jar piped.jar - name: Build Image Locally uses: docker/build-push-action@v4 with: diff --git a/.github/workflows/docker-build.yml b/.github/workflows/docker-build.yml index 3327e48..ceb86fa 100644 --- a/.github/workflows/docker-build.yml +++ b/.github/workflows/docker-build.yml @@ -8,7 +8,11 @@ on: - master jobs: + build-jdk: + uses: ./.github/workflows/fat-build.yml + build-docker: + needs: build-jdk runs-on: ubuntu-latest strategy: matrix: @@ -23,17 +27,11 @@ jobs: dockerfile: ./Dockerfile.graalvm-jvm.ci steps: - uses: actions/checkout@v3 + - uses: actions/download-artifact@v3 + with: + name: piped.jar - name: Create Version File run: echo $(git log -1 --date=short --pretty=format:%cd)-$(git rev-parse --short HEAD) > VERSION - - name: set up JDK 17 - uses: actions/setup-java@v3 - with: - java-version: 17 - distribution: temurin - cache: "gradle" - - name: Run Build - run: ./gradlew shadowJar - - run: mv build/libs/piped-*-all.jar piped.jar - name: Set up QEMU uses: docker/setup-qemu-action@v2 with: diff --git a/.github/workflows/fat-build.yml b/.github/workflows/fat-build.yml new file mode 100644 index 0000000..3c54d07 --- /dev/null +++ b/.github/workflows/fat-build.yml @@ -0,0 +1,24 @@ +name: Fat JAR Build + +on: + workflow_call: + +jobs: + build-and-test: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + + - name: set up JDK 17 + uses: actions/setup-java@v3 + with: + java-version: 17 + distribution: temurin + cache: "gradle" + - name: Run Build + run: ./gradlew shadowJar + - run: mv build/libs/piped-*-all.jar piped.jar + - uses: actions/upload-artifact@v3 + with: + name: piped.jar + path: piped.jar