From 4dd114597f5a4483cc416048570f0307f9a4ee68 Mon Sep 17 00:00:00 2001 From: carsten Date: Thu, 30 Oct 2025 20:39:02 +0000 Subject: [PATCH] Update .gitea/workflows/docker.yml --- .gitea/workflows/docker.yml | 68 ++++++++++++++++--------------------- 1 file changed, 29 insertions(+), 39 deletions(-) diff --git a/.gitea/workflows/docker.yml b/.gitea/workflows/docker.yml index 29a5087..2deeb07 100644 --- a/.gitea/workflows/docker.yml +++ b/.gitea/workflows/docker.yml @@ -9,48 +9,38 @@ jobs: docker: runs-on: [docker, linux, x86_64] steps: - - name: Checkout + - name: Debug env (optional) run: | - git clone ${{ gitea.repository.clone_url }} . - # uses: actions/checkout@v4 + echo "GITHUB_SERVER_URL=$GITHUB_SERVER_URL" + echo "GITHUB_REPOSITORY=$GITHUB_REPOSITORY" - - name: Set up QEMU (optional for multi-arch) - uses: docker/setup-qemu-action@v3 + # PUBLIC repo (ingen token) + - name: Checkout (public) + if: ${{ !secrets.CI_CLONE_TOKEN }} + run: | + git clone "${GITHUB_SERVER_URL}/${GITHUB_REPOSITORY}.git" . + git rev-parse --short HEAD - - name: Set up Buildx - uses: docker/setup-buildx-action@v3 + # PRIVATE repo (brug PAT/token gemt som secret CI_CLONE_TOKEN) + - name: Checkout (private) + if: ${{ secrets.CI_CLONE_TOKEN }} + run: | + git clone "https://${{ secrets.CI_CLONE_TOKEN }}@${GITHUB_SERVER_URL#https://}/${GITHUB_REPOSITORY}.git" . + git rev-parse --short HEAD - # Login only if secrets are present - - name: Login to registry + - name: Build image (amd64) + run: | + docker build -t jottacloud:latest . + + # (Valgfrit) Push til registry hvis du har secrets sat + - name: Login & push if: ${{ secrets.REGISTRY && secrets.REGISTRY_USER && secrets.REGISTRY_PASSWORD }} - uses: docker/login-action@v3 - with: - registry: ${{ secrets.REGISTRY }} - username: ${{ secrets.REGISTRY_USER }} - password: ${{ secrets.REGISTRY_PASSWORD }} - - - name: Compute image tags - id: meta run: | - IMAGE_NAME="${{ secrets.IMAGE_NAME || 'jottacloud' }}" - REG="${{ secrets.REGISTRY || '' }}" - if [ -n "$REG" ]; then - FULL="${REG}/${IMAGE_NAME}" - else - # Fallback: local name (no push) - FULL="${IMAGE_NAME}" - fi - echo "full=${FULL}" >> $GITHUB_OUTPUT - # Tag with commit sha and 'latest' - echo "tags=${FULL}:latest,${FULL}:${GITHUB_SHA::7}" >> $GITHUB_OUTPUT - - - name: Build (and push if logged in) - uses: docker/build-push-action@v5 - with: - context: . - platforms: linux/amd64 - push: ${{ secrets.REGISTRY && secrets.REGISTRY_USER && secrets.REGISTRY_PASSWORD }} - tags: ${{ steps.meta.outputs.tags }} - labels: | - org.opencontainers.image.source=${{ github.repository }} - org.opencontainers.image.revision=${{ github.sha }} + REG="${{ secrets.REGISTRY }}" + IMG="${{ secrets.IMAGE_NAME || 'jottacloud' }}" + TAG_SHORT="$(git rev-parse --short HEAD)" + docker login "$REG" -u "${{ secrets.REGISTRY_USER }}" -p "${{ secrets.REGISTRY_PASSWORD }}" + docker tag jottacloud:latest "$REG/$IMG:latest" + docker tag jottacloud:latest "$REG/$IMG:${TAG_SHORT}" + docker push "$REG/$IMG:latest" + docker push "$REG/$IMG:${TAG_SHORT}"