diff --git a/.gitea/workflows/build-and-push.yaml b/.gitea/workflows/build-and-push.yaml new file mode 100644 index 0000000..dbff5d3 --- /dev/null +++ b/.gitea/workflows/build-and-push.yaml @@ -0,0 +1,46 @@ +name: Build & Push Docker + +on: + push: + branches: [ "main" ] + workflow_dispatch: + +jobs: + build: + runs-on: [self-hosted] # tvůj Gitea runner + env: + REGISTRY: git.apps.sukany.cz + + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Lowercase image name (owner/repo) + run: | + IMAGE_PATH="$(echo "${{ github.repository }}" | tr '[:upper:]' '[:lower:]')" + echo "IMAGE=${{ env.REGISTRY }}/${IMAGE_PATH}" >> $GITHUB_ENV + echo "TAG_SHA=${{ github.sha }}" >> $GITHUB_ENV + echo "TAG_BRANCH=$(echo "${{ github.ref_name }}" | tr '/' '-')" >> $GITHUB_ENV + + - name: Setup Buildx + uses: docker/setup-buildx-action@v3 + + - name: Login to Gitea Registry + uses: docker/login-action@v3 + with: + registry: ${{ env.REGISTRY }} + username: ${{ secrets.CR_USER }} + password: ${{ secrets.CR_PAT }} + + - name: Build & Push + uses: docker/build-push-action@v6 + with: + context: . + push: true + tags: | + ${{ env.IMAGE }}:latest + ${{ env.IMAGE }}:${{ env.TAG_BRANCH }} + ${{ env.IMAGE }}:${{ env.TAG_SHA }} + cache-from: type=registry,ref=${{ env.IMAGE }}:buildcache + cache-to: type=registry,ref=${{ env.IMAGE }}:buildcache,mode=max +