name: Build and Deploy # Validates on PR and main; uploads build artifact on main. # Production traffic: Proxmox VMID 7810 (see docs/deployment/PROXMOX_DEPLOYMENT.md). # GitHub Pages is NOT canonical for mim4u.org — do not set CNAME to mim4u.org here. on: push: branches: [main] pull_request: branches: [main] jobs: validate: # Same-repo reusable workflow; GitHub runs the called workflow at the caller commit. uses: Order-of-Hospitallers/miracles_in_motion/.github/workflows/validate.yml@main artifact: name: Upload build artifact needs: validate runs-on: ubuntu-latest if: github.ref == 'refs/heads/main' && github.event_name == 'push' steps: - uses: actions/checkout@v4 - name: Setup Node.js uses: actions/setup-node@v4 with: node-version: '22' cache: npm - name: Install ImageMagick (brand asset prebuild) run: sudo apt-get update && sudo apt-get install -y imagemagick - name: Install dependencies run: npm ci - name: Build application run: npm run build env: VITE_APP_VERSION: ${{ github.sha }} - name: Upload dist artifact uses: actions/upload-artifact@v4 with: name: dist-main-${{ github.sha }} path: dist/ if-no-files-found: error retention-days: 14