name: Deploy on: push: branches: - main jobs: deploy: runs-on: node-20 steps: - name: Checkout uses: https://code.forgejo.org/actions/checkout@v4 - name: Install dependencies run: | curl -LsSf https://astral.sh/uv/install.sh | sh uv sync - name: Build site run: uv run python generate.py - name: Deploy to Cloudflare Pages env: CLOUDFLARE_API_TOKEN: ${{ secrets.CLOUDFLARE_API_TOKEN }} CLOUDFLARE_ACCOUNT_ID: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }} run: | npx wrangler pages project create ${{ secrets.CF_PAGES_PROJECT_NAME }} --production-branch=main 2>/dev/null || true npx wrangler pages deploy dist/ \ --project-name=${{ secrets.CF_PAGES_PROJECT_NAME }} \ --commit-dirty=true