Skip to content

Run integration tests on QNX via QEMU - #328

Open
danth wants to merge 8 commits into
eclipse-score:mainfrom
etas-contrib:qemu-integration
Open

Run integration tests on QNX via QEMU#328
danth wants to merge 8 commits into
eclipse-score:mainfrom
etas-contrib:qemu-integration

Conversation

@danth

@danth danth commented Jul 16, 2026

Copy link
Copy Markdown
Member

Closes #316.

Outstanding issues:

  • A separate --config argument is now needed to run unit tests, as otherwise the unit test framework adds an unwanted second layer of emulation to the integration tests. Since they are using --run_under it is difficult to avoid this.
  • Likely some unnecessary things installed in the VM, due to most of the configuration being copied from the communication repository.
  • Missing documentation on how to obtain a QNX license / credentials to be able to run this locally.

Some of these could be tackled in future PRs.

@github-actions

github-actions Bot commented Jul 16, 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: 653a634a-200f-42f7-aa2a-1137f483be74
Computing main repo mapping: 
Computing main repo mapping: 
Loading: 
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: 
Analyzing: target //:license-check (1 packages loaded)
Analyzing: target //:license-check (1 packages loaded, 0 targets configured)
Analyzing: target //:license-check (1 packages loaded, 0 targets configured)

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

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

Analyzing: target //:license-check (145 packages loaded, 2539 targets configured)

Analyzing: target //:license-check (158 packages loaded, 9298 targets configured)

Analyzing: target //:license-check (169 packages loaded, 9387 targets configured)

Analyzing: target //:license-check (170 packages loaded, 9397 targets configured)

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

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

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

Analyzing: target //:license-check (174 packages loaded, 11409 targets configured)

INFO: Analyzed target //:license-check (175 packages loaded, 11535 targets configured).
[14 / 16] [Prepa] JavaToolchainCompileBootClasspath external/rules_java+/toolchains/platformclasspath.jar
[15 / 16] Building license.check.license_check.jar (); 0s disk-cache, multiplex-worker
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: 30.238s, Critical Path: 2.22s
INFO: 16 processes: 12 internal, 3 processwrapper-sandbox, 1 worker.
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>]

@danth
danth force-pushed the qemu-integration branch from 69a20dc to c34280f Compare July 22, 2026 14:50
@danth
danth requested a deployment to workflow-approval July 22, 2026 14:50 — with GitHub Actions Waiting
@danth
danth requested a deployment to workflow-approval July 22, 2026 14:50 — with GitHub Actions Waiting
@danth
danth force-pushed the qemu-integration branch from c34280f to 4ced14b Compare July 22, 2026 14:55
@danth
danth requested a deployment to workflow-approval July 22, 2026 14:56 — with GitHub Actions Waiting
@danth
danth requested a deployment to workflow-approval July 22, 2026 14:56 — with GitHub Actions Waiting
@danth
danth force-pushed the qemu-integration branch from 4ced14b to 6ff365d Compare July 22, 2026 15:37
@danth
danth requested a deployment to workflow-approval July 22, 2026 15:37 — with GitHub Actions Waiting
@danth
danth requested a deployment to workflow-approval July 22, 2026 15:37 — with GitHub Actions Waiting
@danth
danth force-pushed the qemu-integration branch from 6ff365d to 196beb3 Compare July 23, 2026 09:34
@danth
danth requested a deployment to workflow-approval July 23, 2026 09:34 — with GitHub Actions Waiting
@danth
danth requested a deployment to workflow-approval July 23, 2026 09:34 — with GitHub Actions Waiting
@github-actions

Copy link
Copy Markdown

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

@danth
danth requested a deployment to workflow-approval July 23, 2026 14:14 — with GitHub Actions Waiting
@danth
danth requested a deployment to workflow-approval July 23, 2026 14:14 — with GitHub Actions Waiting
@danth
danth marked this pull request as ready for review July 23, 2026 14:18
@danth

