Skip to content

Commit 959394e

Browse files
committed
review suggestions applied
1 parent b588864 commit 959394e

3 files changed

Lines changed: 55 additions & 28 deletions

File tree

bazel_common/score_modules_tooling.MODULE.bazel

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ git_override(
3838
bazel_dep(name = "score_platform")
3939
git_override(
4040
module_name = "score_platform",
41-
commit = "bf8502071d750cb70d88f1cb5cfbf5e5e7407f27",
41+
commit = "dc9930fe7e9bfcc5cbc89b85b287c3120b5e4f52",
4242
remote = "https://github.com/eclipse-score/score.git",
4343
)
4444

docs/how_to_release.rst

Lines changed: 53 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -9,19 +9,19 @@ Definitions
99
Role Description
1010
========================== ====================================================
1111
Reference Integration Team Prepare integration process
12-
Module Codeowners Prepare Module's release candidate
13-
Project Manager Guides the release process and leads decision making
12+
Module Maintainers Prepare Module's release candidate
13+
Project Lead Guides the release process and leads decision making
1414
========================== ====================================================
1515

1616
Process overview
1717
----------------
1818

1919
Release interval between S-CORE Product Increments can be divided into two phases:
2020

21-
**Development phase (4 weeks) :**
21+
**Development phase (6 weeks) :**
2222

2323
#. Common release requirements definition
24-
#. Features' implemntations and improvements
24+
#. Features' implementations and improvements
2525
#. Tooling release
2626
#. Code freeze
2727

@@ -44,40 +44,50 @@ The scope should define requirements such as:
4444
* Supported platforms
4545

4646
rather than specific features' implementation scopes.
47+
Based on the operating system definitions documented in the `Operating Systems<_collections/score_platform/docs/modules/os/operating_systems/docs/index.html>`_
48+
the Reference Integration Team will only maintain functional/certifiable level OSs as part of the release,
49+
while community OSs will be prepared and maintained by the OS module Maintainers. *Code freeze* applies to OSs as well.
4750

4851
.. note::
4952

50-
Performed by: Project Manager and S-CORE community
53+
Performed by: Project Lead and S-CORE community
5154

5255
Features' implemntations and improvements
5356
-----------------------------------------
5457

5558
During the development phase, the community works on new features and improvements to the Modules.
56-
Changes are reviewed by Commiters and Module Codeowners.
59+
Changes are reviewed by Commiters and Module Maintainers.
5760

5861
.. note::
5962

60-
Performed by: S-CORE community and Module Codeowners
63+
Performed by: S-CORE community and Module Maintainers
6164

6265
Tooling release
6366
---------------
6467

65-
S-CORE tools, toolchains and other dependencies are released at the end of the development phase the latest.
68+
S-CORE tools, toolchains and other dependencies which are listed in the following Bazel MODULE files:
69+
70+
* ``bazel_common/score_gcc_toolchains.MODULE.bazel``
71+
* ``bazel_common/score_modules_tooling.MODULE.baze``
72+
* ``bazel_common/score_qnx_toolchains.MODULE.bazel``
73+
* ``bazel_common/score_rust_toolchains.MODULE.baze``
74+
75+
are released at the end of the development phase the latest.
6676
During the integration phase, no changes other than necessary bug fixes are allowed to give time to the Modules to rebase
6777
their dependencies and prepare their *code freeze*.
6878

6979
.. note::
7080

71-
Performed by: Module Codeowners
81+
Performed by: Module Maintainers
7282

7383
Code freeze
7484
-----------
7585
At the end of development phase, each Module must provide a hash of the commit that represents a *code freeze*
7686
and serves as a candidate for integration. The hash can be from the **main** or **dedicated release** branch.
77-
87+
7888
.. note::
7989

80-
Performed by: Module Codeowners
90+
Performed by: Module Maintainers
8191

8292
Release branch creation
8393
-----------------------
@@ -92,35 +102,36 @@ originating from current **main**.
92102
Integration of the Modules
93103
--------------------------
94104

95-
Module Codeowners prepare a Pull Request to that branch with updates to the ``known_good.json`` file,
105+
Module Maintainers prepare a Pull Request to that branch with updates to the ``known_good.json`` file,
96106
pointing to the hash of their *code freeze*. They may update other JSON fields for their Module as needed.
97107
Automated workflows will build and test to provide clear feedback directly in the PR.
98-
If there are any issues, Module Codeowners can either push fixes to their **dedicated release** branch
108+
If there are any issues, Module Maintainers can either push fixes to their **dedicated release** branch
99109
and update the hash in the PR accordingly, or provide patches (see :ref:`ref_int_patching-label`).
100110

101111
.. note::
102112

103-
Performed by: Module Codeowners
113+
Performed by: Module Maintainers
104114

105115
Release candidate
106116
-----------------
107117

108-
Once all Modules are merged with their *code freeze*, Module Codeowners create a tag on that exact hash following the S-CORE release process,
118+
Once all Modules are merged with their *code freeze*, Module Maintainers create a tag on that exact hash following the S-CORE release process,
109119
provide release notes to the ``score_platform`` repository, and ensure that the new release is present in S-CORE's ``bazel_registry``.
110120
The Reference Integration Team prepares a final Pull Request and replaces all hashes with the dedicated release versions.
111121

112-
This pull request has additional workflow checking that every Codeowner has approved the PR signing off their Module's release candidate.
113-
There is an additional ``.rst`` file listing every Module and GitHub ID of the Codeowner responsible.
122+
This pull request has additional workflow checking that every Maintainer has approved the PR signing off their Module's release candidate.
123+
There is an additional ``.rst`` file listing every Module and GitHub ID of the Maintainer responsible.
124+
114125
.. note::
115126

116-
Performed by: Reference Integration Team and Module Codeowners
127+
Performed by: Reference Integration Team and Module Maintainers
117128

118129
Release creation
119130
----------------
120131

121132
Once all previous steps are completed Reference Integration Team triggers the release creation workflow in ``release_integration``.
122133
An automated verification process of the release begins which includes building, testing, deploying documentation and checking that
123-
every Module has been correctly signed-off by its Codeowner. If any issue is found, the release creation process is stopped.
134+
every Module has been correctly signed-off by its Maintainer. If any issue is found, the release creation process is stopped.
124135
When successfully completed the release and its downloadable assets are ready for distribution.
125136

126137
.. note::
@@ -131,11 +142,12 @@ When successfully completed the release and its downloadable assets are ready fo
131142
Opting out of a release
132143
-----------------------
133144

134-
Module Codeowners may decide that their Module will not be released with a new version for the S-CORE Product Increment.
135-
However, they must still ensure that the Module remains compatible with the S-CORE release and does not fail any workflows.
145+
Module Maintainers may decide that their Module will not be released with a new version for the S-CORE Product Increment.
146+
In that case currently integrated version can be used. However, they must still ensure that the Module remains compatible with
147+
the S-CORE release and does not fail any workflows.
136148

137-
If Module Codeowners cannot adapt to the newest release requirements or any S-CORE community member discovers a showstopper
138-
for the upcoming release, they must communicate it promptly to the Project Manager and other community members.
149+
If Module Maintainers cannot adapt to the newest release requirements or any S-CORE community member discovers a showstopper
150+
for the upcoming release, they must communicate it promptly to the Project Lead and other community members.
139151
Following discussion and impact analysis, a decision is made regarding whether to postpone or skip the S-CORE release,
140152
and the planning is updated accordingly.
141153

@@ -150,15 +162,30 @@ Currently following modules can be removed without an impact on the S-CORE relea
150162

151163
Once excluded from the release and integration issue persists also on a ``reference_integration`` **main** branch,
152164
Reference Integration Team will remove the Module completely.
153-
It is up to Module Codeowners to fix and integrate the Module back into the main branch and later releases.
165+
It is up to Module Maintainers to fix and integrate the Module back into the main branch and later releases.
154166

155167

156168
.. _ref_int_patching-label:
157169

158170
Patching Module
159171
---------------
160172

161-
Module Codeowners prepare ``.patch`` file(s) and place them in the ``/patches/MODULE_NAME`` directory.
173+
Module Maintainers prepare ``.patch`` file(s) and place them in the ``/patches/MODULE_NAME`` directory.
162174
The patch filename must clearly indicate what it addresses.
163175
For multiple issues, it is preferred to create multiple patches rather than a single patch addressing all issues.
164-
An empty Bazel ``BUILD`` file must be placed alongside the patches.
176+
177+
Target releases definition
178+
--------------------------
179+
180+
Based on the operating system definitions documented in the `OS module <https://eclipse-score.github.io/score/main/modules/os/operating_systems/docs/index.html>`_,
181+
the Reference Integration Team defines which OSs will be maintained as part of the release:
182+
183+
* **Functional/Certifiable level OSs** - maintained by the Reference Integration Team and included in the release
184+
* **Community OSs** - prepared and maintained by the OS module Maintainers during the integration phase
185+
186+
Only changes to functional/certifiable level OSs are considered until the *code freeze*.
187+
Community OS updates can be prepared by the OS Maintainer during the release phase if needed.
188+
189+
.. note::
190+
191+
Performed by: Reference Integration Team and OS module Maintainers

known_good.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -126,7 +126,7 @@
126126
},
127127
"score_platform": {
128128
"repo": "https://github.com/eclipse-score/score.git",
129-
"hash": "bf8502071d750cb70d88f1cb5cfbf5e5e7407f27"
129+
"hash": "dc9930fe7e9bfcc5cbc89b85b287c3120b5e4f52"
130130
},
131131
"score_bazel_platforms": {
132132
"repo": "https://github.com/eclipse-score/bazel_platforms.git",

0 commit comments

Comments
 (0)