From d254f6c6606e6c7ced7b7726af7355e554f39b70 Mon Sep 17 00:00:00 2001 From: troogs Date: Sat, 18 Jul 2026 18:21:58 +0200 Subject: [PATCH] Add Docker image publish workflow --- .gitea/workflows/docker-image.yml | 46 +++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 .gitea/workflows/docker-image.yml diff --git a/.gitea/workflows/docker-image.yml b/.gitea/workflows/docker-image.yml new file mode 100644 index 0000000..fda8c42 --- /dev/null +++ b/.gitea/workflows/docker-image.yml @@ -0,0 +1,46 @@ +name: Build And Push Docker Image + +on: + push: + tags: + - "image" + workflow_dispatch: + +jobs: + docker: + runs-on: ubuntu-latest + env: + REGISTRY: git.beging.de + BASE_IMAGE: git.beging.de/troogs/cal-funnel + + steps: + - name: Checkout repository + uses: actions/checkout@v6 + + - name: Login to Gitea registry + run: echo "${{ secrets.REGISTRY_TOKEN }}" | docker login "${{ env.REGISTRY }}" -u "${{ secrets.REGISTRY_USERNAME }}" --password-stdin + + - name: Determine next timestamp tag + shell: bash + run: | + TODAY="$(date -u +%Y%m%d)" + i=1 + while docker manifest inspect "${BASE_IMAGE}:${TODAY}-${i}" > /dev/null 2>&1; do + i=$((i + 1)) + done + + DATE_TAG="${TODAY}-${i}" + echo "DATE_TAG=${DATE_TAG}" >> "$GITHUB_ENV" + echo "Using image tag: ${DATE_TAG}" + + - name: Build docker image + run: | + docker build \ + -t "${{ env.BASE_IMAGE }}:latest" \ + -t "${{ env.BASE_IMAGE }}:${{ env.DATE_TAG }}" \ + . + + - name: Push docker images + run: | + docker push "${{ env.BASE_IMAGE }}:latest" + docker push "${{ env.BASE_IMAGE }}:${{ env.DATE_TAG }}" \ No newline at end of file