From 0bea8c6e0b6e0b324d66a2200be611d7be107be4 Mon Sep 17 00:00:00 2001 From: Karl Date: Sat, 5 Jul 2025 10:59:29 +0100 Subject: [PATCH] new publish --- .gitea/workflows/docker-publish.yml | 60 ++++++++++++++--------------- 1 file changed, 29 insertions(+), 31 deletions(-) diff --git a/.gitea/workflows/docker-publish.yml b/.gitea/workflows/docker-publish.yml index b3bd1f3..c0191e1 100644 --- a/.gitea/workflows/docker-publish.yml +++ b/.gitea/workflows/docker-publish.yml @@ -2,46 +2,44 @@ name: Build and Publish Docker Image on: push: - branches: [main] - tags: ['*'] # triggers on any tag push + branches: + - main + tags: + - "v*.*.*" workflow_dispatch: jobs: build-and-push: runs-on: ubuntu-latest - steps: - - name: Checkout repository + - name: Checkout uses: actions/checkout@v4 + - name: Docker meta + id: meta + uses: docker/metadata-action@v5 + with: + images: ${{ secrets.REGISTRY }}/${{ secrets.USERNAME }}/ktv-ui + tags: | + type=raw,value=latest,enable={{is_default_branch}} + type=semver,pattern={{version}} + type=semver,pattern={{major}}.{{minor}} + type=semver,pattern={{major}} + - name: Set up Docker Buildx uses: docker/setup-buildx-action@v3 - - name: Log in to Docker Registry - run: echo "${{ secrets.PASSWORD }}" | docker login ${{ secrets.REGISTRY }} -u "${{ secrets.USERNAME }}" --password-stdin + - name: Login to Docker Registry + uses: docker/login-action@v3 + with: + registry: ${{ secrets.REGISTRY }} + username: ${{ secrets.USERNAME }} + password: ${{ secrets.PASSWORD }} - - name: Build and Push Docker Images - run: | - IMAGE_NAME="ktv-ui" - REGISTRY="${{ secrets.REGISTRY }}" - USERNAME="${{ secrets.USERNAME }}" - IMAGE_LATEST="$REGISTRY/$USERNAME/$IMAGE_NAME:latest" - - # Always build and tag as latest - echo "🔧 Building $IMAGE_LATEST" - docker build -t $IMAGE_LATEST . - - echo "📤 Pushing $IMAGE_LATEST" - docker push $IMAGE_LATEST - - # If this is a tag push, tag the image accordingly - if [[ "${GITHUB_REF}" == refs/tags/* ]]; then - GIT_TAG="${GITHUB_REF#refs/tags/}" - IMAGE_TAGGED="$REGISTRY/$USERNAME/$IMAGE_NAME:$GIT_TAG" - - echo "🏷️ Also tagging as $IMAGE_TAGGED" - docker tag $IMAGE_LATEST $IMAGE_TAGGED - - echo "📤 Pushing $IMAGE_TAGGED" - docker push $IMAGE_TAGGED - fi + - name: Build and push + uses: docker/build-push-action@v5 + with: + context: . + push: true + tags: ${{ steps.meta.outputs.tags }} + labels: ${{ steps.meta.outputs.labels }}