From 3811cf15cb6521004911d98857f6b46129d5cc7b Mon Sep 17 00:00:00 2001 From: David Gamez Diaz <1192523+davidgamez@users.noreply.github.com> Date: Fri, 23 Jun 2023 12:17:35 -0400 Subject: [PATCH 1/7] Change builder docker image to eclipse-temurin, add multi-platform docker build --- .github/workflows/docker.yml | 151 ++++++++++++++++++++++++++--------- Dockerfile | 6 +- Dockerfile_arm64v8 | 18 +++++ 3 files changed, 134 insertions(+), 41 deletions(-) create mode 100644 Dockerfile_arm64v8 diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml index 7d973d664e..4f1e43456c 100644 --- a/.github/workflows/docker.yml +++ b/.github/workflows/docker.yml @@ -2,7 +2,7 @@ name: Docker image on: push: - branches: [ master ] + branches: [ master, feat/multiple-docker-platforms ] release: types: [ prereleased, released ] @@ -12,36 +12,113 @@ jobs: steps: - uses: actions/checkout@v3 - uses: gradle/wrapper-validation-action@v1 - test: - needs: [ validate_gradle_wrapper ] - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v3 - - name: Set up JDK 11 - uses: actions/setup-java@v3 - with: - java-version: '11' - distribution: 'temurin' - - name: Cache Gradle packages - uses: actions/cache@v3 - with: - path: ~/.gradle/caches - key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle') }} - restore-keys: ${{ runner.os }}-gradle - - name: Run Java tests - uses: gradle/gradle-build-action@v2 - with: - arguments: testAggregateTestReport - - name: Persist aggregated test reports on failure - if: ${{ failure() }} - uses: actions/upload-artifact@v3 - with: - name: Test report - Java - path: build/reports/tests/unit-test/aggregated-results/ +# test: +# needs: [ validate_gradle_wrapper ] +# runs-on: ubuntu-latest +# steps: +# - uses: actions/checkout@v3 +# - name: Set up JDK 11 +# uses: actions/setup-java@v3 +# with: +# java-version: '11' +# distribution: 'temurin' +# - name: Cache Gradle packages +# uses: actions/cache@v3 +# with: +# path: ~/.gradle/caches +# key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle') }} +# restore-keys: ${{ runner.os }}-gradle +# - name: Run Java tests +# uses: gradle/gradle-build-action@v2 +# with: +# arguments: testAggregateTestReport +# - name: Persist aggregated test reports on failure +# if: ${{ failure() }} +# uses: actions/upload-artifact@v3 +# with: +# name: Test report - Java +# path: build/reports/tests/unit-test/aggregated-results/ - build_push: - needs: test - name: Build and push Docker image +# build_test: +# needs: test +# name: Build and test Docker +# runs-on: ubuntu-latest +# strategy: +# matrix: +# platform: [amd64 , arm64] +# steps: +# - uses: actions/checkout@v3 +# with: +# fetch-depth: 0 # need full clone so `./gradlew currentVersion` can search parents for older tags when needed +# - name: Set up JDK 11 +# uses: actions/setup-java@v3 +# with: +# java-version: '11' +# distribution: 'temurin' +# - name: Cache Gradle packages +# uses: actions/cache@v3 +# with: +# path: ~/.gradle/caches +# key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle') }} +# restore-keys: ${{ runner.os }}-gradle +# - name: Set up Docker Buildx +# uses: docker/setup-buildx-action@v2 +# - name: Login to GitHub Container Registry +# uses: docker/login-action@v1 +# with: +# registry: ghcr.io +# username: ${{ github.repository_owner }} +# password: ${{ secrets.GITHUB_TOKEN }} +# - name: Initialize Gradle +# run: | +# # The first time gradlew is invoked it downloads gradle and outputs progress about that to STDOUT. +# # This "dummy" invokation gets that out of the way so future gradlew commands have clean output +# ./gradlew --version +# - name: Prepare version metadata +# id: prep +# run: | +# # ghcr.io path should match current repo but be all lowercase +# DOCKER_IMAGE=ghcr.io/${GITHUB_REPOSITORY,,} +# echo "Set DOCKER_IMAGE=${DOCKER_IMAGE}" +# +# # delegate to axion-release-plugin to generate version string from Git repository state +# echo "Detecting version with ./gradlew currentVersion" +# AXION_VERSION="$(./gradlew currentVersion -q -Prelease.quiet)" +# echo "Set AXION_VERSION=${AXION_VERSION}" +# +# # determine docker tags +# if [[ "${GITHUB_EVENT_NAME}" == "release" ]]; then +# # tag releases with version determined by axion-release-plugin +# DOCKER_TAGS="${DOCKER_IMAGE}:${AXION_VERSION}" +# else +# # tag pushes to master as "latest" +# DOCKER_TAGS="${DOCKER_IMAGE}:latest" +# fi +# echo "Set DOCKER_TAGS=${DOCKER_TAGS}" +# +# echo ::set-output name=version::${AXION_VERSION} +# echo ::set-output name=tags::${DOCKER_TAGS} +# echo ::set-output name=created::$(date -u +'%Y-%m-%dT%H:%M:%SZ') +# +# - name: Build Docker container image +# uses: docker/build-push-action@v3 +# with: +# context: . +# file: ./Dockerfile +# build-args: | +# VERSION_TAG=${{ steps.prep.outputs.version }} +# load: true +# platforms: linux/amd64, linux/arm64 +# tags: ${{ steps.prep.outputs.tags }} +# labels: | +# org.opencontainers.image.source=https://github.com/${GITHUB_REPOSITORY,,}.git +# org.opencontainers.image.created=${{ steps.prep.outputs.created }} +# org.opencontainers.image.revision=${{ github.sha }} +# org.opencontainers.image.version=${{ steps.prep.outputs.version }} +# - name: Test Docker container image +# run: docker run --rm ${{ steps.prep.outputs.tags }} --help + push_multiplatform: + name: Build/Push multi-platform image runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 @@ -96,10 +173,6 @@ jobs: echo ::set-output name=version::${AXION_VERSION} echo ::set-output name=tags::${DOCKER_TAGS} echo ::set-output name=created::$(date -u +'%Y-%m-%dT%H:%M:%SZ') - - # Build and push steps are split up in order to test the built contaire image in between - # - build-args and labels inputs _must_ be kept matching between both to prevent rebuild - # - See: https://github.com/docker/build-push-action/blob/master/docs/advanced/test-before-push.md - name: Build Docker container image uses: docker/build-push-action@v3 with: @@ -107,15 +180,14 @@ jobs: file: ./Dockerfile build-args: | VERSION_TAG=${{ steps.prep.outputs.version }} - load: true - tags: ${{ steps.prep.outputs.tags }} + load: false + platforms: linux/amd64, linux/arm64 + tags: ${{ steps.prep.outputs.tags }}-test-multiplat labels: | org.opencontainers.image.source=https://github.com/${GITHUB_REPOSITORY,,}.git org.opencontainers.image.created=${{ steps.prep.outputs.created }} org.opencontainers.image.revision=${{ github.sha }} org.opencontainers.image.version=${{ steps.prep.outputs.version }} - - name: Test Docker container image - run: docker run --rm ${{ steps.prep.outputs.tags }} --help - name: Push Docker container image uses: docker/build-push-action@v3 with: @@ -124,7 +196,8 @@ jobs: build-args: | VERSION_TAG=${{ steps.prep.outputs.version }} push: true - tags: ${{ steps.prep.outputs.tags }} + platforms: linux/amd64,linux/arm64 + tags: ${{ steps.prep.outputs.tags }}-test-multiplat labels: | org.opencontainers.image.source=https://github.com/${GITHUB_REPOSITORY,,}.git org.opencontainers.image.created=${{ steps.prep.outputs.created }} diff --git a/Dockerfile b/Dockerfile index 90fa33d8ee..442d032e52 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,6 @@ -FROM gradle:7-jdk11-alpine AS build +# FROM --platform=$BUILDPLATFORM gradle:7-jdk11-alpine AS build + +FROM --platform=$BUILDPLATFORM eclipse-temurin:11 AS build COPY --chown=gradle:gradle . /build WORKDIR /build @@ -9,7 +11,7 @@ RUN ./gradlew shadowJar \ -Prelease.forceVersion="${VERSION_TAG%-SNAPSHOT}" -FROM openjdk:11-slim +FROM --platform=$BUILDPLATFORM openjdk:11-slim COPY --from=build /build/cli/build/libs/gtfs-validator-*-cli.jar /gtfs-validator-cli.jar WORKDIR / diff --git a/Dockerfile_arm64v8 b/Dockerfile_arm64v8 new file mode 100644 index 0000000000..05d175fc6e --- /dev/null +++ b/Dockerfile_arm64v8 @@ -0,0 +1,18 @@ +FROM arm64v8/gradle:7-jdk11 AS build + +COPY --chown=gradle:gradle . /build +WORKDIR /build + +ARG VERSION_TAG +RUN ./gradlew shadowJar \ + --no-daemon \ + -Prelease.forceVersion="${VERSION_TAG%-SNAPSHOT}" + + +FROM openjdk:11-slim +COPY --from=build /build/cli/build/libs/gtfs-validator-*-cli.jar /gtfs-validator-cli.jar +WORKDIR / + +ARG VERSION_TAG +ENV VERSION_TAG=$VERSION_TAG +ENTRYPOINT [ "java", "-jar", "gtfs-validator-cli.jar" ] From 25beab5eecc765910c1ef12c04075c4957352366 Mon Sep 17 00:00:00 2001 From: David Gamez Diaz <1192523+davidgamez@users.noreply.github.com> Date: Wed, 5 Jul 2023 08:27:44 -0400 Subject: [PATCH 2/7] revert commented lines --- .github/workflows/docker.yml | 208 +++++++++++++++++------------------ Dockerfile | 2 - Dockerfile_arm64v8 | 18 --- 3 files changed, 104 insertions(+), 124 deletions(-) delete mode 100644 Dockerfile_arm64v8 diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml index 4f1e43456c..2d1e37054f 100644 --- a/.github/workflows/docker.yml +++ b/.github/workflows/docker.yml @@ -12,111 +12,111 @@ jobs: steps: - uses: actions/checkout@v3 - uses: gradle/wrapper-validation-action@v1 -# test: -# needs: [ validate_gradle_wrapper ] -# runs-on: ubuntu-latest -# steps: -# - uses: actions/checkout@v3 -# - name: Set up JDK 11 -# uses: actions/setup-java@v3 -# with: -# java-version: '11' -# distribution: 'temurin' -# - name: Cache Gradle packages -# uses: actions/cache@v3 -# with: -# path: ~/.gradle/caches -# key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle') }} -# restore-keys: ${{ runner.os }}-gradle -# - name: Run Java tests -# uses: gradle/gradle-build-action@v2 -# with: -# arguments: testAggregateTestReport -# - name: Persist aggregated test reports on failure -# if: ${{ failure() }} -# uses: actions/upload-artifact@v3 -# with: -# name: Test report - Java -# path: build/reports/tests/unit-test/aggregated-results/ + test: + needs: [ validate_gradle_wrapper ] + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - name: Set up JDK 11 + uses: actions/setup-java@v3 + with: + java-version: '11' + distribution: 'temurin' + - name: Cache Gradle packages + uses: actions/cache@v3 + with: + path: ~/.gradle/caches + key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle') }} + restore-keys: ${{ runner.os }}-gradle + - name: Run Java tests + uses: gradle/gradle-build-action@v2 + with: + arguments: testAggregateTestReport + - name: Persist aggregated test reports on failure + if: ${{ failure() }} + uses: actions/upload-artifact@v3 + with: + name: Test report - Java + path: build/reports/tests/unit-test/aggregated-results/ + + build_test: + needs: test + name: Build and test Docker + runs-on: ubuntu-latest + strategy: + matrix: + platform: [amd64 , arm64] + steps: + - uses: actions/checkout@v3 + with: + fetch-depth: 0 # need full clone so `./gradlew currentVersion` can search parents for older tags when needed + - name: Set up JDK 11 + uses: actions/setup-java@v3 + with: + java-version: '11' + distribution: 'temurin' + - name: Cache Gradle packages + uses: actions/cache@v3 + with: + path: ~/.gradle/caches + key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle') }} + restore-keys: ${{ runner.os }}-gradle + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v2 + - name: Login to GitHub Container Registry + uses: docker/login-action@v1 + with: + registry: ghcr.io + username: ${{ github.repository_owner }} + password: ${{ secrets.GITHUB_TOKEN }} + - name: Initialize Gradle + run: | + # The first time gradlew is invoked it downloads gradle and outputs progress about that to STDOUT. + # This "dummy" invokation gets that out of the way so future gradlew commands have clean output + ./gradlew --version + - name: Prepare version metadata + id: prep + run: | + # ghcr.io path should match current repo but be all lowercase + DOCKER_IMAGE=ghcr.io/${GITHUB_REPOSITORY,,} + echo "Set DOCKER_IMAGE=${DOCKER_IMAGE}" + + # delegate to axion-release-plugin to generate version string from Git repository state + echo "Detecting version with ./gradlew currentVersion" + AXION_VERSION="$(./gradlew currentVersion -q -Prelease.quiet)" + echo "Set AXION_VERSION=${AXION_VERSION}" + + # determine docker tags + if [[ "${GITHUB_EVENT_NAME}" == "release" ]]; then + # tag releases with version determined by axion-release-plugin + DOCKER_TAGS="${DOCKER_IMAGE}:${AXION_VERSION}" + else + # tag pushes to master as "latest" + DOCKER_TAGS="${DOCKER_IMAGE}:latest" + fi + echo "Set DOCKER_TAGS=${DOCKER_TAGS}" -# build_test: -# needs: test -# name: Build and test Docker -# runs-on: ubuntu-latest -# strategy: -# matrix: -# platform: [amd64 , arm64] -# steps: -# - uses: actions/checkout@v3 -# with: -# fetch-depth: 0 # need full clone so `./gradlew currentVersion` can search parents for older tags when needed -# - name: Set up JDK 11 -# uses: actions/setup-java@v3 -# with: -# java-version: '11' -# distribution: 'temurin' -# - name: Cache Gradle packages -# uses: actions/cache@v3 -# with: -# path: ~/.gradle/caches -# key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle') }} -# restore-keys: ${{ runner.os }}-gradle -# - name: Set up Docker Buildx -# uses: docker/setup-buildx-action@v2 -# - name: Login to GitHub Container Registry -# uses: docker/login-action@v1 -# with: -# registry: ghcr.io -# username: ${{ github.repository_owner }} -# password: ${{ secrets.GITHUB_TOKEN }} -# - name: Initialize Gradle -# run: | -# # The first time gradlew is invoked it downloads gradle and outputs progress about that to STDOUT. -# # This "dummy" invokation gets that out of the way so future gradlew commands have clean output -# ./gradlew --version -# - name: Prepare version metadata -# id: prep -# run: | -# # ghcr.io path should match current repo but be all lowercase -# DOCKER_IMAGE=ghcr.io/${GITHUB_REPOSITORY,,} -# echo "Set DOCKER_IMAGE=${DOCKER_IMAGE}" -# -# # delegate to axion-release-plugin to generate version string from Git repository state -# echo "Detecting version with ./gradlew currentVersion" -# AXION_VERSION="$(./gradlew currentVersion -q -Prelease.quiet)" -# echo "Set AXION_VERSION=${AXION_VERSION}" -# -# # determine docker tags -# if [[ "${GITHUB_EVENT_NAME}" == "release" ]]; then -# # tag releases with version determined by axion-release-plugin -# DOCKER_TAGS="${DOCKER_IMAGE}:${AXION_VERSION}" -# else -# # tag pushes to master as "latest" -# DOCKER_TAGS="${DOCKER_IMAGE}:latest" -# fi -# echo "Set DOCKER_TAGS=${DOCKER_TAGS}" -# -# echo ::set-output name=version::${AXION_VERSION} -# echo ::set-output name=tags::${DOCKER_TAGS} -# echo ::set-output name=created::$(date -u +'%Y-%m-%dT%H:%M:%SZ') -# -# - name: Build Docker container image -# uses: docker/build-push-action@v3 -# with: -# context: . -# file: ./Dockerfile -# build-args: | -# VERSION_TAG=${{ steps.prep.outputs.version }} -# load: true -# platforms: linux/amd64, linux/arm64 -# tags: ${{ steps.prep.outputs.tags }} -# labels: | -# org.opencontainers.image.source=https://github.com/${GITHUB_REPOSITORY,,}.git -# org.opencontainers.image.created=${{ steps.prep.outputs.created }} -# org.opencontainers.image.revision=${{ github.sha }} -# org.opencontainers.image.version=${{ steps.prep.outputs.version }} -# - name: Test Docker container image -# run: docker run --rm ${{ steps.prep.outputs.tags }} --help + echo ::set-output name=version::${AXION_VERSION} + echo ::set-output name=tags::${DOCKER_TAGS} + echo ::set-output name=created::$(date -u +'%Y-%m-%dT%H:%M:%SZ') + + - name: Build Docker container image + uses: docker/build-push-action@v3 + with: + context: . + file: ./Dockerfile + build-args: | + VERSION_TAG=${{ steps.prep.outputs.version }} + load: true + platforms: linux/amd64, linux/arm64 + tags: ${{ steps.prep.outputs.tags }} + labels: | + org.opencontainers.image.source=https://github.com/${GITHUB_REPOSITORY,,}.git + org.opencontainers.image.created=${{ steps.prep.outputs.created }} + org.opencontainers.image.revision=${{ github.sha }} + org.opencontainers.image.version=${{ steps.prep.outputs.version }} + - name: Test Docker container image + run: docker run --rm ${{ steps.prep.outputs.tags }} --help push_multiplatform: name: Build/Push multi-platform image runs-on: ubuntu-latest diff --git a/Dockerfile b/Dockerfile index 442d032e52..af0bfbd4bb 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,5 +1,3 @@ -# FROM --platform=$BUILDPLATFORM gradle:7-jdk11-alpine AS build - FROM --platform=$BUILDPLATFORM eclipse-temurin:11 AS build COPY --chown=gradle:gradle . /build diff --git a/Dockerfile_arm64v8 b/Dockerfile_arm64v8 deleted file mode 100644 index 05d175fc6e..0000000000 --- a/Dockerfile_arm64v8 +++ /dev/null @@ -1,18 +0,0 @@ -FROM arm64v8/gradle:7-jdk11 AS build - -COPY --chown=gradle:gradle . /build -WORKDIR /build - -ARG VERSION_TAG -RUN ./gradlew shadowJar \ - --no-daemon \ - -Prelease.forceVersion="${VERSION_TAG%-SNAPSHOT}" - - -FROM openjdk:11-slim -COPY --from=build /build/cli/build/libs/gtfs-validator-*-cli.jar /gtfs-validator-cli.jar -WORKDIR / - -ARG VERSION_TAG -ENV VERSION_TAG=$VERSION_TAG -ENTRYPOINT [ "java", "-jar", "gtfs-validator-cli.jar" ] From bd88b1695de62cfada743286b54d5d63bbace9fe Mon Sep 17 00:00:00 2001 From: David Gamez Diaz <1192523+davidgamez@users.noreply.github.com> Date: Wed, 5 Jul 2023 08:54:31 -0400 Subject: [PATCH 3/7] fix matrix reference --- .github/workflows/docker.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml index 2d1e37054f..8687dd0604 100644 --- a/.github/workflows/docker.yml +++ b/.github/workflows/docker.yml @@ -108,7 +108,7 @@ jobs: build-args: | VERSION_TAG=${{ steps.prep.outputs.version }} load: true - platforms: linux/amd64, linux/arm64 + platforms: ${{ matrix.platform }} tags: ${{ steps.prep.outputs.tags }} labels: | org.opencontainers.image.source=https://github.com/${GITHUB_REPOSITORY,,}.git From 33b1d1578e427da9749483e6a268fccac4df85c8 Mon Sep 17 00:00:00 2001 From: David Gamez Diaz <1192523+davidgamez@users.noreply.github.com> Date: Wed, 5 Jul 2023 09:00:33 -0400 Subject: [PATCH 4/7] add needs to publish job --- .github/workflows/docker.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml index 8687dd0604..75a8319ece 100644 --- a/.github/workflows/docker.yml +++ b/.github/workflows/docker.yml @@ -2,7 +2,7 @@ name: Docker image on: push: - branches: [ master, feat/multiple-docker-platforms ] + branches: [ master ] release: types: [ prereleased, released ] @@ -41,7 +41,7 @@ jobs: build_test: needs: test - name: Build and test Docker + name: Build/test Docker image runs-on: ubuntu-latest strategy: matrix: @@ -119,6 +119,7 @@ jobs: run: docker run --rm ${{ steps.prep.outputs.tags }} --help push_multiplatform: name: Build/Push multi-platform image + needs: build_test runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 From 607409e78c66993d2663f333132fb23330ebbda4 Mon Sep 17 00:00:00 2001 From: David Gamez Diaz <1192523+davidgamez@users.noreply.github.com> Date: Wed, 5 Jul 2023 09:01:48 -0400 Subject: [PATCH 5/7] test job --- .github/workflows/docker.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml index 75a8319ece..3ec975dd25 100644 --- a/.github/workflows/docker.yml +++ b/.github/workflows/docker.yml @@ -2,7 +2,7 @@ name: Docker image on: push: - branches: [ master ] + branches: [ master, feat/multiple-docker-platforms ] release: types: [ prereleased, released ] From 3e21a81a8ce342fd1c8a26c9809815065c8db0b5 Mon Sep 17 00:00:00 2001 From: David Gamez Diaz <1192523+davidgamez@users.noreply.github.com> Date: Wed, 5 Jul 2023 09:35:19 -0400 Subject: [PATCH 6/7] docker file cleanup --- .github/workflows/docker.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml index 3ec975dd25..57eb5b051d 100644 --- a/.github/workflows/docker.yml +++ b/.github/workflows/docker.yml @@ -2,7 +2,7 @@ name: Docker image on: push: - branches: [ master, feat/multiple-docker-platforms ] + branches: [ master ] release: types: [ prereleased, released ] @@ -183,7 +183,7 @@ jobs: VERSION_TAG=${{ steps.prep.outputs.version }} load: false platforms: linux/amd64, linux/arm64 - tags: ${{ steps.prep.outputs.tags }}-test-multiplat + tags: ${{ steps.prep.outputs.tags }} labels: | org.opencontainers.image.source=https://github.com/${GITHUB_REPOSITORY,,}.git org.opencontainers.image.created=${{ steps.prep.outputs.created }} @@ -198,7 +198,7 @@ jobs: VERSION_TAG=${{ steps.prep.outputs.version }} push: true platforms: linux/amd64,linux/arm64 - tags: ${{ steps.prep.outputs.tags }}-test-multiplat + tags: ${{ steps.prep.outputs.tags }} labels: | org.opencontainers.image.source=https://github.com/${GITHUB_REPOSITORY,,}.git org.opencontainers.image.created=${{ steps.prep.outputs.created }} From 37fbb0d60c887b48c4ab6b1fed0a7e4dd20c1745 Mon Sep 17 00:00:00 2001 From: David Gamez Diaz <1192523+davidgamez@users.noreply.github.com> Date: Thu, 10 Aug 2023 17:11:47 -0400 Subject: [PATCH 7/7] fix target platform --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index af0bfbd4bb..4e84814d6a 100644 --- a/Dockerfile +++ b/Dockerfile @@ -9,7 +9,7 @@ RUN ./gradlew shadowJar \ -Prelease.forceVersion="${VERSION_TAG%-SNAPSHOT}" -FROM --platform=$BUILDPLATFORM openjdk:11-slim +FROM --platform=$TARGETPLATFORM openjdk:11-slim COPY --from=build /build/cli/build/libs/gtfs-validator-*-cli.jar /gtfs-validator-cli.jar WORKDIR /