Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
36 commits
Select commit Hold shift + click to select a range
f81cff4
cicd: add config to bazel
PiotrKorkus Dec 23, 2025
6a47c33
infra: bump toolchains versions
arkjedrz Jan 11, 2026
ca2b28e
Merge pull request #209 from qorix-group/arkjedrz_bump-toolchain-vers…
PiotrKorkus Jan 12, 2026
4334170
bazel: fix module integration
PiotrKorkus Jan 12, 2026
735d005
Merge pull request #194 from qorix-group/piotrkorkus_fix_python_integ…
pawelrutkaq Jan 12, 2026
10ea093
First version of persistency security plan
CryptoNutcase Jan 12, 2026
177b46d
Merge pull request #211 from qorix-group/karthikv_persistency_securit…
PandaeDo Jan 12, 2026
91b1450
testing: C++ CIT test utils
arkjedrz Jan 9, 2026
1fcf876
Merge pull request #207 from qorix-group/arkjedrz_cit-test-utils
PiotrKorkus Jan 12, 2026
22930b8
testing: Adding default values test cases for KVS cpp
Saumya-R Dec 11, 2025
1f5b616
testing: reworked default values CITs
arkjedrz Jan 9, 2026
69cb401
Merge pull request #208 from qorix-group/arkjedrz_cpp-default-values-…
PiotrKorkus Jan 14, 2026
dde73d6
testing: multiple KVS tests for C++ impl
arkjedrz Jan 14, 2026
3dd7f0a
Merge pull request #210 from qorix-group/arkjedrz_cpp-multiple-kvs-ci…
PiotrKorkus Jan 14, 2026
e5999f8
testing: snapshots tests for C++ impl
arkjedrz Jan 14, 2026
6a429e2
Merge pull request #212 from qorix-group/arkjedrz_cpp-snapshots-cit-r…
PiotrKorkus Jan 14, 2026
9d8041b
Merge pull request #202 from qorix-group/piotrkorkus_update_release_w…
vinodreddy-g Jan 16, 2026
cef9c1a
CIT : testing adding test cases for supported datatypes
Saumya-R Jan 9, 2026
70154ab
Merge pull request #214 from qorix-group/saumya_supported_datatypes_c…
PiotrKorkus Jan 19, 2026
52dac33
repo: add `.clang-format` file, format C++
arkjedrz Jan 19, 2026
163ea25
Merge pull request #219 from qorix-group/arkjedrz_cpp-formatting
PiotrKorkus Jan 19, 2026
38070fe
repo: format rest of C++ code
arkjedrz Jan 19, 2026
a232229
Merge pull request #220 from qorix-group/arkjedrz_cpp-formatting-2
PiotrKorkus Jan 19, 2026
eb1d61e
testing: Unify component integration tests structure
igorostrowskiq Jan 13, 2026
6411e65
Merge pull request #199 from qorix-group/igorostrowskiq_unify_cit_str…
PiotrKorkus Jan 19, 2026
05cb58d
infra: ruff formatting
PiotrKorkus Jan 19, 2026
652f78a
Merge pull request #213 from qorix-group/piotrkorkus_ruff_formatting
pawelrutkaq Jan 20, 2026
69356de
Fixing pytest settings to enable decorator (#224)
MaximilianSoerenPollak Jan 21, 2026
71d54f2
cicd: run CIT with bazel
PiotrKorkus Jan 22, 2026
ef2702f
fix update snapshot count function.
Ahmed-Elsaka-JC Jan 22, 2026
b12b269
Use Rust feature from S-CORE devcontainer
lurtz Oct 7, 2025
0037034
Merge pull request #138 from elektrobit-contrib/use-rust-feature-from…
FScholPer Jan 26, 2026
da0f7de
cicd: run docs after tests
PiotrKorkus Jan 22, 2026
07d9b82
Merge pull request #226 from Ahmed-Elsaka-JC/afe_fix_snapshot_count
vinodreddy-g Jan 27, 2026
745d692
Merge pull request #225 from qorix-group/piotrkorkus_bazel_cit
PiotrKorkus Jan 27, 2026
1432004
cicd: upload test artifacts (#233)
PiotrKorkus Jan 27, 2026
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
4 changes: 1 addition & 3 deletions .bazelrc
Original file line number Diff line number Diff line change
Expand Up @@ -28,9 +28,7 @@ build --tool_java_runtime_version=remotejdk_17
build --@score_baselibs//score/json:base_library=nlohmann
build --@score_baselibs//score/mw/log/flags:KRemote_Logging=False

# ToDo: needed for "wrong" implicit dependencies
build --@score-baselibs//score/json:base_library=nlohmann
build --@score-baselibs//score/mw/log/flags:KRemote_Logging=False
common --extra_toolchains=@gcc_toolchain//:host_gcc_12

# Clippy linting (enabled by default)
build --aspects=@rules_rust//rust:defs.bzl%rust_clippy_aspect
Expand Down
48 changes: 48 additions & 0 deletions .clang-format
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
BasedOnStyle: Google
AccessModifierOffset: -2
AllowAllParametersOfDeclarationOnNextLine: false
AllowShortBlocksOnASingleLine: Empty
AllowShortCaseLabelsOnASingleLine: false
AllowShortEnumsOnASingleLine: false
# Empty is required in AllowShortFunctionsOnASingleLine over Inline because Inline contradicts with AUTOSAR rule A7-1-7
# Such rule is no longer existing in MISRA C++:2023, once we are fully migrated to MISRA C++:2023, switching to Inline
# could be reconsidered
AllowShortFunctionsOnASingleLine: Empty
AllowShortIfStatementsOnASingleLine: Never
AllowShortLambdasOnASingleLine: Empty
AllowShortLoopsOnASingleLine: false
BinPackArguments: false
BinPackParameters: false
BraceWrapping:
AfterCaseLabel: true
AfterClass: true
AfterControlStatement: Always
AfterEnum: true
AfterFunction: true
AfterNamespace: true
AfterObjCDeclaration: true
AfterStruct: true
AfterUnion: true
BeforeCatch: true
BeforeElse: true
IndentBraces: false
BreakBeforeBraces: Custom
ColumnLimit: 120
DerivePointerAlignment: false
IncludeBlocks: Preserve
IncludeCategories:
- Regex: '^(<|")(assert|complex|ctype|errno|fenv|float|inttypes|iso646|limits|locale|math|setjmp|signal|stdalign|stdargh|stdatomic|stdbool|stddef|stdint|stdio|stdlib|stdnoreturn|string|tgmath|threads|time|uchar|wchar|wctype)\.h(>|")$'
Priority: 2
- Regex: '^(<|")(cstdlib|csignal|csetjmp|cstdarg|typeinfo|typeindex|type_traits|bitset|functional|utility|ctime|chrono|cstddef|initializer_list|tuple|any|optional|variant|new|memory|scoped_allocator|memory_resource|climits|cfloat|cstdint|cinttypes|limits|exception|stdexcept|cassert|system_error|cerrno|cctype|cwctype|cstring|cwchar|cuchar|string|string_view|array|vector|deque|list|forward_list|set|map|unordered_set|unordered_map|stack|queue|algorithm|execution|teratorslibrary|iterator|cmath|complex|valarray|random|numeric|ratio|cfenv|iosfwd|ios|istream|ostream|iostream|fstream|sstream|strstream|iomanip|streambuf|cstdio|locale|clocale|codecvt|regex|atomic|thread|mutex|shared_mutex|future|condition_variable|filesystem|ciso646|ccomplex|ctgmath|cstdalign|cstdbool)(>|")$'
Priority: 3
- Regex: '^(<|").*(>|")$'
Priority: 1
IndentWidth: 4
InsertNewlineAtEOF: true
KeepEmptyLinesAtTheStartOfBlocks: true
QualifierAlignment: Left
CommentPragmas: '^.*A2Lfactory:'
---
# Make sure language specific settings are below the generic settings to be compatible to all languages.
Language: Cpp
Standard: c++17
15 changes: 1 addition & 14 deletions .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
@@ -1,17 +1,4 @@
{
"name": "eclipse-s-core",
"image": "ghcr.io/eclipse-score/devcontainer:1.0.0",
"features": {
"ghcr.io/devcontainers/features/rust:1.5.0": {
"version": "1.83.0",
"components": [
"cargo",
"clippy",
// "miri", // only available at nightly
// "rust-analyzer", // already provided by the image
"rust-src",
"rustfmt"
]
}
}
"image": "ghcr.io/eclipse-score/devcontainer:v1.1.0"
}
12 changes: 6 additions & 6 deletions .github/workflows/check.yml
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ jobs:

- uses: dtolnay/rust-toolchain@stable
with:
toolchain: 1.83.0
toolchain: 1.90.0
components: clippy, rustfmt

- name: Cargo Clippy
Expand All @@ -57,7 +57,7 @@ jobs:

- uses: dtolnay/rust-toolchain@stable
with:
toolchain: nightly-2024-12-17
toolchain: nightly-2025-12-15
components: miri, rust-src

- name: Install Clang
Expand All @@ -67,7 +67,7 @@ jobs:

- name: Cargo Miri
run: |
cargo +nightly-2024-12-17 miri test
cargo +nightly-2025-12-15 miri test

cargo-coverage:
runs-on: ubuntu-latest
Expand All @@ -76,16 +76,16 @@ jobs:

- uses: dtolnay/rust-toolchain@stable
with:
toolchain: nightly-2024-12-17
toolchain: nightly-2025-12-15
components: llvm-tools-preview, rust-src

- name: Install cargo-llvm-cov
run: |
cargo +nightly-2024-12-17 install cargo-llvm-cov --locked
cargo +nightly-2025-12-15 install cargo-llvm-cov --locked

- name: Cargo llvm-cov
run: |
cargo +nightly-2024-12-17 llvm-cov --branch --tests --lib
cargo +nightly-2025-12-15 llvm-cov --branch --tests --lib

rust-bazel:
runs-on: ubuntu-latest
Expand Down
41 changes: 34 additions & 7 deletions .github/workflows/component_integration_tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ on:
- main
merge_group:
types: [checks_requested]
workflow_call:

jobs:
component-integration-tests:
Expand All @@ -28,13 +29,21 @@ jobs:
run:
shell: bash
steps:
- name: Checkout repository (pull_request_target via workflow_call)
if: ${{ github.event_name == 'pull_request_target' }}
uses: actions/checkout@v4
with:
ref: ${{ github.head_ref || github.event.pull_request.head.ref || github.ref }}
repository: ${{ github.event.pull_request.head.repo.full_name || github.repository }}

- name: Checkout repository
if: ${{ github.event_name != 'pull_request_target' }}
uses: actions/checkout@v4

- name: Setup Rust build environment
uses: dtolnay/rust-toolchain@stable
with:
toolchain: 1.83.0
toolchain: 1.90.0

- name: Setup Bazel
uses: bazel-contrib/setup-bazel@0.15.0
Expand All @@ -46,26 +55,44 @@ jobs:

- name: Build C++ test scenarios with Bazel
run: |
bazel build --config=per-x86_64-linux //tests/cpp_test_scenarios:cpp_test_scenarios
bazel build --config=per-x86_64-linux //tests/test_scenarios/cpp:test_scenarios

- name: Build Rust test scenarios with Bazel
run: |
bazel build //tests/rust_test_scenarios:rust_test_scenarios
bazel build //tests/test_scenarios/rust:test_scenarios

- name: Set up Python 3
uses: actions/setup-python@v5
with:
python-version: '3.12'

- name: Set up Python virtual environment
working-directory: tests/python_test_cases
run: |
python -m venv .venv
source .venv/bin/activate
pip install .
pip install -r tests/test_cases/requirements.txt

- name: Run Python tests with pytest
working-directory: tests/python_test_cases
run: |
source .venv/bin/activate
python -m pytest
python -m pytest --traces=all

- name: Run Python tests with bazel
run: |
bazel test //tests/test_cases:cit

- name: Prepare test reports
if: always()
# Creating tests-report directory
# Follow Symlinks via '-L' to copy correctly
# Copy everything inside the 'test-reports' folder
run: |
mkdir -p tests-report
rsync -amL --include='*/' --include='test.xml' --include='test.log' --exclude='*' bazel-testlogs/ tests-report/

- name: Upload bundled test report
if: always()
uses: actions/upload-artifact@v4
with:
name: tests-report
path: tests-report
15 changes: 15 additions & 0 deletions .github/workflows/docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,21 @@ on:
types: [checks_requested]

jobs:
docs-verify:
uses: eclipse-score/cicd-workflows/.github/workflows/docs-verify.yml@main
permissions:
pull-requests: write
contents: read
with:
bazel-docs-verify-target: "//:docs_check"

cit-tests:
uses: ./.github/workflows/component_integration_tests.yml
secrets: inherit

build-docs:
needs: [docs-verify, cit-tests] # Test reports are needed for traceability links
if: ${{ always() && needs.docs-verify.result == 'success' }}
uses: eclipse-score/cicd-workflows/.github/workflows/docs.yml@main
permissions:
contents: write
Expand All @@ -40,3 +54,4 @@ jobs:
with:
bazel-target: "//:docs -- --github_user=${{ github.repository_owner }} --github_repo=${{ github.event.repository.name }}"
retention-days: 3
tests-report-artifact: tests-report
47 changes: 24 additions & 23 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ on:
types: [created]

jobs:
archive-report:
release-verification:
runs-on: ubuntu-latest
permissions:
contents: write # required to upload release assets
Expand Down Expand Up @@ -60,13 +60,30 @@ jobs:

- name: Build via Bazel
run: |
echo "Running: bazel build //src/..."
bazel build //src/...
echo "Running: bazel build --config=per-x86_64-linux //src/..."
bazel build --config=per-x86_64-linux //src/...

- name: Run Unit Tests via Bazel
run: |
echo "Running: bazel test //:unit_tests"
bazel test //:unit_tests
echo "Running: bazel test --config=per-x86_64-linux //:unit_tests"
bazel test --config=per-x86_64-linux //:unit_tests

- name: Run Unit Test with Coverage for Rust
run: |
# Run tests
bazel coverage --config=per-x86_64-linux //:unit_tests \
--collect_code_coverage \
--combined_report=lcov \
--experimental_generate_llvm_lcov \
--nocache_test_results \
--nostamp
# Generate HTML report
genhtml "$(bazel info output_path)/_coverage/_coverage_report.dat" \
-o=rust_coverage \
--show-details \
--legend \
--function-coverage \
--branch-coverage

- name: Run Unit Test with Coverage for C++
run: |
Expand All @@ -87,24 +104,8 @@ jobs:
--show-details \
--legend \
--function-coverage \
--branch-coverage

- name: Run Unit Test with Coverage for Rust
run: |
# Run tests
bazel coverage //:unit_tests_rust \
--collect_code_coverage \
--combined_report=lcov \
--experimental_generate_llvm_lcov \
--nocache_test_results \
--nostamp
# Generate HTML report
genhtml "$(bazel info output_path)/_coverage/_coverage_report.dat" \
-o=rust_coverage \
--show-details \
--legend \
--function-coverage \
--branch-coverage
--branch-coverage \
--ignore-errors=unmapped

- name: Create archive of test report
run: |
Expand Down
4 changes: 2 additions & 2 deletions BUILD
Original file line number Diff line number Diff line change
Expand Up @@ -129,8 +129,8 @@ test_suite(
test_suite(
name = "cit_tests",
tests = [
"//tests/python_test_cases:cit_cpp",
"//tests/python_test_cases:cit_rust",
"//tests/test_cases:cit_cpp",
"//tests/test_cases:cit_rust",
],
visibility = ["//visibility:public"],
)
26 changes: 13 additions & 13 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ resolver = "2"
members = [
"src/rust/rust_kvs",
"src/rust/rust_kvs_tool",
"tests/rust_test_scenarios",
"tests/test_scenarios/rust",
]


Expand Down
10 changes: 3 additions & 7 deletions MODULE.bazel
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ pip = use_extension("@rules_python//python/extensions:pip.bzl", "pip", dev_depen
pip.parse(
hub_name = "pip_score_venv_test",
python_version = PYTHON_VERSION,
requirements_lock = "//tests/python_test_cases:requirements.txt.lock",
requirements_lock = "//tests/test_cases:requirements.txt.lock",
)
use_repo(pip, "pip_score_venv_test")

Expand Down Expand Up @@ -88,12 +88,8 @@ bazel_dep(name = "platforms", version = "1.0.0")
bazel_dep(name = "score_baselibs", version = "0.1.2")
bazel_dep(name = "score_bazel_platforms", version = "0.0.2")
bazel_dep(name = "score_docs_as_code", version = "2.2.0")
bazel_dep(name = "score_platform", version = "0.5.0")
git_override(
module_name = "score_platform",
commit = "9d30b718db22ad335cccbcfd72f96e5b37fa58f1", # obsolete by 0.5.1+
remote = "https://github.com/eclipse-score/score.git",
)

bazel_dep(name = "score_platform", version = "0.5.2", dev_dependency = True)

bazel_dep(name = "score_process", version = "1.3.2")
bazel_dep(name = "score_python_basics", version = "0.3.4")
Expand Down
2 changes: 2 additions & 0 deletions docs/persistency/docs/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -23,5 +23,7 @@ Module Documents Persistency

manual/index.rst
safety_mgt/index.rst
security_mgt/index.rst
verification/module_verification_report.rst
release/release_note.rst

Loading
Loading