name: Deploy bericht

on:
  push:
    tags:
      - 'v*'
    branches:
      - main

jobs:
  deploy:
    runs-on: docker
    if: startsWith(github.ref, 'refs/tags/v') || contains(github.event.head_commit.message, '[deploy]')
    steps:
      - name: Checkout
        run: |
          git clone --depth 1 --branch "${GITHUB_REF_NAME}" \
            "https://token:${{ secrets.GIT_TOKEN }}@git.data-it-solution.de/${GITHUB_REPOSITORY}.git" .

      - name: Deploy nach Dolibarr
        run: |
          DEPLOY_PATH="/mnt/appdata/firma/dolibarr-202509/modules/bericht"
          REF="${GITHUB_REF#refs/*/}"

          echo "Deploye ${REF} nach ${DEPLOY_PATH} ..."

          if [ -d "$DEPLOY_PATH" ]; then
            find "$DEPLOY_PATH" -mindepth 1 -not -path '*/.git/*' -not -name '.git' -delete 2>/dev/null || true
          else
            mkdir -p "$DEPLOY_PATH"
          fi

          rsync -a \
            --exclude='.git' \
            --exclude='.forgejo' \
            --exclude='.gitignore' \
            --exclude='CLAUDE.md' \
            --exclude='test/' \
            ./ "$DEPLOY_PATH/"

          echo "Deployment erfolgreich: ${REF} -> ${DEPLOY_PATH}"
