diff --git a/ .gitea/workflows/deploy.yml b/ .gitea/workflows/deploy.yml new file mode 100644 index 00000000..59e1e93b --- /dev/null +++ b/ .gitea/workflows/deploy.yml @@ -0,0 +1,34 @@ +name: Remote Build and Deploy + +on: + push: + branches: + +main, + +jobs: + deploy: + runs-on: ubuntu-latest + steps: + +name: Checkout Repository + uses: actions/checkout@v4, + + +name: Execute Remote SSH Commands to Build and Deploy + uses: appleboy/ssh-action@v1.0.3 + with: + host: ${{ secrets.SSH_HOST }} + username: ${{ secrets.SSH_USER }} + key: ${{ secrets.SSH_PRIVATE_KEY }} + port: ${{ secrets.SSH_PORT }} + script: | + echo "--- Starting Deployment Pipeline ---" + # 1. Navigate to your project folder on the VPS + cd /var/www/my-project + # 2. Sync the VPS local code with your Gitea repository + git fetch --all + git reset --hard origin/main + # 3. Build & Restart Commands (Uncomment or adapt to your stack)# Node.js example:# npm install --production# npm run build# pm2 restart my-app + # Docker example:# docker compose down# docker compose up -d --build + echo "--- Deployment Completed Successfully ---" \ No newline at end of file