From c096aee444bd590562ddd1445364df5983e8f411 Mon Sep 17 00:00:00 2001 From: B Marinov Date: Sat, 22 Aug 2026 22:14:08 +0200 Subject: [PATCH 1/2] Push image to docker hub on release --- .github/workflows/release.yml | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 25b6a55..b13104f 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -13,6 +13,8 @@ jobs: env: REGISTRY: ghcr.io IMAGE_NAME: ${{ github.repository }} + DOCKERHUB_IMAGE: docker.io/getclustered/garage-storage-controller + DOCKERHUB_USERNAME: ${{ secrets.DOCKERHUB_USERNAME }} permissions: contents: write @@ -72,6 +74,24 @@ jobs: -t ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:latest \ ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:${{ steps.version.outputs.VERSION }} + - name: Log in to Docker Hub + if: env.DOCKERHUB_USERNAME != '' + run: echo "${{ secrets.DOCKERHUB_TOKEN }}" | docker login docker.io -u "${{ env.DOCKERHUB_USERNAME }}" --password-stdin + + - name: Push image to Docker Hub mirror + if: env.DOCKERHUB_USERNAME != '' + run: | + docker buildx imagetools create \ + -t ${{ env.DOCKERHUB_IMAGE }}:${{ steps.version.outputs.VERSION }} \ + ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:${{ steps.version.outputs.VERSION }} + + - name: Push latest to Docker Hub + if: github.ref_type == 'tag' && env.DOCKERHUB_USERNAME != '' + run: | + docker buildx imagetools create \ + -t ${{ env.DOCKERHUB_IMAGE }}:latest \ + ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:${{ steps.version.outputs.VERSION }} + - name: Package CRDs if: github.ref_type == 'tag' run: kubectl kustomize ./config/install/crds -o crds-${{ steps.version.outputs.VERSION }}.yaml @@ -87,6 +107,7 @@ jobs: body: | Controller image: `${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:${{ steps.version.outputs.VERSION }}` + (mirror at `${{ env.DOCKERHUB_IMAGE }}`) ## Changes From 4bebbf88bbc32e2c221974493ad071fb6641f2fd Mon Sep 17 00:00:00 2001 From: B Marinov Date: Sat, 22 Aug 2026 22:29:09 +0200 Subject: [PATCH 2/2] Use docker login action --- .github/workflows/release.yml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index b13104f..d6bb120 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -76,7 +76,10 @@ jobs: - name: Log in to Docker Hub if: env.DOCKERHUB_USERNAME != '' - run: echo "${{ secrets.DOCKERHUB_TOKEN }}" | docker login docker.io -u "${{ env.DOCKERHUB_USERNAME }}" --password-stdin + uses: docker/login-action@v4 + with: + username: ${{ env.DOCKERHUB_USERNAME }} + password: ${{ secrets.DOCKERHUB_TOKEN }} - name: Push image to Docker Hub mirror if: env.DOCKERHUB_USERNAME != ''