Skip to content

Fix sandbox test failure on some machines - #470

Open
NicolasFussberger wants to merge 4 commits into
eclipse-score:mainfrom
etas-contrib:fix_sandbox_test
Open

Fix sandbox test failure on some machines#470
NicolasFussberger wants to merge 4 commits into
eclipse-score:mainfrom
etas-contrib:fix_sandbox_test

Conversation

@NicolasFussberger

@NicolasFussberger NicolasFussberger commented Aug 14, 2026

Copy link
Copy Markdown
Contributor

//tests/integration/sandbox_options:sandbox_options fails on some machines when run in docker based on whether the underlying linux kernel was built with CONFIG_RT_GROUP_SCHED or not.

The PR introduces the following behavior:

  • Check if realtime scheduling is supported in docker container
  • If true, run the sandbox test (start docker container with the required parameters)
  • If false, fail the test with an error message depicting what to change in host docker config

@NicolasFussberger
NicolasFussberger deployed to workflow-approval August 14, 2026 06:42 — with GitHub Actions Active
@NicolasFussberger
NicolasFussberger deployed to workflow-approval August 14, 2026 06:42 — with GitHub Actions Active
@github-actions

github-actions Bot commented Aug 14, 2026

Copy link
Copy Markdown

License Check Results

🚀 The license check job ran with the Bazel command:

bazel run --lockfile_mode=error //:license-check

Status: ⚠️ Needs Review

Click to expand output
[License Check Output]
Extracting Bazel installation...
Starting local Bazel server (8.6.0) and connecting to it...
INFO: Invocation ID: 8a280ca2-ef1e-4611-aa10-71c5fce599fe
Computing main repo mapping: 
Computing main repo mapping: 
Loading: 
Loading: 0 packages loaded
Loading: 0 packages loaded
Loading: 0 packages loaded
    currently loading: 
Loading: 0 packages loaded
    currently loading: 
Loading: 0 packages loaded
    currently loading: 
Loading: 0 packages loaded
    currently loading: 
Loading: 0 packages loaded
    currently loading: 
Loading: 0 packages loaded
    currently loading: 
Analyzing: target //:license-check (1 packages loaded, 0 targets configured)
Analyzing: target //:license-check (1 packages loaded, 0 targets configured)

Analyzing: target //:license-check (37 packages loaded, 10 targets configured)

Analyzing: target //:license-check (90 packages loaded, 10 targets configured)

Analyzing: target //:license-check (148 packages loaded, 1435 targets configured)

Analyzing: target //:license-check (160 packages loaded, 4994 targets configured)

Analyzing: target //:license-check (167 packages loaded, 9402 targets configured)

Analyzing: target //:license-check (172 packages loaded, 9451 targets configured)

Analyzing: target //:license-check (173 packages loaded, 9575 targets configured)

INFO: Analyzed target //:license-check (177 packages loaded, 11589 targets configured).
[7 / 16] Creating runfiles tree bazel-out/k8-opt-exec-ST-d57f47055a04/bin/external/score_tooling+/dash/tool/formatters/dash_format_converter.runfiles [for tool]; 0s local
INFO: Found 1 target...
Target //:license.check.license_check up-to-date:
  bazel-bin/license.check.license_check
  bazel-bin/license.check.license_check.jar
INFO: Elapsed time: 22.953s, Critical Path: 0.42s
INFO: 16 processes: 4 disk cache hit, 12 internal.
INFO: Build completed successfully, 16 total actions
INFO: Running command line: bazel-bin/license.check.license_check ./formatted.txt <args omitted>
usage: org.eclipse.dash.licenses.cli.Main [-batch <int>] [-cd <url>]
       [-confidence <int>] [-ef <url>] [-excludeSources <sources>] [-help] [-lic
       <url>] [-project <shortname>] [-repo <url>] [-review] [-summary <file>]
       [-timeout <seconds>] [-token <token>]

@github-actions

Copy link
Copy Markdown

The created documentation from the pull request is available at: docu-html

@TimoSteuerwaldETAS TimoSteuerwaldETAS left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good and test still works on my environment. So all fine! 😃👍

@NicolasFussberger
NicolasFussberger deployed to workflow-approval August 14, 2026 08:21 — with GitHub Actions Active
@NicolasFussberger
NicolasFussberger deployed to workflow-approval August 14, 2026 08:21 — with GitHub Actions Active


@pytest.fixture(autouse=True)
def require_realtime_scheduling(target):

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Would it make sense to just use something like this

IS_CI = os.getenv("CI") == "true"

@pytest.mark.skipif(
    not IS_CI and not can_set_up_env(),
    reason="Host cannot set up required dependency",
)

so that this skips for local users, then the CI env var should be set on CI so there it would fail their.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think if the test is just skipped in Python, Bazel will still say it passed. So it would need to be skipped at a higher level.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I made it so the test fails because I thought skipping has the danger that due to some bug the test may end up being skipped which might go unnoticed for some time. Especially, due to all the _qemu tests being skipped

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Backlog

Development

Successfully merging this pull request may close these issues.

4 participants