Skip to content

Conversation

@AThums
Copy link
Contributor

@AThums AThums commented Dec 17, 2025

Feature request for issue #2357 as discussed in https://github.com/orgs/eclipse-score/discussions/472#discussioncomment-14990332
Goals is to discuss and acceüt this feature request in F2F meeting in Jan

@github-actions
Copy link

⚠️ Docs-as-Code version mismatch detected
Please check the CI build logs for details and align the documentation version with the Bazel dependency.

@AThums AThums self-assigned this Dec 17, 2025
@AThums AThums requested a review from arsibo December 17, 2025 06:59
Copy link
Contributor

@masc2023 masc2023 left a comment

Choose a reason for hiding this comment

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

@AThums
Copy link
Contributor Author

AThums commented Dec 17, 2025

@AThums AThums closed this Dec 17, 2025
@AThums AThums reopened this Dec 17, 2025
@masc2023 masc2023 linked an issue Dec 17, 2025 that may be closed by this pull request
7 tasks
masc2023
masc2023 previously approved these changes Dec 17, 2025
Copy link
Contributor

@masc2023 masc2023 left a comment

Choose a reason for hiding this comment

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

Linked the PR to the ISSUE, so that it follows the Process,now

@github-actions
Copy link

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

@AThums AThums force-pushed the feature_request/configuration_model branch from bb207b2 to 7ecd3b2 Compare December 17, 2025 14:25
@AThums AThums requested a review from masc2023 December 17, 2025 14:30
@AThums
Copy link
Contributor Author

AThums commented Dec 17, 2025

Linked the PR to the ISSUE, so that it follows the Process,now

issue linked

@AThums AThums closed this Dec 17, 2025
@AThums AThums reopened this Dec 18, 2025
@AThums
Copy link
Contributor Author

AThums commented Dec 18, 2025

re-opend to merge

@AThums
Copy link
Contributor Author

AThums commented Jan 16, 2026

@ramceb : As we were also interested in this topic, can you please give feedback on the content. Thanks, Andreas

Copy link
Contributor

@ramceb ramceb left a comment

Choose a reason for hiding this comment

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

@AThums: Thanks for driving this. Content-wise this goes in the right direction. 5 cents from my side. Sorry for the loose collection of thoughts.

  • the configuration of applications shall be self-contained. This makes testing etc much easier as there are no implicit assumptions on the environment. e.g. an application shall desribe how it wants to be supervised.

  • applications shall describe their assumed and guaranteed capabilities. What they need from their enviroment and what they provide to the environment. Capabilities can be: secpol/selinux config, provided and required services, filesystem access, any other resources etc. out of this we can derive then dependencies.

  • the software platform shall take care at startup if it can fulfill the needs of an application or not.

  • any configuration parameter shall have a direct impact on the behavior of the platform.

  • if we have applications depending on each other, we shall assume that they are developed based on similar application framework, which shall provide consistency checking accross applications.

@AThums
Copy link
Contributor Author

AThums commented Jan 22, 2026

@AThums: Thanks for driving this. Content-wise this goes in the right direction. 5 cents from my side. Sorry for the loose collection of thoughts.

  • the configuration of applications shall be self-contained. This makes testing etc much easier as there are no implicit assumptions on the environment. e.g. an application shall desribe how it wants to be supervised.
  • applications shall describe their assumed and guaranteed capabilities. What they need from their enviroment and what they provide to the environment. Capabilities can be: secpol/selinux config, provided and required services, filesystem access, any other resources etc. out of this we can derive then dependencies.
  • the software platform shall take care at startup if it can fulfill the needs of an application or not.
  • any configuration parameter shall have a direct impact on the behavior of the platform.
  • if we have applications depending on each other, we shall assume that they are developed based on similar application framework, which shall provide consistency checking accross applications.

@ramceb considered point 1, 2, and 4. Point 3 is a requirements to platform module and 5 to the application module developer. Thanks for review and pls. request a committer to accept the feature request so that we can start working on the content.

Abstract
========

This proposal introduces a unified approach to static module configuration in S-CORE by combining a Configuration Guideline and a Configuration Model. While the guideline defines how configurations should be structured—covering naming conventions, identifier usage, storage formats, and parameter organization—the model specifies what needs to be configured, focusing on common elements that must remain consistent across all modules. The dual approach ensures clarity, predictability, and maintainability, reducing integration complexity and improving user experience. By standardizing both the structure and the content of configurations, the solution enables faster onboarding of new modules, supports future extensions (e.g., JSON or FlatBuffers), and lays the foundation for automated compliance checks.
Copy link
Contributor

Choose a reason for hiding this comment

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

Perhaps a more neutral term like "Platform Component Configuration" and "Application Configuration" would be better.
In the S-Core context, a "module" is understood as a container implemented through a repository with a BAZEL module.


2. **Migration Timeline**: Coordination with existing module development cycles

3. **Validation Granularity**: Define scope of cross-module consistency checks vs. module autonomy
Copy link
Contributor

Choose a reason for hiding this comment

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

For better understanding, I would speak of local configuration vs. global configuration.
Even with a locally stored configuration, I would separate the local and global/cross-functional aspects.
This way, the global/cross-functional aspects can be better checked during integration.

==========

The current configuration landscape in S-CORE suffers from fragmentation: contributors define static configurations independently, leading to inconsistencies in identifiers, variable naming, and file storage. Beyond structural differences, there is no common understanding of what must be configured for each module (e.g. how to support for "multiple instances"). This results in missing or redundant parameters, unclear dependencies, and unpredictable integration behavior. Without a shared model, cross-module consistency can hardly be guaranteed, making maintenance and scaling difficult. Introducing both a guideline and a model addresses these gaps by ensuring uniformity in configuration structure and content, reducing errors, and improving overall system reliability.

Copy link
Contributor

Choose a reason for hiding this comment

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

It should be explained what the configuration object is.

  • Application configuration (e.g. ADAS application)
  • Middleware configuration (e.g. selection of functionality, adaptation to OS, HW, ...)

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.

Change: Configuration Guideline for Module Configuration

4 participants