From 4a864934d4e96fcc77e085956ee4729cfc13f9e1 Mon Sep 17 00:00:00 2001 From: Oleksandr Dzhychko Date: Thu, 11 Jan 2024 12:39:23 +0100 Subject: [PATCH] ci: add Publish workflow Also rename a shell script to have a more truthful name. --- .github/workflows/publish.yml | 43 +++++++++++++++++++ docker-build-all.sh | 21 --------- docker-build-local-and-publish-on-ci-all.sh | 21 +++++++++ ...> docker-build-local-and-publish-on-ci.sh} | 0 ...> docker-build-local-and-publish-on-ci.sh} | 0 ...> docker-build-local-and-publish-on-ci.sh} | 0 ...> docker-build-local-and-publish-on-ci.sh} | 0 7 files changed, 64 insertions(+), 21 deletions(-) create mode 100644 .github/workflows/publish.yml delete mode 100755 docker-build-all.sh create mode 100755 docker-build-local-and-publish-on-ci-all.sh rename instances-manager/{docker-build.sh => docker-build-local-and-publish-on-ci.sh} (100%) rename workspace-client/{docker-build.sh => docker-build-local-and-publish-on-ci.sh} (100%) rename workspace-job/{docker-build.sh => docker-build-local-and-publish-on-ci.sh} (100%) rename workspace-manager/{docker-build.sh => docker-build-local-and-publish-on-ci.sh} (100%) diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml new file mode 100644 index 0000000..ffaca4c --- /dev/null +++ b/.github/workflows/publish.yml @@ -0,0 +1,43 @@ +name: Publish + +on: + push: + tags: + - '**' + workflow_dispatch: + +jobs: + build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + + - uses: actions/setup-java@v4 + with: + distribution: temurin + java-version: 11 + + - name: Setup Gradle + uses: gradle/gradle-build-action@v2 + + - name: Execute Gradle build + run: ./gradlew build + + # Add support for more platforms with QEMU (optional) + # https://github.com/docker/setup-qemu-action + - name: Set up QEMU + uses: docker/setup-qemu-action@v3 + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v3 + with: + platforms: linux/amd64,linux/arm64 + + - name: Login to Docker Hub + uses: docker/login-action@v3 + with: + DOCKER_HUB_USER: ${{ secrets.DOCKER_HUB_USER }} + DOCKER_HUB_KEY: ${{ secrets.DOCKER_HUB_KEY }} + + - name: Build and Publish Docker + run: ./docker-build-local-and-publish-on-ci-all.sh \ No newline at end of file diff --git a/docker-build-all.sh b/docker-build-all.sh deleted file mode 100755 index b462a0d..0000000 --- a/docker-build-all.sh +++ /dev/null @@ -1,21 +0,0 @@ -#!/bin/sh - -set -e -set -x - -( - cd instances-manager - ./docker-build.sh -) -( - cd workspace-client - ./docker-build.sh -) -( - cd workspace-job - ./docker-build.sh -) -( - cd workspace-manager - ./docker-build.sh -) \ No newline at end of file diff --git a/docker-build-local-and-publish-on-ci-all.sh b/docker-build-local-and-publish-on-ci-all.sh new file mode 100755 index 0000000..11e1fbd --- /dev/null +++ b/docker-build-local-and-publish-on-ci-all.sh @@ -0,0 +1,21 @@ +#!/bin/sh + +set -e +set -x + +( + cd instances-manager + ./docker-build-local-and-publish-on-ci.sh +) +( + cd workspace-client + ./docker-build-local-and-publish-on-ci.sh +) +( + cd workspace-job + ./docker-build-local-and-publish-on-ci.sh +) +( + cd workspace-manager + ./docker-build-local-and-publish-on-ci.sh +) \ No newline at end of file diff --git a/instances-manager/docker-build.sh b/instances-manager/docker-build-local-and-publish-on-ci.sh similarity index 100% rename from instances-manager/docker-build.sh rename to instances-manager/docker-build-local-and-publish-on-ci.sh diff --git a/workspace-client/docker-build.sh b/workspace-client/docker-build-local-and-publish-on-ci.sh similarity index 100% rename from workspace-client/docker-build.sh rename to workspace-client/docker-build-local-and-publish-on-ci.sh diff --git a/workspace-job/docker-build.sh b/workspace-job/docker-build-local-and-publish-on-ci.sh similarity index 100% rename from workspace-job/docker-build.sh rename to workspace-job/docker-build-local-and-publish-on-ci.sh diff --git a/workspace-manager/docker-build.sh b/workspace-manager/docker-build-local-and-publish-on-ci.sh similarity index 100% rename from workspace-manager/docker-build.sh rename to workspace-manager/docker-build-local-and-publish-on-ci.sh