diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml new file mode 100644 index 0000000..62e557f --- /dev/null +++ b/.github/workflows/deploy.yml @@ -0,0 +1,35 @@ +name: Deploy to VPS + +on: + push: + branches: + - main + workflow_dispatch: + +jobs: + deploy: + runs-on: ubuntu-latest + steps: + - name: Checkout Repository + uses: actions/checkout@v4 + + - name: Deploy via SSH + uses: appleboy/ssh-action@v1.0.3 + env: + ENV_FILE: ${{ secrets.ENV_FILE }} + with: + host: ${{ secrets.VPS_HOST }} + username: ${{ secrets.VPS_USERNAME }} + key: ${{ secrets.VPS_SSH_KEY }} + envs: ENV_FILE + script: | + cd /opt/imphenbot || exit + + # Pull latest changes + git pull origin main + + # Write environment variables from GitHub Secrets + echo "$ENV_FILE" > .env + + # Build and restart containers + docker-compose up -d --build