From b486a54ec561307843dcfb31279d02ea504ef789 Mon Sep 17 00:00:00 2001 From: Jeremy Benoist Date: Thu, 22 Oct 2026 08:53:54 +0200 Subject: [PATCH] Allow manually rebuilding and publishing Docker images --- .github/workflows/publish.yml | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 5fa4511..5758ba3 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -3,6 +3,7 @@ name: Publish Docker image on: release: types: [published] + workflow_dispatch: jobs: push_to_registries: @@ -37,6 +38,17 @@ jobs: id: buildx uses: docker/setup-buildx-action@v4 + - name: Read Wallabag version for manual rebuild + if: github.event_name == 'workflow_dispatch' + id: wallabag + run: | + version=$(awk -F= '$1 == "ARG WALLABAG_VERSION" {print $2}' Dockerfile) + if [[ ! "$version" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]]; then + echo "Missing or invalid WALLABAG_VERSION in Dockerfile" >&2 + exit 1 + fi + echo "version=$version" >> "$GITHUB_OUTPUT" + - name: Extract metadata (tags, labels) for Docker id: meta uses: docker/metadata-action@v6 @@ -44,11 +56,17 @@ jobs: images: | wallabag/wallabag ghcr.io/${{ github.repository }} + tags: | + type=ref,event=tag,enable=${{ github.event_name == 'release' }} + type=raw,value=${{ steps.wallabag.outputs.version }},enable=${{ github.event_name == 'workflow_dispatch' }} + type=raw,value=latest,enable=${{ github.event_name == 'workflow_dispatch' }} - name: Build and push Docker images uses: docker/build-push-action@v7 with: context: . + pull: true + no-cache: true push: true tags: ${{ steps.meta.outputs.tags }} labels: ${{ steps.meta.outputs.labels }}