name: Deploy on: push: branches: [main] jobs: deploy: runs-on: vps-host steps: - uses: actions/checkout@v4 - name: Build API run: | cd api npm ci npx prisma generate npm run build - name: Build Web run: | cd web npm ci npm run build - name: Run Database Migrations run: | cd api DATABASE_URL=${{ secrets.DATABASE_URL }} npx prisma migrate deploy - name: Deploy API run: | pm2 stop skymoney-api || true rm -rf /opt/skymoney/api/dist /opt/skymoney/api/node_modules cp -r api/dist /opt/skymoney/api/ cp -r api/node_modules /opt/skymoney/api/ cp -r api/prisma /opt/skymoney/api/ pm2 start /opt/skymoney/api/dist/server.js --name skymoney-api - name: Deploy Web run: | rm -rf /var/www/skymoney/dist/* cp -r web/dist/* /var/www/skymoney/dist/ - name: Reload Nginx run: sudo systemctl reload nginx