This comment was marked as outdated.

Comment thread .github/workflows/qnx8.yml Outdated
Comment thread requirements.in
Comment thread tests/utils/testing_utils/run_until_file_deployed.py
Comment thread tests/utils/environments/x86_64-qnx/init.build
Comment thread tests/utils/environments/x86_64-qnx/qcrypto.conf Outdated
Comment thread tests/integration/process_fd_leak/BUILD
Comment thread tests/utils/bazel/integration.bzl Outdated
@danth
danth force-pushed the qemu-integration branch from f975e55 to 7ca6810 Compare July 24, 2026 10:24
@danth
danth requested a deployment to workflow-approval July 24, 2026 10:24 — with GitHub Actions Waiting
@danth
danth requested a deployment to workflow-approval July 24, 2026 10:24 — with GitHub Actions Waiting
@danth
danth force-pushed the qemu-integration branch from 7ca6810 to c768495 Compare July 24, 2026 14:40
@danth
danth requested a deployment to workflow-approval July 24, 2026 14:40 — with GitHub Actions Waiting
@danth
danth requested a deployment to workflow-approval July 30, 2026 15:32 — with GitHub Actions Waiting
@danth

This comment was marked as outdated.

@danth
danth force-pushed the qemu-integration branch from 59a0ecb to 5d8df15 Compare July 30, 2026 15:37
@danth
danth temporarily deployed to workflow-approval July 30, 2026 15:37 — with GitHub Actions Inactive
@danth
danth temporarily deployed to workflow-approval July 30, 2026 15:37 — with GitHub Actions Inactive
@danth
danth requested a deployment to workflow-approval August 3, 2026 09:47 — with GitHub Actions Waiting
@danth
danth requested a deployment to workflow-approval August 3, 2026 09:47 — with GitHub Actions Waiting
@danth
danth force-pushed the qemu-integration branch from ce96e78 to 139d3fb Compare August 3, 2026 09:49
@danth
danth requested a deployment to workflow-approval August 3, 2026 09:49 — with GitHub Actions Waiting
@danth
danth requested a deployment to workflow-approval August 3, 2026 09:49 — with GitHub Actions Waiting
@danth
danth force-pushed the qemu-integration branch from 139d3fb to 3f4d6e0 Compare August 3, 2026 10:03
@danth
danth marked this pull request as ready for review August 3, 2026 10:03
@danth
danth temporarily deployed to workflow-approval August 3, 2026 10:03 — with GitHub Actions Inactive
@danth
danth temporarily deployed to workflow-approval August 3, 2026 10:03 — with GitHub Actions Inactive
Comment thread .bazelrc
danth added 7 commits August 3, 2026 16:14
Our Bazel toolchain for Python does not work with QNX, so we need to use built-in libraries to parse the results instead.
With proper use of Bazel platforms rather than configs, I think it would be possible to do this in a much cleaner way.
However that would require deeper changes across our codebase and possibly in the test frameworks as well.
@danth
danth force-pushed the qemu-integration branch from 3f4d6e0 to 9a33892 Compare August 3, 2026 15:28
@danth
danth requested a deployment to workflow-approval August 3, 2026 15:28 — with GitHub Actions Waiting
@danth
danth requested a deployment to workflow-approval August 3, 2026 15:28 — with GitHub Actions Waiting
@danth
danth requested a review from MaciejKaszynski August 3, 2026 15:29
@danth
danth force-pushed the qemu-integration branch from 9a33892 to 6d0347b Compare August 3, 2026 15:38
This decouples the choice of Docker/QEMU/native from the choice of
Linux/QNX. Then, targets are marked as compatible only if the current
combination is known to work.

The existing bazelrc shortcuts are updated to set the new flags, so
what you actually type at the command line has not changed.

The benefit is that running QNX tests with the wrong shortcut will now
just list them as skipped, rather than giving a cryptic error.
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.

Introduce QNX8 support for feature integration tests

3 participants