Skip to content

restructure: align module folder layout with score module folder structure - #386

Open
umaucher wants to merge 2 commits into
mainfrom
um_module_folder_structure
Open

restructure: align module folder layout with score module folder structure#386
umaucher wants to merge 2 commits into
mainfrom
um_module_folder_structure

Conversation

@umaucher

@umaucher umaucher commented Aug 21, 2026

Copy link
Copy Markdown
Contributor

Aligns persistency with the score module folder structure DR (eclipse-score/score#3194): the module-level src folder is optional and dropped, and language-split folders (cpp/rust) are replaced by a per-component layout.

  • score/kvs/ now holds the public C++ interface directly (no src/ wrapper); internal/, rust_kvs/, rust_kvs_tool/ are the component's <lower_level_comp> folders.
  • score/kvs/tests/ holds both the C++ unit tests and the integration test suites (test_scenarios/, test_cases/, integration_test_scenarios/), since this module has a single component and those suites test it specifically rather than spanning multiple components.
  • Updated every Bazel target, CI workflow, Cargo/pytest config, and doc that referenced the old src//tests/ paths, including the targets newly introduced by coverage: adopt the unified LLVM coverage pipeline from score_tooling 2.1.1 #380 (quality/coverage, coverage.yml, release.yml).

Note: release.yml's "Run Unit Test with Coverage for Rust" step already called a //:rust_coverage target that no longer exists after #380 removed it in favour of the unified coverage pipeline — that regression predates this PR and is left untouched here as out of scope.

@github-actions

github-actions Bot commented Aug 21, 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: 049285db-ab4c-41b9-a421-1d07e0521f4f
Computing main repo mapping: 
Computing main repo mapping: 
Computing main repo mapping: 
Computing main repo mapping: 
Loading: 
Loading: 3 packages loaded
Loading: 3 packages loaded
    currently loading: 
Loading: 3 packages loaded
    currently loading: 
Loading: 3 packages loaded
    currently loading: 
Loading: 3 packages loaded
    currently loading: 
Loading: 3 packages loaded
    currently loading: 
Analyzing: target //:license-check (4 packages loaded, 0 targets configured)
Analyzing: target //:license-check (4 packages loaded, 0 targets configured)

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

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

Analyzing: target //:license-check (141 packages loaded, 622 targets configured)

Analyzing: target //:license-check (149 packages loaded, 3125 targets configured)

Analyzing: target //:license-check (149 packages loaded, 3125 targets configured)

Analyzing: target //:license-check (149 packages loaded, 3125 targets configured)

Analyzing: target //:license-check (159 packages loaded, 6212 targets configured)

Analyzing: target //:license-check (166 packages loaded, 9321 targets configured)

Analyzing: target //:license-check (166 packages loaded, 9321 targets configured)

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

Analyzing: target //:license-check (176 packages loaded, 11384 targets configured)

INFO: Analyzed target //:license-check (177 packages loaded, 11510 targets configured).
INFO: From Generating Dash formatted dependency file ...:
INFO: Successfully converted 66 packages from Cargo.lock to bazel-out/k8-fastbuild/bin/formatted.txt
[15 / 17] [Prepa] JavaToolchainCompileBootClasspath external/rules_java+/toolchains/platformclasspath.jar
[16 / 17] 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: 31.152s, Critical Path: 2.41s
INFO: 17 processes: 12 internal, 4 processwrapper-sandbox, 1 worker.
INFO: Build completed successfully, 17 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>]

Removes the top-level /src and /tests folders and the cpp/rust language
split, per eclipse-score/score#3194 (module folder structure DR): the
src folder is optional and dropped, public interfaces live directly in
score/<component>/, and internal/rust_kvs/rust_kvs_tool become
lower_level_comp folders. Integration test suites move to
score/kvs/tests/ since this module has a single component.

Updates all Bazel targets, CI workflows, Cargo/pytest config, and docs
that referenced the old paths, including the coverage targets newly
introduced by #380.
@umaucher
umaucher force-pushed the um_module_folder_structure branch from cba54aa to fcfe59f Compare August 21, 2026 14:11
pull_request_target always evaluates the workflow YAML from the base
branch (main) while checking out the PR's source tree. Since this PR's
branch lives in eclipse-score/persistency itself (not a fork), the
build/docs/license-check checks kept running main's stale workflow
copy against the restructured tree and failed on removed paths.

Add a same-repo pull_request trigger alongside pull_request_target,
gated so same-repo PRs run untrusted-secret-free via pull_request and
fork PRs still require approval via pull_request_target.
@umaucher

Copy link
Copy Markdown
Contributor Author

all the failed jobs triggered by pull_request_target need to fail since they use the "old" main workflows pointing to the outdated targets. The ones triggered by pull_request newly added are green.

@umaucher

Copy link
Copy Markdown
Contributor Author

the generated documentation is in https://eclipse-score.github.io/persistency/pr-386/index.html

@umaucher
umaucher marked this pull request as ready for review August 21, 2026 15:05
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.

1 participant