From 58cefedb0365b1df351ba23284461299d3c94a38 Mon Sep 17 00:00:00 2001 From: pluja Date: Thu, 26 Oct 2023 22:58:33 +0200 Subject: [PATCH] improve workflows --- .github/workflows/docker-image-gpu.yml | 38 ---------------- .../{docker-image.yml => docker-images.yml} | 24 +++++++--- .../docker-transcription-api-gpu.yml | 45 +++++++++++++++++++ .../workflows/docker-transcription-api.yml | 45 +++++++++++++++++++ 4 files changed, 107 insertions(+), 45 deletions(-) delete mode 100644 .github/workflows/docker-image-gpu.yml rename .github/workflows/{docker-image.yml => docker-images.yml} (57%) create mode 100644 .github/workflows/docker-transcription-api-gpu.yml create mode 100644 .github/workflows/docker-transcription-api.yml diff --git a/.github/workflows/docker-image-gpu.yml b/.github/workflows/docker-image-gpu.yml deleted file mode 100644 index 3c20323..0000000 --- a/.github/workflows/docker-image-gpu.yml +++ /dev/null @@ -1,38 +0,0 @@ -name: Docker Transcription-API GPU - -on: - release: - types: [published] - -jobs: - build: - name: Build - runs-on: ubuntu-latest - - steps: - - name: Checkout - uses: actions/checkout@v3 - - - name: Set up QEMU - uses: docker/setup-qemu-action@v2 - - - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v2 - - - name: Login to DockerHub - uses: docker/login-action@v2 - with: - username: ${{ secrets.DOCKERHUB_USERNAME }} - password: ${{ secrets.DOCKERHUB_TOKEN }} - - - name: Build and push Docker images - uses: docker/build-push-action@v4 - with: - context: transcription-api - file: transcription-api/Dockerfile.gpu - platforms: linux/amd64,linux/arm64 - push: true - tags: | - ${{ format('{0}/whishper-transcription-api:{1}-gpu', secrets.DOCKERHUB_USERNAME, github.event.release.tag_name) }} - ${{ format('{0}/whishper-transcription-api:latest-gpu', secrets.DOCKERHUB_USERNAME) }} - diff --git a/.github/workflows/docker-image.yml b/.github/workflows/docker-images.yml similarity index 57% rename from .github/workflows/docker-image.yml rename to .github/workflows/docker-images.yml index fc0137e..05d09aa 100644 --- a/.github/workflows/docker-image.yml +++ b/.github/workflows/docker-images.yml @@ -1,4 +1,4 @@ -name: Docker Image CI +name: Whishper frontend and backend images on: release: @@ -11,26 +11,26 @@ jobs: strategy: matrix: - directory: ['backend', 'frontend', 'transcription-api'] + directory: ['backend', 'frontend'] steps: - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Set up QEMU - uses: docker/setup-qemu-action@v2 + uses: docker/setup-qemu-action@v3 - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v2 + uses: docker/setup-buildx-action@v3 - name: Login to DockerHub - uses: docker/login-action@v2 + uses: docker/login-action@v3 with: username: ${{ secrets.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_TOKEN }} - name: Build and push Docker images - uses: docker/build-push-action@v4 + uses: docker/build-push-action@v5 with: context: ${{ matrix.directory }} file: ${{ matrix.directory }}/Dockerfile @@ -38,5 +38,15 @@ jobs: push: true tags: | ${{ format('{0}/whishper-{1}:{2}', secrets.DOCKERHUB_USERNAME, matrix.directory, github.event.release.tag_name) }} + + - name: Build and push Docker images + if: ${{ !github.event.release.prerelease }} + uses: docker/build-push-action@v5 + with: + context: ${{ matrix.directory }} + file: ${{ matrix.directory }}/Dockerfile + platforms: linux/amd64,linux/arm64 + push: true + tags: | ${{ format('{0}/whishper-{1}:latest', secrets.DOCKERHUB_USERNAME, matrix.directory) }} diff --git a/.github/workflows/docker-transcription-api-gpu.yml b/.github/workflows/docker-transcription-api-gpu.yml new file mode 100644 index 0000000..6c07742 --- /dev/null +++ b/.github/workflows/docker-transcription-api-gpu.yml @@ -0,0 +1,45 @@ +name: Docker Transcription-API GPU + +on: + release: + types: [published] + +jobs: + build: + name: Build + runs-on: ubuntu-latest + + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Set up QEMU + uses: docker/setup-qemu-action@v3 + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v3 + + - name: Login to DockerHub + uses: docker/login-action@v3 + with: + username: ${{ secrets.DOCKERHUB_USERNAME }} + password: ${{ secrets.DOCKERHUB_TOKEN }} + + - name: Build and push Docker images + uses: docker/build-push-action@v5 + with: + context: transcription-api + file: transcription-api/Dockerfile.gpu + platforms: linux/amd64,linux/arm64 + push: true + tags: ${{ format('{0}/whishper-transcription-api:{1}-gpu', secrets.DOCKERHUB_USERNAME, github.event.release.tag_name) }} + + - name: Build and push Docker images as latest + if: ${{ !github.event.release.prerelease }} + uses: docker/build-push-action@v5 + with: + context: transcription-api + file: transcription-api/Dockerfile.gpu + platforms: linux/amd64,linux/arm64 + push: true + tags: ${{ format('{0}/whishper-transcription-api:latest-gpu', secrets.DOCKERHUB_USERNAME) }} \ No newline at end of file diff --git a/.github/workflows/docker-transcription-api.yml b/.github/workflows/docker-transcription-api.yml new file mode 100644 index 0000000..1544a68 --- /dev/null +++ b/.github/workflows/docker-transcription-api.yml @@ -0,0 +1,45 @@ +name: Docker Transcription-API + +on: + release: + types: [published] + +jobs: + build: + name: Build + runs-on: ubuntu-latest + + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Set up QEMU + uses: docker/setup-qemu-action@v3 + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v3 + + - name: Login to DockerHub + uses: docker/login-action@v3 + with: + username: ${{ secrets.DOCKERHUB_USERNAME }} + password: ${{ secrets.DOCKERHUB_TOKEN }} + + - name: Build and push Docker images + uses: docker/build-push-action@v5 + with: + context: transcription-api + file: transcription-api/Dockerfile + platforms: linux/amd64,linux/arm64 + push: true + tags: ${{ format('{0}/whishper-transcription-api:{1}', secrets.DOCKERHUB_USERNAME, github.event.release.tag_name) }} + + - name: Build and push Docker images as latest + if: ${{ !github.event.release.prerelease }} + uses: docker/build-push-action@v5 + with: + context: transcription-api + file: transcription-api/Dockerfile + platforms: linux/amd64,linux/arm64 + push: true + tags: ${{ format('{0}/whishper-transcription-api:latest', secrets.DOCKERHUB_USERNAME) }} \ No newline at end of file