name: Documentation test build

on:
  pull_request:
    paths:
      - "src/**"
      - "docs/**"
      - ".github/**"

jobs:
  build_and_package:
    runs-on: ubuntu-latest
    defaults:
      run:
        shell: bash -l {0}

    steps:
      - uses: actions/checkout@v2
      
      - name: Loading cache.
        uses: actions/cache@v2
        id: cache
        with:
          path: ~/.cache/pip
          key: v1-test_build_doc
          restore-keys: |
            v1-test_build_doc-${{ hashFiles('setup.py') }}
            v1-test_build_doc

      - name: Setup environment
        run: |
          sudo apt-get -y update && sudo apt-get install -y libsndfile1-dev

          pip install git+https://github.com/huggingface/doc-builder
          pip install git+https://github.com/huggingface/transformers#egg=transformers[dev]

          export TORCH_VERSION=$(python -c "from torch import version; print(version.__version__.split('+')[0])")
          pip install torch-scatter -f https://data.pyg.org/whl/torch-${TORCH_VERSION}+cpu.html

          pip install torchvision
          python -m pip install 'git+https://github.com/facebookresearch/detectron2.git'

          sudo apt install tesseract-ocr
          pip install pytesseract
          pip install pytorch-quantization --extra-index-url https://pypi.ngc.nvidia.com

      - name: Make documentation
        run: |
          doc-builder build transformers ./transformers/docs/source
