name: test_bazarr_execution
on: workflow_dispatch

jobs:
  Test:
    runs-on: ubuntu-latest
    env:
      ROOT_DIRECTORY: .
      SCRIPTS_DIRECTORY: .github/scripts
      FETCH_DEPTH: 15 # Should be enough
    steps:
      - name: Validate branch
        if: ${{ github.ref != 'refs/heads/development' }}
        run: |
          echo This action can only be run on development branch, not ${{ github.ref }}
          exit 1

      - name: Checkout
        uses: actions/checkout@v4
        with:
          fetch-depth: ${{ env.FETCH_DEPTH }}
          ref: development

      - name: Setup NodeJS
        uses: actions/setup-node@v3
        with:
          node-version: "lts/*"

      - name: Install UI Dependencies
        run: npm install
        working-directory: ${{ env.UI_DIRECTORY }}

      - name: Build UI
        run: npm run build
        working-directory: ${{ env.UI_DIRECTORY }}

      - name: Set up Python 3.8
        uses: actions/setup-python@v4
        with:
          python-version: "3.8"

      - name: Install Python dependencies
        run: |
          python -m pip install --upgrade pip
          pip install -r '${{ env.ROOT_DIRECTORY }}/requirements.txt'

      - name: Test Bazarr execution
        run: |
          bash '${{ env.SCRIPTS_DIRECTORY }}/build_test.sh'
