diff --git a/.gitea/workflows/deploy.yml b/.gitea/workflows/deploy.yml new file mode 100644 index 0000000..6bf13ea --- /dev/null +++ b/.gitea/workflows/deploy.yml @@ -0,0 +1,46 @@ +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 \ No newline at end of file