Skip to content

Launch Manager supports the new configuration format#110

Open
NicolasFussberger wants to merge 88 commits intoeclipse-score:mainfrom
etas-contrib:feature/support_new_launch_manager_config
Open

Launch Manager supports the new configuration format#110
NicolasFussberger wants to merge 88 commits intoeclipse-score:mainfrom
etas-contrib:feature/support_new_launch_manager_config

Conversation

@NicolasFussberger
Copy link
Contributor

Summary

This PR introduces a mapping of the new configuration schema to the existing configuration format. Therefore, allowing users to configure the launch_manager using the simpler configuration format. This approach is depicted here.

The configuration interface is a bazel function that validates the json configuration, maps the new configuration content to the existing configuration files that are in use by the C++ implementation. Note: This PR is not yet adapting the C++ code to load the new configuration directly, but instead it maps the new configuration to the old configuration format so the existing code keeps working as-is.

Usage Example from the reference_integration perspective:

load("@score_lifecycle_health//:defs.bzl", "launch_manager_config")
launch_manager_config(
    name ="lifecycle_configs",
    config="//showcases/simple_lifecycle/configs:launch_manager_config.json"
)

Details

  • Introduces bazel function launch_manager_config, allowing users to easily make use of the new configuration
  • Introduces an internal mapping script in python lifecycle_config.py, taking as input the new configuration file and generating as output the same content in the existing configuration format (i.e. mapping of RunTarget -> ProcessGroup States). See the Readme at scripts/config_mapping/Readme.md for details
  • Adapt the ControlClient API to change RunTarget instead of ProcessGroup States (internal mapping to ProcessGroup States)
  • Adapt existing examples and smoketest to use the new configuration format

Closes: #38

@github-actions
Copy link

github-actions bot commented Mar 10, 2026

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.4.2) and connecting to it...
INFO: Invocation ID: d3b8a94d-0338-4b65-b1fa-be9d434f0feb
Computing main repo mapping: 
Computing main repo mapping: 
Computing main repo mapping: 
WARNING: For repository 'score_rust_policies', the root module requires module version score_rust_policies@0.0.3, but got score_rust_policies@0.0.5 in the resolved dependency graph. Please update the version in your MODULE.bazel or set --check_direct_dependencies=off
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: 
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 (33 packages loaded, 9 targets configured)

Analyzing: target //:license-check (87 packages loaded, 9 targets configured)

Analyzing: target //:license-check (138 packages loaded, 446 targets configured)

Analyzing: target //:license-check (153 packages loaded, 2671 targets configured)

Analyzing: target //:license-check (154 packages loaded, 4567 targets configured)

Analyzing: target //:license-check (165 packages loaded, 7892 targets configured)

Analyzing: target //:license-check (165 packages loaded, 7901 targets configured)

Analyzing: target //:license-check (165 packages loaded, 7901 targets configured)

Analyzing: target //:license-check (165 packages loaded, 7901 targets configured)

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

INFO: Analyzed target //:license-check (170 packages loaded, 10039 targets configured).
[6 / 16] Creating source manifest for @@score_tooling+//dash/tool/formatters:dash_format_converter [for tool]; 0s local
[13 / 16] JavaToolchainCompileClasses external/rules_java+/toolchains/platformclasspath_classes; 0s disk-cache, processwrapper-sandbox
[15 / 16] [Prepa] Building license.check.license_check.jar ()
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: 27.468s, Critical Path: 2.63s
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>]

@github-actions
Copy link

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

@NicolasFussberger NicolasFussberger marked this pull request as ready for review March 11, 2026 10:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Configuration concept

3 participants