2525 runs-on : ubuntu-latest
2626 outputs :
2727 any_changed : ${{ steps.changed-files.outputs.any_changed }}
28+ docs_changed : ${{ steps.changed-files.outputs.docs_any_changed }}
2829 steps :
2930 - uses : actions/checkout@v4
3031 with :
@@ -34,10 +35,13 @@ jobs:
3435 with :
3536 base_sha : main
3637 files_yaml : |
37- - '3rdparty/**'
38- - 'sub-packages/**'
39- - 'docker_build_patches/**'
40- - 'requirements-*.txt'
38+ framework:
39+ - '3rdparty/**'
40+ - 'sub-packages/**'
41+ - 'docker_build_patches/**'
42+ - 'requirements-*.txt'
43+ docs:
44+ - 'docs/**.ipynb'
4145 - name : List all changed files
4246 env :
4347 ALL_CHANGED_FILES : ${{ steps.changed-files.outputs.all_changed_files }}
4751 done
4852
4953 pre-commit :
54+ env :
55+ UV_SYSTEM_PYTHON : 1
5056 runs-on : ubuntu-latest
5157 steps :
5258 - uses : actions/checkout@v4
5763 with :
5864 python-version : " 3.12"
5965 cache : " pip"
60- - run : pip install -r requirements-dev.txt
66+ - name : Setup UV
67+ uses : astral-sh/setup-uv@v6
68+ with :
69+ enable-cache : true
70+ - run : |
71+ uv pip install -r requirements-dev.txt
72+ uv tool install pre-commit --with pre-commit-uv --force-reinstall
6173 - run : ./ci/scripts/static_checks.sh
6274
6375 # With copy-pr-bot, we need to get the PR labels from the PR API rather than from the event metadata.
@@ -212,10 +224,12 @@ jobs:
212224 needs :
213225 - build-bionemo-image
214226 - get-pr-labels
227+ - changed-files
215228 runs-on : linux-amd64-gpu-l4-latest-1
216229 if : |
217230 github.event_name == 'schedule' || github.event_name == 'merge_group' ||
218- contains(fromJSON(needs.get-pr-labels.outputs.labels || '[]'), 'INCLUDE_NOTEBOOKS_TESTS')
231+ contains(fromJSON(needs.get-pr-labels.outputs.labels || '[]'), 'INCLUDE_NOTEBOOKS_TESTS') ||
232+ needs.changed-files.outputs.docs_changed == 'true'
219233 container :
220234 image : svcbionemo023/bionemo-framework:${{ github.run_id }}
221235 credentials :
0 commit comments