name: PaddleOCR PR Tests on: push: branches: ["main", "release/*"] pull_request: branches: ["main", "release/*"] paths-ignore: permissions: contents: read jobs: detect-changes: runs-on: ubuntu-latest outputs: docs_only: ${{ steps.filter.outputs.docs_only }} steps: - uses: actions/checkout@v4 - id: filter uses: dorny/paths-filter@v3 with: filters: | docs_only: - '**.md' - '**.txt' - '**.yml' - '**.yaml' test-pr: runs-on: ubuntu-latest needs: detect-changes if: needs.detect-changes.outputs.docs_only != 'true' steps: - uses: actions/checkout@v4 - name: Set up Python 3.10 uses: actions/setup-python@v5 with: python-version: "3.10" - name: Cache dependencies uses: actions/cache@v4 with: path: | ~/.cache/pip ~/.local/lib/python3.10/site-packages ~/.paddleocr/ key: ${{ runner.os }}-dependencies-${{ hashFiles('**/requirements.txt', 'pyproject.toml') }} restore-keys: | ${{ runner.os }}-dependencies- - name: Install dependencies run: | python -m pip install --upgrade pip pip install pytest if [ -f requirements.txt ]; then pip install -r requirements.txt; fi python -m pip install paddlepaddle==3.2.0 -i https://www.paddlepaddle.org.cn/packages/stable/cpu/ python -m pip install -e '.[all]' 'paddlex@git+https://github.com/PaddlePaddle/PaddleX.git@develop' - name: Test with pytest run: | pytest --verbose tests/