Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 9 additions & 2 deletions .github/workflows/root-ci-config/build_root.py
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@
# the target branch in the ROOT repository using base_ref and head_ref:
# - The base_ref is e.g. "master" or "v6-38-00-patches"
# - The head_ref for PRs is formatted as <PR branch>:<Fork branch> e.g. "refs/pull/20742/head:cppyy_fixup"
if not ":" in args.head_ref:

Check failure on line 62 in .github/workflows/root-ci-config/build_root.py

View workflow job for this annotation

GitHub Actions / ruff

ruff (E713)

.github/workflows/root-ci-config/build_root.py:62:16: E713 Test for membership should be `not in` help: Convert to `not in`
build_utils.print_error(f"This has been identified as a PR build. However, the head-ref is {args.head_ref}.")
branch_in_fork = args.head_ref.split(":")[-1]
if branch_in_fork == args.base_ref:
Expand All @@ -85,17 +85,24 @@

if "minimal" in platform_options and platform_options["minimal"] == "ON":
options_dict = platform_options
print(f"Minimal build detected in the platform options. Ignoring global configuration.")

Check failure on line 88 in .github/workflows/root-ci-config/build_root.py

View workflow job for this annotation

GitHub Actions / ruff

ruff (F541)

.github/workflows/root-ci-config/build_root.py:88:15: F541 f-string without any placeholders help: Remove extraneous `f` prefix
else:
options_dict.update(platform_options)
print(f"Build option overrides for {args.platform_config}:")
build_utils.print_options_diff(options_dict, last_options)

if args.overrides is not None:
overrides = ' '.join(args.overrides).split('@')
print("Build option overrides from command line:")
last_options = dict(options_dict)
options_dict.update((arg.split("=", maxsplit=1) for arg in overrides))
# `args.overrides` contains a list of ['key1=value1', 'key2=value2', ...]
# Neither keys nor values are allowed to contain whitespaces (as they get passed as separate arguments in
# that case).
# For cases where the value itself needs to have a space, we encode it as '@' in the yaml.
split_args = [arg.split("=", maxsplit=1) for arg in args.overrides]
for i in range(len(split_args)):
[k, v] = split_args[i]
split_args[i] = [k, v.replace('@', ' ')]
options_dict.update(split_args)
build_utils.print_options_diff(options_dict, last_options)

ctest_custom_flags = ""
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/root-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -156,8 +156,8 @@
HOME: /Users/sftnight
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, '@') }}
OVERRIDES: ${{ join( matrix.overrides, ' ') }}
run: |

Check failure on line 160 in .github/workflows/root-ci.yml

View workflow job for this annotation

GitHub Actions / lint-action-files

"github.event.pull_request.head.ref" is potentially untrusted. avoid using it directly in inline scripts. instead, pass it through an environment variable. see https://docs.github.com/en/actions/reference/security/secure-use#good-practices-for-mitigating-script-injection-attacks for more details
[ -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 \
Expand All @@ -170,7 +170,7 @@
--head_sha ${{ github.event.pull_request.head.sha }} \
--repository ${{ github.server_url }}/${{ github.repository }} \
--platform ${{ matrix.platform }} \
--overrides "${GLOBAL_OVERRIDES}" "${OVERRIDES}"
--overrides ${GLOBAL_OVERRIDES} ${OVERRIDES}

- name: Workflow dispatch
if: ${{ github.event_name == 'workflow_dispatch' && !matrix.is_special }}
Expand Down Expand Up @@ -287,7 +287,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 290 in .github/workflows/root-ci.yml

View workflow job for this annotation

GitHub Actions / lint-action-files

"github.event.pull_request.head.ref" is potentially untrusted. avoid using it directly in inline scripts. instead, pass it through an environment variable. see https://docs.github.com/en/actions/reference/security/secure-use#good-practices-for-mitigating-script-injection-attacks for more details
python .github/workflows/root-ci-config/build_root.py
--buildtype ${{ matrix.config }}
--platform windows10
Expand Down Expand Up @@ -420,7 +420,7 @@
platform_config: alma10-minimal
is_special: true
property: "asan"
overrides: ["ROOT_CTEST_CUSTOM_FLAGS='-E \\(^tutorial-\\|cppinterop-CppInterOpTest\\|roottest-cling-specialobj-runf02$\\|roottest-root-collection-DeleteWarning$\\|roottest-root-io-evolution-fixarr2$\\|roottest-root-meta-rlibmap$\\|roottest-root-treeproxy-vectorint-vectorint$\\)'"]
overrides: ["ROOT_CTEST_CUSTOM_FLAGS=-E@\\(^tutorial-\\|cppinterop-CppInterOpTest\\|roottest-cling-specialobj-runf02$\\|roottest-root-collection-DeleteWarning$\\|roottest-root-io-evolution-fixarr2$\\|roottest-root-meta-rlibmap$\\|roottest-root-treeproxy-vectorint-vectorint$\\)"]
# Fedora Rawhide with Python freethreading+debug build
- image: rawhide
python_venv: "/py-venv-3.15td/ROOT-CI"
Expand Down Expand Up @@ -454,7 +454,7 @@
- self-hosted
- linux
- ${{ matrix.architecture == null && 'x64' || matrix.architecture }}
- ${{ matrix.extra-runs-on == null && 'cpu' || matrix.extra-runs-on }}

Check failure on line 457 in .github/workflows/root-ci.yml

View workflow job for this annotation

GitHub Actions / lint-action-files

property "extra-runs-on" is not defined in object type {architecture: string; image: string; is_special: bool; overrides: array<string>; platform_config: string; property: string; python_venv: string}

Check failure on line 457 in .github/workflows/root-ci.yml

View workflow job for this annotation

GitHub Actions / lint-action-files

property "extra-runs-on" is not defined in object type {architecture: string; image: string; is_special: bool; overrides: array<string>; platform_config: string; property: string; python_venv: string}

name: |
${{ matrix.image }} ${{ matrix.property }}
Expand Down Expand Up @@ -521,7 +521,7 @@
INCREMENTAL: ${{ !contains(github.event.pull_request.labels.*.name, 'clean build') }}
GITHUB_PR_ORIGIN: ${{ github.event.pull_request.head.repo.clone_url }}
OVERRIDES: ${{ join( matrix.overrides, ' ') }}
run: ".github/workflows/root-ci-config/build_root.py

Check failure on line 524 in .github/workflows/root-ci.yml

View workflow job for this annotation

GitHub Actions / lint-action-files

"github.event.pull_request.head.ref" is potentially untrusted. avoid using it directly in inline scripts. instead, pass it through an environment variable. see https://docs.github.com/en/actions/reference/security/secure-use#good-practices-for-mitigating-script-injection-attacks for more details
--buildtype RelWithDebInfo
--platform ${{ matrix.image }}
--platform_config ${{ matrix.platform_config }}
Expand Down
Loading