2424    steps :
2525    - run : echo ✓ 
2626  check :
27-     needs : authorize 
2827    name : Check 
2928    runs-on : ubuntu-latest 
3029    steps :
4948        key : pre-commit|${{ env.PYSHA }}|${{ hashFiles('.pre-commit-config.yaml') }} 
5049    - run : pip install -U pre-commit tox 
5150    - run : SKIP=pylint pre-commit run -a --show-diff-on-failure 
52-   test :
53-     needs : authorize 
51+   test-short  :
52+     needs : check 
5453    name : Test ${{ matrix.os }} with py${{ matrix.python }} 
5554    runs-on : ${{ matrix.os }} 
5655    strategy :
9190        pip install pre-commit .[tests] 
9291     - if : matrix.os == 'ubuntu-latest' && matrix.python == '3.10' 
9392      run : pre-commit run pylint -a -v --show-diff-on-failure 
93+     - name : Run short tests 
94+       timeout-minutes : 40 
95+       run : pytest -k 'not heroku and not flyio' 
96+       env :
97+         GITHUB_USERNAME : ${{ secrets.GH_USERNAME }} 
98+         GITHUB_TOKEN : ${{ secrets.GH_TOKEN }} 
99+         AWS_ACCESS_KEY_ID : ${{ secrets.AWS_ACCESS_KEY_ID }} 
100+         AWS_SECRET_ACCESS_KEY : ${{ secrets.AWS_SECRET_ACCESS_KEY }} 
101+         GITHUB_MATRIX_OS : ${{ matrix.os }} 
102+         GITHUB_MATRIX_PYTHON : ${{ matrix.python }} 
103+         BITBUCKET_USERNAME : ${{ secrets.BITBUCKET_USERNAME }} 
104+         BITBUCKET_PASSWORD : ${{ secrets.BITBUCKET_PASSWORD }} 
105+     - name : " Upload coverage to Codecov" 
106+       uses : codecov/codecov-action@v3 
107+       with :
108+         fail_ci_if_error : true 
109+         token : ${{ secrets.CODECOV_TOKEN }} 
110+   test-framework :
111+     needs : [authorize, test-short] 
112+     name : Test ${{ matrix.os }} with py${{ matrix.python }} 
113+     runs-on : ${{ matrix.os }} 
114+     strategy :
115+       matrix :
116+         os : [ubuntu-latest, windows-latest, macos-latest] 
117+         python : ["3.8", "3.9", "3.10"] 
118+         exclude :
119+         #  no HDF5 support installed for tables
120+         - os : windows-latest 
121+           python : " 3.9" 
122+         #  catboost building problems
123+         - os : macos-latest 
124+           python : " 3.8" 
125+       fail-fast : false 
126+     steps :
94127    - name : Run Heroku tests 
95128      if : | 
96129        matrix.os == 'ubuntu-latest' && 
@@ -113,26 +146,9 @@ jobs:
113146    - name : Start minikube 
114147      if : matrix.os == 'ubuntu-latest' && matrix.python == '3.9' 
115148      uses : medyagh/setup-minikube@master 
116-     - name : Run tests 
117-       timeout-minutes : 40 
118-       run : pytest -k 'not heroku and not flyio' 
119-       env :
120-         GITHUB_USERNAME : ${{ secrets.GH_USERNAME }} 
121-         GITHUB_TOKEN : ${{ secrets.GH_TOKEN }} 
122-         AWS_ACCESS_KEY_ID : ${{ secrets.AWS_ACCESS_KEY_ID }} 
123-         AWS_SECRET_ACCESS_KEY : ${{ secrets.AWS_SECRET_ACCESS_KEY }} 
124-         GITHUB_MATRIX_OS : ${{ matrix.os }} 
125-         GITHUB_MATRIX_PYTHON : ${{ matrix.python }} 
126-         BITBUCKET_USERNAME : ${{ secrets.BITBUCKET_USERNAME }} 
127-         BITBUCKET_PASSWORD : ${{ secrets.BITBUCKET_PASSWORD }} 
128-     - name : " Upload coverage to Codecov" 
129-       uses : codecov/codecov-action@v3 
130-       with :
131-         fail_ci_if_error : true 
132-         token : ${{ secrets.CODECOV_TOKEN }} 
133149  deploy :
134150    name : PyPI Deploy 
135-     needs : [check, test] 
151+     needs : [check, test-short, test-framework ] 
136152    runs-on : ubuntu-latest 
137153    steps :
138154    - uses : actions/checkout@v3 
0 commit comments