name: Sith taiste

on:
  push:
    branches: [taiste]
  workflow_dispatch:

jobs:
  deployment:
    runs-on: ubuntu-latest
    environment: taiste
    timeout-minutes: 30

    steps:
    - name: SSH Remote Commands
      uses: appleboy/ssh-action@v1.1.0
      with:
        # Proxy
        proxy_host : ${{secrets.PROXY_HOST}}
        proxy_port : ${{secrets.PROXY_PORT}}
        proxy_username : ${{secrets.PROXY_USER}}
        proxy_passphrase: ${{secrets.PROXY_PASSPHRASE}}
        proxy_key: ${{secrets.PROXY_KEY}}

        # Serveur web
        host: ${{secrets.HOST}}
        port : ${{secrets.PORT}}
        username : ${{secrets.USER}}
        key: ${{secrets.KEY}}

        script_stop: true

        # See https://github.com/ae-utbm/sith/wiki/GitHub-Actions#deployment-action
        script: |
          cd ${{secrets.SITH_PATH}}

          git fetch
          git reset --hard origin/taiste
          uv sync --group prod
          npm install
          uv run ./manage.py install_xapian
          uv run ./manage.py migrate
          uv run ./manage.py collectstatic --clear --noinput
          uv run ./manage.py compilemessages

          sudo systemctl restart uwsgi
