1313
1414concurrency :
1515 # automatically cancel the previously triggered workflows when there's a newer version
16- group : build-min -${{ github.event.pull_request.number || github.ref }}
16+ group : cicd-tests -${{ github.event.pull_request.number || github.ref }}
1717 cancel-in-progress : true
1818
19+ # These jobs run the CICD tests, type checking, and testing packaging and documentation generation. These use the
20+ # minimum supported versions of Python and PyTorch in many places hard-coded as literals, so when support is dropped
21+ # for a version it is important to go through all jobs and check the versions they use are correct.
22+
1923jobs :
20- static-checks :
24+ static-checks : # Perform static type and other checks using runtests.sh
2125 runs-on : ubuntu-latest
2226 strategy :
2327 matrix :
@@ -43,14 +47,14 @@ jobs:
4347 find /opt/hostedtoolcache/* -maxdepth 0 ! -name 'Python' -exec rm -rf {} \;
4448 python -m pip install --upgrade pip wheel
4549 python -m pip install -r requirements-dev.txt
46- - name : Lint and type check
50+ - name : Lint and type check with "./runtests.sh --build --${{ matrix.opt }}"
4751 run : |
4852 # clean up temporary files
4953 $(pwd)/runtests.sh --build --clean
50- # Github actions have 2 cores, so parallelize pytype
51- $(pwd)/runtests.sh --build --${{ matrix.opt }} -j 2
54+ # Github actions have multiple cores, so parallelize pytype
55+ $(pwd)/runtests.sh --build --${{ matrix.opt }} -j $(nproc --all)
5256
53- min-dep : # min dependencies installed tests for different OS
57+ min-dep : # Test with minumum dependencies installed for different OS, Python, and PyTorch combinations
5458 runs-on : ${{ matrix.os }}
5559 strategy :
5660 fail-fast : false
@@ -124,7 +128,7 @@ jobs:
124128 NGC_ORG : ${{ secrets.NGC_ORG }}
125129 NGC_TEAM : ${{ secrets.NGC_TEAM }}
126130
127- full-dep : # full dependencies installed tests for different OS
131+ full-dep : # Test with full dependencies installed for different OS runners
128132 runs-on : ${{ matrix.os }}
129133 strategy :
130134 fail-fast : false
@@ -192,7 +196,7 @@ jobs:
192196 QUICKTEST : True
193197 PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION : python # https://github.com/Project-MONAI/MONAI/issues/4354
194198
195- packaging :
199+ packaging : # Test package generation
196200 runs-on : ubuntu-latest
197201 env :
198202 QUICKTEST : True
@@ -279,7 +283,7 @@ jobs:
279283 env :
280284 PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION : python # https://github.com/Project-MONAI/MONAI/issues/4354
281285
282- build-docs :
286+ build-docs : # Test building documentation
283287 runs-on : ubuntu-latest
284288 steps :
285289 - uses : actions/checkout@v4
@@ -308,7 +312,7 @@ jobs:
308312 cd docs/
309313 make clean
310314 make html 2>&1 | tee tmp_log
311- if [[ $(grep -c "ERROR:" tmp_log) != 0 ]]; then echo "found errors"; grep "ERROR:" tmp_log; exit 1; fi
315+ if [[ $(grep -c "ERROR:" tmp_log) != 0 ]]; then echo "Found errors: "; grep "ERROR:" tmp_log; exit 1; fi
312316 sed '/WARNING.*pip/d' tmp_log > tmp_log1; mv tmp_log1 tmp_log # monai#7133
313- if [[ $(grep -c "WARNING:" tmp_log) != 0 ]]; then echo "found warnings"; grep "WARNING:" tmp_log; exit 1; fi
314- shell : bash
317+ if [[ $(grep -c "WARNING:" tmp_log) != 0 ]]; then echo "Found warnings: "; grep "WARNING:" tmp_log; exit 1; fi
318+ shell : bash
0 commit comments