From 36b4dc2317fca28c5bdf86357a0dfe69706e3bc7 Mon Sep 17 00:00:00 2001 From: Shawn Date: Fri, 17 Mar 2023 08:00:35 -0400 Subject: [PATCH 1/5] Create .github/workflows/docker-image.yml --- .github/workflows/docker-image.yml | 69 ++++++++++++++++++++++++++++++ 1 file changed, 69 insertions(+) create mode 100644 .github/workflows/docker-image.yml diff --git a/.github/workflows/docker-image.yml b/.github/workflows/docker-image.yml new file mode 100644 index 0000000..086c2c6 --- /dev/null +++ b/.github/workflows/docker-image.yml @@ -0,0 +1,69 @@ +name: Docker Image CI + +on: + push: + branches: [ "master" ] + +permissions: + packages: write + +jobs: + + build: + + runs-on: ubuntu-latest + + steps: + - name: Checkout Code + uses: actions/checkout@v3 + + - name: Docker Metadata action + uses: docker/metadata-action@v4.3.0 + with: + images: | + ${{ secrets.DOCKERHUB_USERNAME }}/rdt-client + ghcr.io/${{ secrets.DOCKERHUB_USERNAME }}/rdt-client + tags: | + type=schedule + type=ref,event=branch + type=ref,event=pr + type=semver,pattern={{version}} + type=semver,pattern={{major}}.{{minor}} + type=semver,pattern={{major}} + type=sha + # List of custom labels + # labels: # optional + + - name: Docker Setup QEMU + uses: docker/setup-qemu-action@v2.1.0 + + - name: Docker Setup Buildx + uses: docker/setup-buildx-action@v2.5.0 + with: + buildkitd-flags: --debug + + - name: Docker Login + if: github.event_name != 'pull_request' + uses: docker/login-action@v2.1.0 + with: + username: ${{ secrets.DOCKERHUB_USERNAME }} + password: ${{ secrets.DOCKERHUB_TOKEN }} + + - name: Login to GHCR + if: github.event_name != 'pull_request' + uses: docker/login-action@v2.1.0 + with: + registry: ghcr.io + username: ${{ github.repository_owner }} + password: ${{ secrets.GITHUB_TOKEN }} + + - name: Build and push Docker images + uses: docker/build-push-action@v4.0.0 + with: + context: . + file: ./Dockerfile.dev + platforms: "linux/arm/v7,linux/arm64/v8,linux/amd64" + push: ${{ github.event_name != 'pull_request' }} + tags: ${{ steps.meta.outputs.tags }} + labels: ${{ steps.meta.outputs.labels }} + From db30217509b113ba21edc1978d9779876e27240e Mon Sep 17 00:00:00 2001 From: Shawn Date: Fri, 17 Mar 2023 08:02:01 -0400 Subject: [PATCH 2/5] Update docker-image.yml --- .github/workflows/docker-image.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/docker-image.yml b/.github/workflows/docker-image.yml index 086c2c6..b607acb 100644 --- a/.github/workflows/docker-image.yml +++ b/.github/workflows/docker-image.yml @@ -18,6 +18,7 @@ jobs: uses: actions/checkout@v3 - name: Docker Metadata action + id: meta uses: docker/metadata-action@v4.3.0 with: images: | From 158720e1140ef0783694685a8469ac6fc909526e Mon Sep 17 00:00:00 2001 From: Shawn Date: Fri, 17 Mar 2023 16:10:42 -0400 Subject: [PATCH 3/5] Update docker-image.yml --- .github/workflows/docker-image.yml | 36 +++++++++++++++++++++++++----- 1 file changed, 31 insertions(+), 5 deletions(-) diff --git a/.github/workflows/docker-image.yml b/.github/workflows/docker-image.yml index b607acb..543b1e4 100644 --- a/.github/workflows/docker-image.yml +++ b/.github/workflows/docker-image.yml @@ -7,6 +7,12 @@ on: permissions: packages: write +env: + APP_NAME: rdt-client + DOCKER_FILE: ./Dockerfile + ENABLE_DOCKERHUB: FALSE + ENABLE_GHCR: TRUE + jobs: build: @@ -22,8 +28,8 @@ jobs: uses: docker/metadata-action@v4.3.0 with: images: | - ${{ secrets.DOCKERHUB_USERNAME }}/rdt-client - ghcr.io/${{ secrets.DOCKERHUB_USERNAME }}/rdt-client + # ${{ secrets.DOCKERHUB_USERNAME }}/$APP_NAME + ghcr.io/${{ secrets.DOCKERHUB_USERNAME }}/$APP_NAME tags: | type=schedule type=ref,event=branch @@ -44,14 +50,14 @@ jobs: buildkitd-flags: --debug - name: Docker Login - if: github.event_name != 'pull_request' + if: ${{ github.event_name != 'pull_request' && env.ENABLE_DOCKERHUB == TRUE }} uses: docker/login-action@v2.1.0 with: username: ${{ secrets.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_TOKEN }} - name: Login to GHCR - if: github.event_name != 'pull_request' + if: ${{ github.event_name != 'pull_request' && env.ENABLE_GHCR == TRUE }} uses: docker/login-action@v2.1.0 with: registry: ghcr.io @@ -62,9 +68,29 @@ jobs: uses: docker/build-push-action@v4.0.0 with: context: . - file: ./Dockerfile.dev + file: $DOCKER_FILE platforms: "linux/arm/v7,linux/arm64/v8,linux/amd64" push: ${{ github.event_name != 'pull_request' }} tags: ${{ steps.meta.outputs.tags }} labels: ${{ steps.meta.outputs.labels }} + - name: Docker Hub Registry Description + if: ${{ env.ENABLE_DOCKERHUB == TRUE }} + uses: peter-evans/dockerhub-description@v3.3.0 + with: + username: ${{ secrets.DOCKERHUB_USERNAME }} + password: ${{ secrets.DOCKERHUB_TOKEN }} + repository: ${{ secrets.DOCKERHUB_USERNAME }}/$APP_NAME + short-description: | + a web interface to manage your torrents on Real-Debrid, AllDebrid or Premiumize. + readme-filepath: ./README-DOCKER.md + + - name: Github Registry Description + if: ${{ env.ENABLE_GHCR == TRUE }} + uses: peter-evans/dockerhub-description@v3.3.0 + with: + username: ${{ github.repository_owner }} + password: ${{ secrets.GITHUB_TOKEN }} + short-description: | + A web interface to manage your torrents on Real-Debrid, AllDebrid or Premiumize. + readme-filepath: ./README-DOCKER.md From d55bb3ce233ad8422b0c6f0d40faa5cc57ceb3e6 Mon Sep 17 00:00:00 2001 From: Shawn Date: Fri, 17 Mar 2023 16:11:55 -0400 Subject: [PATCH 4/5] Update docker-image.yml --- .github/workflows/docker-image.yml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/docker-image.yml b/.github/workflows/docker-image.yml index 543b1e4..910b95c 100644 --- a/.github/workflows/docker-image.yml +++ b/.github/workflows/docker-image.yml @@ -10,8 +10,8 @@ permissions: env: APP_NAME: rdt-client DOCKER_FILE: ./Dockerfile - ENABLE_DOCKERHUB: FALSE - ENABLE_GHCR: TRUE + ENABLE_DOCKERHUB: 0 + ENABLE_GHCR: 1 jobs: @@ -50,14 +50,14 @@ jobs: buildkitd-flags: --debug - name: Docker Login - if: ${{ github.event_name != 'pull_request' && env.ENABLE_DOCKERHUB == TRUE }} + if: ${{ github.event_name != 'pull_request' && env.ENABLE_DOCKERHUB == 1 }} uses: docker/login-action@v2.1.0 with: username: ${{ secrets.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_TOKEN }} - name: Login to GHCR - if: ${{ github.event_name != 'pull_request' && env.ENABLE_GHCR == TRUE }} + if: ${{ github.event_name != 'pull_request' && env.ENABLE_GHCR == 1 }} uses: docker/login-action@v2.1.0 with: registry: ghcr.io @@ -75,7 +75,7 @@ jobs: labels: ${{ steps.meta.outputs.labels }} - name: Docker Hub Registry Description - if: ${{ env.ENABLE_DOCKERHUB == TRUE }} + if: ${{ env.ENABLE_DOCKERHUB == 1 }} uses: peter-evans/dockerhub-description@v3.3.0 with: username: ${{ secrets.DOCKERHUB_USERNAME }} @@ -86,7 +86,7 @@ jobs: readme-filepath: ./README-DOCKER.md - name: Github Registry Description - if: ${{ env.ENABLE_GHCR == TRUE }} + if: ${{ env.ENABLE_GHCR == 1 }} uses: peter-evans/dockerhub-description@v3.3.0 with: username: ${{ github.repository_owner }} From 0326bb277a7c3844aef20704b5c71b2df4a52424 Mon Sep 17 00:00:00 2001 From: Shawn Date: Fri, 17 Mar 2023 16:13:38 -0400 Subject: [PATCH 5/5] Update docker-image.yml --- .github/workflows/docker-image.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/docker-image.yml b/.github/workflows/docker-image.yml index 910b95c..d4b9910 100644 --- a/.github/workflows/docker-image.yml +++ b/.github/workflows/docker-image.yml @@ -28,8 +28,8 @@ jobs: uses: docker/metadata-action@v4.3.0 with: images: | - # ${{ secrets.DOCKERHUB_USERNAME }}/$APP_NAME - ghcr.io/${{ secrets.DOCKERHUB_USERNAME }}/$APP_NAME + # ${{ secrets.DOCKERHUB_USERNAME }}/${{ env.APP_NAME }} + ghcr.io/${{ secrets.DOCKERHUB_USERNAME }}/${{ env.APP_NAME }} tags: | type=schedule type=ref,event=branch @@ -68,7 +68,7 @@ jobs: uses: docker/build-push-action@v4.0.0 with: context: . - file: $DOCKER_FILE + file: ${{ env.DOCKER_FILE }} platforms: "linux/arm/v7,linux/arm64/v8,linux/amd64" push: ${{ github.event_name != 'pull_request' }} tags: ${{ steps.meta.outputs.tags }} @@ -80,7 +80,7 @@ jobs: with: username: ${{ secrets.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_TOKEN }} - repository: ${{ secrets.DOCKERHUB_USERNAME }}/$APP_NAME + repository: ${{ secrets.DOCKERHUB_USERNAME }}/${{ env.APP_NAME }} short-description: | a web interface to manage your torrents on Real-Debrid, AllDebrid or Premiumize. readme-filepath: ./README-DOCKER.md