diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 000000000..cbcd6b3ec --- /dev/null +++ b/.dockerignore @@ -0,0 +1 @@ +commafeed-client \ No newline at end of file diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index c563ce47e..a7015e98f 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -53,7 +53,7 @@ jobs: # Docker - name: Login to Container Registry uses: docker/login-action@v3 - if: ${{ github.ref_type == 'tag' || github.ref_name == 'master' }} + if: ${{ github.ref_type == 'tag' || github.ref_name == 'master' || github.ref_name == 'quarkus' }} with: username: ${{ secrets.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_TOKEN }} @@ -63,32 +63,40 @@ jobs: uses: docker/build-push-action@v6 if: ${{ github.ref_type == 'tag' }} with: - context: commafeed-server - file: src/main/docker/Dockerfile.native + context: . + file: commafeed-server/src/main/docker/Dockerfile.native push: true platforms: linux/amd64 tags: | - athou/commafeed:latest-native - athou/commafeed:${{ github.ref_name }}-native + athou/commafeed:latest-${{ matrix.database }}-native + athou/commafeed:${{ github.ref_name }}-${{ matrix.database }}-native - name: Docker build and push tag - jvm uses: docker/build-push-action@v6 if: ${{ github.ref_type == 'tag' }} with: - context: commafeed-server - file: src/main/docker/Dockerfile.jvm + context: . + file: commafeed-server/src/main/docker/Dockerfile.jvm push: true platforms: linux/arm64/v8 tags: | - athou/commafeed:latest-jvm - athou/commafeed:${{ github.ref_name }}-jvm + athou/commafeed:latest-${{ matrix.database }}-jvm + athou/commafeed:${{ github.ref_name }}-${{ matrix.database }}-jvm + + - name: Docker merge latest manifests + uses: Noelware/docker-manifest-action@0.4.2 + if: ${{ github.ref_type == 'tag' }} + with: + inputs: athou/commafeed:latest-${{ matrix.database }} + images: athou/commafeed:latest-${{ matrix.database }}-native,athou/commafeed:latest-${{ matrix.database }}-jvm + push: true - name: Docker merge tag manifests uses: Noelware/docker-manifest-action@0.4.2 if: ${{ github.ref_type == 'tag' }} with: - inputs: athou/commafeed:latest - images: athou/commafeed:latest-native,athou/commafeed:latest-jvm + inputs: athou/commafeed:${{ github.ref_name }}-${{ matrix.database }} + images: athou/commafeed:${{ github.ref_name }}-${{ matrix.database }}-native,athou/commafeed:${{ github.ref_name }}-${{ matrix.database }}-jvm push: true ## master @@ -96,30 +104,60 @@ jobs: uses: docker/build-push-action@v6 if: ${{ github.ref_name == 'master' }} with: - context: commafeed-server - file: src/main/docker/Dockerfile.native + context: . + file: commafeed-server/src/main/docker/Dockerfile.native push: true platforms: linux/amd64 - tags: athou/commafeed:master-native + tags: athou/commafeed:master-${{ matrix.database }}-native - name: Docker build and push master - jvm uses: docker/build-push-action@v6 if: ${{ github.ref_name == 'master' }} with: - context: commafeed-server - file: src/main/docker/Dockerfile.jvm + context: . + file: commafeed-server/src/main/docker/Dockerfile.jvm push: true platforms: linux/arm64/v8 - tags: athou/commafeed:master-jvm + tags: athou/commafeed:master-${{ matrix.database }}-jvm - name: Docker merge master manifests uses: Noelware/docker-manifest-action@0.4.2 if: ${{ github.ref_name == 'master' }} with: - inputs: athou/commafeed:master - images: athou/commafeed:master-native,athou/commafeed:master-jvm + inputs: athou/commafeed:master-${{ matrix.database }} + images: athou/commafeed:master-${{ matrix.database }}-native,athou/commafeed:master-${{ matrix.database }}-jvm + push: true + + ## quarkus branch - remove when merged into master, also remove the condition in the login step + - name: Docker build and push quarkus - native + uses: docker/build-push-action@v6 + if: ${{ github.ref_name == 'quarkus' }} + with: + context: . + file: commafeed-server/src/main/docker/Dockerfile.native + push: true + platforms: linux/amd64 + tags: athou/commafeed:quarkus-${{ matrix.database }}-native + + - name: Docker build and push quarkus - jvm + uses: docker/build-push-action@v6 + if: ${{ github.ref_name == 'quarkus' }} + with: + context: . + file: commafeed-server/src/main/docker/Dockerfile.jvm + push: true + platforms: linux/arm64/v8 + tags: athou/commafeed:quarkus-${{ matrix.database }}-jvm + + - name: Docker merge quarkus manifests + uses: Noelware/docker-manifest-action@0.4.2 + if: ${{ github.ref_name == 'quarkus' }} + with: + inputs: athou/commafeed:quarkus-${{ matrix.database }} + images: athou/commafeed:quarkus-${{ matrix.database }}-native,athou/commafeed:quarkus-${{ matrix.database }}-jvm push: true + build-windows: runs-on: windows-latest strategy: diff --git a/commafeed-client/pom.xml b/commafeed-client/pom.xml index c55058fbf..753ee1ecf 100644 --- a/commafeed-client/pom.xml +++ b/commafeed-client/pom.xml @@ -6,7 +6,7 @@ com.commafeed commafeed - 4.6.0 + 5.0.0-beta commafeed-client CommaFeed Client diff --git a/commafeed-server/pom.xml b/commafeed-server/pom.xml index fbd54e207..95b2c2558 100644 --- a/commafeed-server/pom.xml +++ b/commafeed-server/pom.xml @@ -6,7 +6,7 @@ com.commafeed commafeed - 4.6.0 + 5.0.0-beta commafeed-server CommaFeed Server @@ -229,7 +229,7 @@ com.commafeed commafeed-client - 4.6.0 + 5.0.0-beta diff --git a/pom.xml b/pom.xml index da9fb825c..7d321f301 100644 --- a/pom.xml +++ b/pom.xml @@ -5,7 +5,7 @@ com.commafeed commafeed - 4.6.0 + 5.0.0-beta CommaFeed pom