77 workflow_call :
88 workflow_dispatch :
99
10+ permissions :
11+ contents : read
12+
1013jobs :
1114 pytest :
1215 name : Run Integration Tests
@@ -21,12 +24,12 @@ jobs:
2124 - " 3.14"
2225 runs-on : ${{ matrix.os }}
2326 steps :
24- - uses : actions/checkout@v5
27+ - uses : actions/checkout@v6
2528 with :
2629 submodules : recursive
2730
2831 - name : Set up Python ${{ matrix.python-version }}
29- uses : actions/setup-python@v5
32+ uses : actions/setup-python@v6
3033 with :
3134 python-version : ${{ matrix.python-version }}
3235
4144 - name : Install dependencies
4245 run : |
4346 python -m pip install pip
44- pip install -e .[test]
47+ pip install -e ' .[test]'
4548 - name : Run Integration Testing
4649 env :
4750 MINDEE_API_KEY : ${{ secrets.MINDEE_API_KEY_SE_TESTS }}
@@ -57,11 +60,60 @@ jobs:
5760 pytest --cov mindee -m integration
5861
5962 - name : Notify Slack Action on Failure
60- uses : ravsamhq/notify-slack-action@2.3 .0
63+ uses : ravsamhq/notify-slack-action@2.5 .0
6164 if : ${{ always() && github.ref_name == 'main' }}
6265 with :
6366 status : ${{ job.status }}
6467 notify_when : " failure"
6568 notification_title : " [Python] Integration test '{workflow}' is failing"
6669 env :
6770 SLACK_WEBHOOK_URL : ${{ secrets.PRODUCTION_ISSUES_SLACK_HOOK_URL }}
71+
72+ pytest-lite :
73+ name : Run Integration Tests
74+ timeout-minutes : 30
75+ strategy :
76+ matrix :
77+ os :
78+ - " ubuntu-22.04"
79+ python-version :
80+ - " 3.10"
81+ runs-on : ${{ matrix.os }}
82+ steps :
83+ - uses : actions/checkout@v6
84+ with :
85+ submodules : recursive
86+
87+ - name : Set up Python ${{ matrix.python-version }}
88+ uses : actions/setup-python@v6
89+ with :
90+ python-version : ${{ matrix.python-version }}
91+
92+ - name : Cache dependencies
93+ uses : actions/cache@v5
94+ with :
95+ path : ~/.cache/pip
96+ key : ${{ runner.os }}-test-${{ hashFiles('pyproject.toml') }}
97+ restore-keys : |
98+ ${{ runner.os }}-test-
99+
100+ - name : Install dependencies
101+ run : |
102+ pip install toml
103+ python scripts/generate_lite_toml.py
104+ mv -f pyproject-lite.toml pyproject.toml
105+ pip install -e '.[test]'
106+ shell : bash
107+ - name : Run Integration Testing
108+ env :
109+ MINDEE_API_KEY : ${{ secrets.MINDEE_API_KEY_SE_TESTS }}
110+ WORKFLOW_ID : ${{ secrets.WORKFLOW_ID_SE_TESTS }}
111+ MINDEE_V2_API_KEY : ${{ secrets.MINDEE_V2_SE_TESTS_API_KEY }}
112+ MINDEE_V2_SE_TESTS_FINDOC_MODEL_ID : ${{ secrets.MINDEE_V2_SE_TESTS_FINDOC_MODEL_ID }}
113+ MINDEE_V2_SE_TESTS_BLANK_PDF_URL : ${{ secrets.MINDEE_V2_SE_TESTS_BLANK_PDF_URL }}
114+ MINDEE_V2_SE_TESTS_CLASSIFICATION_MODEL_ID : ${{ secrets.MINDEE_V2_SE_TESTS_CLASSIFICATION_MODEL_ID }}
115+ MINDEE_V2_SE_TESTS_CROP_MODEL_ID : ${{ secrets.MINDEE_V2_SE_TESTS_CROP_MODEL_ID }}
116+ MINDEE_V2_SE_TESTS_SPLIT_MODEL_ID : ${{ secrets.MINDEE_V2_SE_TESTS_SPLIT_MODEL_ID }}
117+ MINDEE_V2_SE_TESTS_OCR_MODEL_ID : ${{ secrets.MINDEE_V2_SE_TESTS_OCR_MODEL_ID }}
118+ run : |
119+ pytest -m "integration and not pypdfium2 and not pillow"
0 commit comments