name: Deploy to VPS on: push: branches: - main workflow_dispatch: jobs: build: runs-on: ubuntu-latest defaults: run: working-directory: magricambi steps: - name: Checkout uses: actions/checkout@v4 - name: Setup Node.js uses: actions/setup-node@v4 with: node-version: "20" cache: npm cache-dependency-path: app/package-lock.json - name: Install dependencies run: npm ci - name: Build run: npm run build deploy: needs: build runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v4 - name: Deploy via SSH uses: appleboy/ssh-action@v1.0.3 with: host: ${{ secrets.VPS_HOST }} username: ${{ secrets.VPS_USER }} key: ${{ secrets.VPS_SSH_KEY }} script: | echo "START DEPLOY" cd /root/app pwd ls -la git pull docker compose up -d --build