From dfc59f6b9d05d190d9b6346f724b457aa25e9953 Mon Sep 17 00:00:00 2001 From: apple Date: Tue, 23 Apr 2024 16:55:26 +0530 Subject: [PATCH 1/9] feat: Add support for ARM64 --- .github/workflows/docker-alpha.yml | 48 +++++++++++++++++++------- .github/workflows/docker-beta.yml | 47 ++++++++++++++++++------- .github/workflows/release-docker.yml | 51 +++++++++++++++++++++------- 3 files changed, 107 insertions(+), 39 deletions(-) diff --git a/.github/workflows/docker-alpha.yml b/.github/workflows/docker-alpha.yml index d7ac732..5d8fbc2 100644 --- a/.github/workflows/docker-alpha.yml +++ b/.github/workflows/docker-alpha.yml @@ -4,26 +4,48 @@ on: pull_request: branches: [ "main" ] -jobs: +env: + APP_NAME: watchlistarr + DOCKER_FILE: docker/Dockerfile + DOCKER_PLATFORMS: "linux/arm64/v8,linux/amd64" - build: +jobs: + build: runs-on: ubuntu-latest - - steps: - uses: actions/checkout@v3 - - name: Set up environment - run: echo "DOCKER_TAG=$(date +%s)" >> $GITHUB_ENV + - name: Login to DockerHub uses: docker/login-action@v1 with: username: ${{ secrets.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_TOKEN }} - - name: Build the Docker image - run: docker build . --file docker/Dockerfile --tag nylonee/watchlistarr:${DOCKER_TAG} --label=VERSION=${DOCKER_TAG} - - name: Push Docker image - run: | - docker tag nylonee/watchlistarr:${DOCKER_TAG} nylonee/watchlistarr:alpha - docker push nylonee/watchlistarr:${DOCKER_TAG} - docker push nylonee/watchlistarr:alpha + + - name: Docker Metadata action + id: meta + uses: docker/metadata-action@v4.3.0 + with: + images: | + ${{ secrets.DOCKERHUB_USERNAME }}/${{ env.APP_NAME }} + tags: | + type=sha + alpha + + - 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: Build and push Docker images + uses: docker/build-push-action@v4.0.0 + with: + context: . + file: ${{ env.DOCKER_FILE }} + platforms: ${{ env.DOCKER_PLATFORMS }} + push: true + tags: ${{ steps.meta.outputs.tags }} + labels: ${{ steps.meta.outputs.labels }} diff --git a/.github/workflows/docker-beta.yml b/.github/workflows/docker-beta.yml index b63f19a..5836d61 100644 --- a/.github/workflows/docker-beta.yml +++ b/.github/workflows/docker-beta.yml @@ -4,26 +4,47 @@ on: push: branches: [ "main" ] -jobs: +env: + APP_NAME: watchlistarr + DOCKER_FILE: docker/Dockerfile + DOCKER_PLATFORMS: "linux/arm64/v8,linux/amd64" +jobs: build: - runs-on: ubuntu-latest - - steps: - uses: actions/checkout@v3 - - name: Set up environment - run: echo "DOCKER_TAG=$(date +%s)" >> $GITHUB_ENV + - name: Login to DockerHub uses: docker/login-action@v1 with: username: ${{ secrets.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_TOKEN }} - - name: Build the Docker image - run: docker build . --file docker/Dockerfile --tag nylonee/watchlistarr:${DOCKER_TAG} --label=VERSION=${DOCKER_TAG} - - name: Push Docker image - run: | - docker tag nylonee/watchlistarr:${DOCKER_TAG} nylonee/watchlistarr:beta - docker push nylonee/watchlistarr:${DOCKER_TAG} - docker push nylonee/watchlistarr:beta + + - name: Docker Metadata action + id: meta + uses: docker/metadata-action@v4.3.0 + with: + images: | + ${{ secrets.DOCKERHUB_USERNAME }}/${{ env.APP_NAME }} + tags: | + type=sha + beta + + - 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: Build and push Docker images + uses: docker/build-push-action@v4.0.0 + with: + context: . + file: ${{ env.DOCKER_FILE }} + platforms: ${{ env.DOCKER_PLATFORMS }} + push: true + tags: ${{ steps.meta.outputs.tags }} + labels: ${{ steps.meta.outputs.labels }} diff --git a/.github/workflows/release-docker.yml b/.github/workflows/release-docker.yml index 8d30086..ca26bc0 100644 --- a/.github/workflows/release-docker.yml +++ b/.github/workflows/release-docker.yml @@ -4,25 +4,50 @@ on: release: types: [published] -jobs: +env: + APP_NAME: watchlistarr + DOCKER_FILE: docker/Dockerfile + DOCKER_PLATFORMS: "linux/arm64/v8,linux/amd64" - build: +jobs: + build: runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v2 - - name: Set up environment - run: echo "DOCKER_TAG=${{ github.event.release.tag_name }}" >> $GITHUB_ENV + - uses: actions/checkout@v3 + + - name: Login to DockerHub uses: docker/login-action@v1 with: username: ${{ secrets.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_TOKEN }} - - name: Build the Docker image - run: docker build . --file docker/Dockerfile --tag nylonee/watchlistarr:${DOCKER_TAG} --label=VERSION=${DOCKER_TAG} - - name: Push Docker image - run: | - docker tag nylonee/watchlistarr:${DOCKER_TAG} nylonee/watchlistarr:latest - docker push nylonee/watchlistarr:${DOCKER_TAG} - docker push nylonee/watchlistarr:latest + + - name: Docker Metadata action + id: meta + uses: docker/metadata-action@v4.3.0 + with: + images: | + ${{ secrets.DOCKERHUB_USERNAME }}/${{ env.APP_NAME }} + tags: | + type=sha + type=semver,pattern={{version}} + latest + + - 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: Build and push Docker images + uses: docker/build-push-action@v4.0.0 + with: + context: . + file: ${{ env.DOCKER_FILE }} + platforms: ${{ env.DOCKER_PLATFORMS }} + push: true + tags: ${{ steps.meta.outputs.tags }} + labels: ${{ steps.meta.outputs.labels }} From 91b23a5e18ecf060b41586d2f5591cc55c32a294 Mon Sep 17 00:00:00 2001 From: apple Date: Tue, 23 Apr 2024 17:16:45 +0530 Subject: [PATCH 2/9] only run on merge preview --- .github/workflows/docker-alpha.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/docker-alpha.yml b/.github/workflows/docker-alpha.yml index 5d8fbc2..dd585b2 100644 --- a/.github/workflows/docker-alpha.yml +++ b/.github/workflows/docker-alpha.yml @@ -2,7 +2,7 @@ name: Update Docker alpha tag on: pull_request: - branches: [ "main" ] + branches: [actions-merge-preview/**] env: APP_NAME: watchlistarr From fb2bd8ff38c2942d85ddccd0f96bde36da8ab977 Mon Sep 17 00:00:00 2001 From: apple Date: Tue, 23 Apr 2024 18:08:43 +0530 Subject: [PATCH 3/9] use new ubuntu version --- .github/workflows/merge-preview.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/merge-preview.yml b/.github/workflows/merge-preview.yml index 10b4322..3880d4d 100644 --- a/.github/workflows/merge-preview.yml +++ b/.github/workflows/merge-preview.yml @@ -7,7 +7,7 @@ on: jobs: preview: - runs-on: ubuntu-18.04 + runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - uses: nwtgck/actions-merge-preview@develop From 62e4cb033045f92003337cf9258b185ea196197d Mon Sep 17 00:00:00 2001 From: apple Date: Tue, 23 Apr 2024 18:23:52 +0530 Subject: [PATCH 4/9] run on action merge preview branch --- .github/workflows/docker-alpha.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/docker-alpha.yml b/.github/workflows/docker-alpha.yml index dd585b2..8907bfe 100644 --- a/.github/workflows/docker-alpha.yml +++ b/.github/workflows/docker-alpha.yml @@ -1,7 +1,7 @@ name: Update Docker alpha tag on: - pull_request: + push: branches: [actions-merge-preview/**] env: From f000d046d343e2069a0073593d7073a8c0abb68e Mon Sep 17 00:00:00 2001 From: apple Date: Tue, 23 Apr 2024 18:57:27 +0530 Subject: [PATCH 5/9] try to run only on --- .github/workflows/docker-alpha.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/docker-alpha.yml b/.github/workflows/docker-alpha.yml index 8907bfe..0f28bf2 100644 --- a/.github/workflows/docker-alpha.yml +++ b/.github/workflows/docker-alpha.yml @@ -2,7 +2,7 @@ name: Update Docker alpha tag on: push: - branches: [actions-merge-preview/**] + branches: ["actions-merge-preview/**"] env: APP_NAME: watchlistarr From d560e9c2dac989e395960124e7e80e9aaa22d7c7 Mon Sep 17 00:00:00 2001 From: apple Date: Tue, 23 Apr 2024 18:58:44 +0530 Subject: [PATCH 6/9] try on pull request --- .github/workflows/docker-alpha.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/docker-alpha.yml b/.github/workflows/docker-alpha.yml index 0f28bf2..b8ba215 100644 --- a/.github/workflows/docker-alpha.yml +++ b/.github/workflows/docker-alpha.yml @@ -1,7 +1,7 @@ name: Update Docker alpha tag on: - push: + pull_request: branches: ["actions-merge-preview/**"] env: From 08f73b74ffeb11c3420ea1ef9fcdce241d0311d7 Mon Sep 17 00:00:00 2001 From: apple Date: Tue, 23 Apr 2024 19:01:03 +0530 Subject: [PATCH 7/9] run on main --- .github/workflows/docker-alpha.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/docker-alpha.yml b/.github/workflows/docker-alpha.yml index d7ac732..22fbeb8 100644 --- a/.github/workflows/docker-alpha.yml +++ b/.github/workflows/docker-alpha.yml @@ -1,8 +1,8 @@ name: Update Docker alpha tag on: - pull_request: - branches: [ "main" ] + push: + branches: ["actions-merge-preview/**"] jobs: From 48c380ac545e5394d3e146d25024127e54590c8b Mon Sep 17 00:00:00 2001 From: apple Date: Tue, 23 Apr 2024 19:17:51 +0530 Subject: [PATCH 8/9] on push only --- .github/workflows/docker-alpha.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/docker-alpha.yml b/.github/workflows/docker-alpha.yml index b8ba215..0f28bf2 100644 --- a/.github/workflows/docker-alpha.yml +++ b/.github/workflows/docker-alpha.yml @@ -1,7 +1,7 @@ name: Update Docker alpha tag on: - pull_request: + push: branches: ["actions-merge-preview/**"] env: From a610e6f112019b4eeb77b89b407c413295860691 Mon Sep 17 00:00:00 2001 From: apple Date: Tue, 23 Apr 2024 20:11:09 +0530 Subject: [PATCH 9/9] run everytime --- .github/workflows/docker-alpha.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/docker-alpha.yml b/.github/workflows/docker-alpha.yml index 0f28bf2..fe3f7c4 100644 --- a/.github/workflows/docker-alpha.yml +++ b/.github/workflows/docker-alpha.yml @@ -3,6 +3,8 @@ name: Update Docker alpha tag on: push: branches: ["actions-merge-preview/**"] + pull_request: + branches: ["actions-merge-preview/**"] env: APP_NAME: watchlistarr