-
Notifications
You must be signed in to change notification settings - Fork 1.4k
CI: test minimal builds #20725
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
CI: test minimal builds #20725
Changes from all commits
6b95985
91ea676
27e099e
704a0e0
807e1d2
0fd6e13
06a9676
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,3 @@ | ||
| builtin_vdt=ON | ||
| builtin_zlib=ON | ||
| builtin_zstd=ON |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,5 @@ | ||
| ccache=ON | ||
| fail-on-missing=ON | ||
| minimal=ON | ||
| roottest=ON | ||
| testing=ON |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -156,7 +156,7 @@ | |
| INCREMENTAL: ${{ !contains(github.event.pull_request.labels.*.name, 'clean build') && !matrix.platform == 'mac15' && !matrix.platform == 'mac26'}} | ||
| GITHUB_PR_ORIGIN: ${{ github.event.pull_request.head.repo.clone_url }} | ||
| OVERRIDES: ${{ join( matrix.overrides, ' ') }} | ||
| run: | | ||
|
Check failure on line 159 in .github/workflows/root-ci.yml
|
||
| [ -d "${VIRTUAL_ENV_DIR}" ] && source ${VIRTUAL_ENV_DIR}/bin/activate | ||
| echo "Python is now $(which python3) $(python3 --version)" | ||
| src/.github/workflows/root-ci-config/build_root.py \ | ||
|
|
@@ -286,7 +286,7 @@ | |
| INCREMENTAL: ${{ !contains(github.event.pull_request.labels.*.name, 'clean build') }} | ||
| GITHUB_PR_ORIGIN: ${{ github.event.pull_request.head.repo.clone_url }} | ||
| shell: cmd | ||
| run: "C:\\setenv.bat ${{ matrix.target_arch }} && | ||
|
Check failure on line 289 in .github/workflows/root-ci.yml
|
||
| python .github/workflows/root-ci-config/build_root.py | ||
| --buildtype ${{ matrix.config }} | ||
| --platform windows10 | ||
|
|
@@ -385,6 +385,10 @@ | |
| - image: alma9 | ||
| overrides: ["CMAKE_BUILD_TYPE=Debug"] | ||
| - image: alma10 | ||
| # Minimal build | ||
| - image: alma10 | ||
| minimal: true | ||
| property: "minimal build" | ||
| - image: ubuntu22 | ||
| overrides: ["imt=Off", "CMAKE_BUILD_TYPE=Debug"] | ||
| - image: ubuntu2404 | ||
|
|
@@ -428,7 +432,7 @@ | |
| - self-hosted | ||
| - linux | ||
| - ${{ matrix.architecture == null && 'x64' || matrix.architecture }} | ||
| - ${{ matrix.extra-runs-on == null && 'cpu' || matrix.extra-runs-on }} | ||
|
Check failure on line 435 in .github/workflows/root-ci.yml
|
||
|
|
||
| name: | | ||
| ${{ matrix.image }} ${{ matrix.property }} | ||
|
|
@@ -490,6 +494,19 @@ | |
| run: 'printf "%s@%s\\n" "$(whoami)" "$(hostname)"; | ||
| ls -la | ||
| ' | ||
| - name: Apply option minimal request from matrix for this job | ||
| if: ${{ matrix.minimal == true }} | ||
| env: | ||
| GLOBAL_CONFIG_DIR: '.github/workflows/root-ci-config/buildconfig' | ||
| CONFIGFILE_STEM: '.github/workflows/root-ci-config/buildconfig/${{ matrix.image }}' | ||
| run: | | ||
| echo "Applying minimal request options" | ||
| # Add commands to apply minimal request options here | ||
| set -x | ||
| cp "$GLOBAL_CONFIG_DIR/global-minimal.txt" "$GLOBAL_CONFIG_DIR/global.txt" | ||
| if [ -f "${CONFIGFILE_STEM}-minimal.txt" ]; then | ||
| cp "${CONFIGFILE_STEM}-minimal.txt" "${CONFIGFILE_STEM}.txt" | ||
| fi | ||
|
|
||
| - uses: root-project/gcc-problem-matcher-improved@main | ||
| with: | ||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
IMHO this mechanism only makes sense if we plan to have minimal builds on multiple platforms (which I'd argue is not worth it). Otherwise we gain nothing by splitting
global-minimal.txtandalma10-minimal.txt.Why not just merge
global-minimal.txtintoalma10-minimal.txt, making sure that all flags set byglobal.txtare overridden if necessary?There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks. Letting @pcanal comment on that (I just did a rebase of his work to see where we were standing.)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think that would be defeating the purpose, see the new version of
global.txtwhich actually match the semantic of minimal: nothing set exceptminimalandtest... with only 2 debatable addition:ccacheto reduce turn around andfail-on-missingwhich may or may not be meaningful here.The options set in
alma10are to only account for platform dependent behavior (and I guessvdtprobably should not be there - we need to try to remove it before merging).