name: Deploy Dimension47 on: push: branches: - main jobs: deploy: runs-on: linux-amd64 steps: - name: Pull latest code run: | cd /opt/dimension47 git fetch origin git reset --hard origin/main - name: Install Server Dependencies run: | cd /opt/dimension47/server npm ci --production=false - name: Install Client Dependencies run: | cd /opt/dimension47/client npm ci - name: Generate Prisma Client run: | cd /opt/dimension47/server npx prisma generate - name: Run Migrations run: | cd /opt/dimension47/server npx prisma migrate deploy - name: Build Client run: | cd /opt/dimension47/client echo 'VITE_API_URL=https://dimension47.de/api' > .env npm run build - name: Build Server run: | cd /opt/dimension47/server npm run build - name: Restart Server run: | pm2 delete dimension47 2>/dev/null || true cd /opt/dimension47/server pm2 start dist/src/main.js --name dimension47 pm2 save