Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Added initial release management process description. #578

Open
wants to merge 4 commits into
base: main
Choose a base branch
from

Conversation

FScholPer
Copy link
Contributor

…areas index.rst to point to new release_management process. Moved workproducts from general area to new release_management process

Frank Scholter Peres [email protected], Daniel Kroehnert[email protected] Mercedes-Benz Tech Innovation GmbH
Provider Information

Copy link

github-actions bot commented Mar 6, 2025

License Check Results

🚀 The license check preparation job ran successfully.

Status: ⚠️ Needs Review

Click to expand output
2025/03/12 16:58:16 Downloading https://releases.bazel.build/7.4.0/release/bazel-7.4.0-linux-x86_64...
Extracting Bazel installation...
Starting local Bazel server and connecting to it...
Computing main repo mapping: 
Computing main repo mapping: 
Loading: 
Loading: 0 packages loaded
Loading: 0 packages loaded
    currently loading: docs
Loading: 0 packages loaded
    currently loading: docs
Analyzing: target //docs:license.check.python (1 packages loaded)
Analyzing: target //docs:license.check.python (1 packages loaded, 0 targets configured)
Analyzing: target //docs:license.check.python (1 packages loaded, 0 targets configured)

Analyzing: target //docs:license.check.python (97 packages loaded, 10 targets configured)

Analyzing: target //docs:license.check.python (127 packages loaded, 803 targets configured)

Analyzing: target //docs:license.check.python (136 packages loaded, 1226 targets configured)

Analyzing: target //docs:license.check.python (144 packages loaded, 2465 targets configured)

Analyzing: target //docs:license.check.python (144 packages loaded, 2465 targets configured)

Analyzing: target //docs:license.check.python (147 packages loaded, 4487 targets configured)

Analyzing: target //docs:license.check.python (148 packages loaded, 4611 targets configured)

Analyzing: target //docs:license.check.python (148 packages loaded, 4611 targets configured)

Analyzing: target //docs:license.check.python (148 packages loaded, 4611 targets configured)

INFO: Analyzed target //docs:license.check.python (149 packages loaded, 4736 targets configured).
[11 / 13] [Prepa] JavaToolchainCompileBootClasspath external/rules_java~/toolchains/platformclasspath.jar
[12 / 13] Building docs/license.check.python.jar (); 0s multiplex-worker
INFO: Found 1 target...
Target //docs:license.check.python up-to-date:
  bazel-bin/docs/license.check.python
  bazel-bin/docs/license.check.python.jar
INFO: Elapsed time: 21.069s, Critical Path: 2.50s
INFO: 13 processes: 9 internal, 3 processwrapper-sandbox, 1 worker.
INFO: Build completed successfully, 13 total actions
INFO: Running command line: bazel-bin/docs/license.check.python docs/formatted.txt -review -project automotive.score -repo https://github.com/eclipse-score/score -token otyhZ4eaRYK1tKLNNF-Y
[main] INFO Querying Eclipse Foundation for license data for 69 items.
[main] INFO Found 45 items.
[main] INFO Querying ClearlyDefined for license data for 31 items.
[main] INFO Found 31 items.
[main] INFO License information could not be automatically verified for the following content:
[main] INFO 
[main] INFO pypi/pypi/-/debugpy/1.8.12
[main] INFO pypi/pypi/-/docutils/0.21.2
[main] INFO pypi/pypi/-/fonttools/4.56.0
[main] INFO pypi/pypi/-/matplotlib/3.10.0
[main] INFO pypi/pypi/-/numpy/2.2.3
[main] INFO pypi/pypi/-/pillow/11.1.0
[main] INFO pypi/pypi/-/pyparsing/3.2.1
[main] INFO 
[main] INFO This content is either not correctly mapped by the system, or requires review.
[main] INFO A review is required for pypi/pypi/-/numpy/2.2.3.
[main] INFO A review request already exists https://gitlab.eclipse.org/eclipsefdn/emo-team/iplab/-/issues/19888 .
[main] INFO A review is required for pypi/pypi/-/fonttools/4.56.0.
[main] INFO A review request already exists https://gitlab.eclipse.org/eclipsefdn/emo-team/iplab/-/issues/19889 .
[main] INFO A review is required for pypi/pypi/-/docutils/0.21.2.
[main] INFO A review request already exists https://gitlab.eclipse.org/eclipsefdn/emo-team/iplab/-/issues/19880 .
[main] INFO A review is required for pypi/pypi/-/pillow/11.1.0.
[main] INFO A review request already exists https://gitlab.eclipse.org/eclipsefdn/emo-team/iplab/-/issues/19890 .
[main] INFO A review is required for pypi/pypi/-/pyparsing/3.2.1.
[main] INFO A review request already exists https://gitlab.eclipse.org/eclipsefdn/emo-team/iplab/-/issues/19891 .
[main] INFO A review is required for pypi/pypi/-/debugpy/1.8.12.
[main] INFO A review request already exists https://gitlab.eclipse.org/eclipsefdn/emo-team/iplab/-/issues/19903 .
[main] INFO A review is required for pypi/pypi/-/matplotlib/3.10.0.
[main] INFO A review request already exists https://gitlab.eclipse.org/eclipsefdn/emo-team/iplab/-/issues/19892 .

Copy link

github-actions bot commented Mar 6, 2025

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

@FScholPer FScholPer linked an issue Mar 6, 2025 that may be closed by this pull request
@FScholPer FScholPer changed the title Added initial release managmenet process description. Edited process_… Added initial release management process description. Mar 6, 2025
@kroehnd kroehnd force-pushed the kroehnd_release_management_process branch from 8e11f9e to 5173fcd Compare March 7, 2025 05:52
@masc2023 masc2023 added this to the SCORE Process Audit 3 milestone Mar 7, 2025
@masc2023
Copy link
Contributor

masc2023 commented Mar 7, 2025

@kroehnd , I am not able to build that locally, as branch is not reachable for me

Added initial release managmenet process description.
Edited process_areas index.rst to point to new release_management process.
Moved workproducts from general area to new release_management process
Fixed gitlint issues, added missing Copyright header.

Resolves: eclipse-score#313
@kroehnd kroehnd force-pushed the kroehnd_release_management_process branch from 5173fcd to 02c9c1e Compare March 7, 2025 08:49
* Creates and maintains the platform release plan
* Aligns with the *Tech Lead Circle* the timeline from various module release plans

Platform Release
Copy link
Contributor

Choose a reason for hiding this comment

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

What do you mean by platform release? Release of the score repository or the reference integration?

Copy link
Contributor

Choose a reason for hiding this comment

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

Also what is the git branching strategy? Will we have an separate Release Branch for Platform and all Modules?

Copy link
Contributor

Choose a reason for hiding this comment

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

What do you mean by platform release? Release of the score repository or the reference integration?

By platform I am referring to the S-CORE repo release, which then would contain multiple sw modules

Also what is the git branching strategy? Will we have an separate Release Branch for Platform and all Modules?

TODO: I will add a proposal for the git branching strategy

* Each software module is contained in its own GitHub repository.
* Ensure that the repository follows the standard naming conventions and structure.

2. **Release Planning**:
Copy link
Contributor

Choose a reason for hiding this comment

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

Is there a template for the release planning available? If so please link it!

Copy link
Contributor

Choose a reason for hiding this comment

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

I was thinking to create a planning template, but I had the feeling that this is upon the decision of the project leads/technical leads how they want to plan.


* Create a release plan for each software module.
* The release plan should include timelines, milestones, and deliverables.
* Coordinate with other module owners to align release schedules.
Copy link
Contributor

Choose a reason for hiding this comment

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

Should the module release plan not but aligned with the platform release any only other dependend modules?

Copy link
Contributor

Choose a reason for hiding this comment

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

As for my understanding the modules are individually managed but there should be a bi directional dialogue to align needs and timelines

Copy link
Contributor

@aschemmel-tech aschemmel-tech left a comment

Choose a reason for hiding this comment

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

see inline comments


5. **Release Execution**:

* Push the release to the main branch.
Copy link
Contributor

Choose a reason for hiding this comment

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

it is not clear what "the release" is? Is it the release note? A release branch that is merged back?

Copy link
Contributor

Choose a reason for hiding this comment

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

Push the release refers to the act of pushing the last necessary changes to the main branch in order to be able to release

Copy link
Contributor

Choose a reason for hiding this comment

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

Please align this now with the braching strategy, I would have thought we release in a branch and later merge the content back in the main?

5. **Release Execution**:

* Push the release to the main branch.
* Create a release in the GitHub repository and attach the release notes.
Copy link
Contributor

Choose a reason for hiding this comment

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

Confusing: First "push" and then "create"?

Copy link
Contributor

Choose a reason for hiding this comment

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

Push the release refers to the act of pushing the last necessary changes to the main branch.
The create refers to the github process of creating a release which is called on the github help pages Creating a release
https://docs.github.com/en/repositories/releasing-projects-on-github/managing-releases-in-a-repository

Copy link
Contributor

Choose a reason for hiding this comment

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

ok, then please add this to description

:maxdepth: 1

release_guideline
release_templates
Copy link
Contributor

Choose a reason for hiding this comment

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

I would also suggest we have a "release issue template" to implement the "release plan" which we link to a milestone defined by project management and define in it the steps to do for a release. And "close" this with a "release note" PR.

Copy link
Contributor

Choose a reason for hiding this comment

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

still open

# *******************************************************************************

Concept Description
###################
Copy link
Contributor

Choose a reason for hiding this comment

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

we also need to fill out the https://github.com/eclipse-score/score/blob/main/docs/platform_management_plan/release_management.rst document - there we should define what we release: not a executable build SW but only a set of source code files with verification and documentation collaterals.

Copy link
Contributor

Choose a reason for hiding this comment

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

still open

@masc2023 masc2023 linked an issue Mar 10, 2025 that may be closed by this pull request
kroehnd added 2 commits March 12, 2025 17:54
// Fixes based on comments TODO: text and marked with a thumbs up
- Added proposal for the git branching strategy.
- Mentioned the possibility to justify failed test cases.
- Added Versioning Policy Chapter.
- Fixed typo in release concept.
- Added link to detailed overview of responsibilities.
- Fixed indent in release workflow.
- Added wp__module_sw_verification_report to inputs.
- Replaced module safety case with platform safety case.
- Adapted module safety case to use platform safety case.
- Added wp__platform_sw_verification_report to inputs.
- Added wp__platform_mgmt and wp__issue_track_system to inputs.
- Changed status to valid for work products.
- Adapted inputs and separated outputs list.
- Slight rework of wording to capture "feature requests".
- Added release note mention for each module.
- Changed wording from Version to Release Tag and added hash.
- Adapted wording to refer to tech lead circle instead of platform release manager.
- Changed wording to "publish within Eclipse SDV".
- Mentioned tech lead circle for periodic meetings.
- Adjusted template to mention safety in known issues.

Resolves: eclipse-score#313
Copy link
Contributor

@aschemmel-tech aschemmel-tech left a comment

Choose a reason for hiding this comment

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

checked updates and resolved some comments, others are still open or were added

.. _workflow_release:

Software Module Release
-----------------------
Copy link
Contributor

Choose a reason for hiding this comment

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

there are two roles involved, it is not clear who does what, maybe refer to workflow where it is said that the TL is resoponsible and the PL approves, also recommend to include the release as a responsibility/authority to rl_project_lead and rl_technical_lead.

#. Platform release plan
#. Platform release note

Platform Release Plan
Copy link
Contributor

Choose a reason for hiding this comment

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

Need to discuss in the process community if we need a release plan as a seperate wp. Also still there is no content in the PMP release management section.

Inputs
******

#. Module safety case
Copy link
Contributor

Choose a reason for hiding this comment

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

in the meantime we renamed the "safety case"s to "safety package"


#. :need:`Project Lead Circle <rl__project_lead>`

* Creates and maintains the platform release plan
Copy link
Contributor

Choose a reason for hiding this comment

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

still have another understanding of the PL's responsibility - in the workflows I think it is correcly defined.

* Releases the platform

Module Release Plan
===================
Copy link
Contributor

Choose a reason for hiding this comment

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

I think this is maybe a content we define together with the TL circle and document in the platform management plan.


* Regularly update all stakeholders on the release status.
* Hold periodic meetings to discuss progress, issues, and dependencies.
* Ensure clear and transparent communication throughout the release process.
Copy link
Contributor

Choose a reason for hiding this comment

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

sorry, what I meant is that instead of describing our goal, we should describe how we can reach it.


5. **Release Execution**:

* Push the release to the main branch.
Copy link
Contributor

Choose a reason for hiding this comment

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

Please align this now with the braching strategy, I would have thought we release in a branch and later merge the content back in the main?

5. **Release Execution**:

* Push the release to the main branch.
* Create a release in the GitHub repository and attach the release notes.
Copy link
Contributor

Choose a reason for hiding this comment

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

ok, then please add this to description

:maxdepth: 1

release_guideline
release_templates
Copy link
Contributor

Choose a reason for hiding this comment

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

still open

# *******************************************************************************

Concept Description
###################
Copy link
Contributor

Choose a reason for hiding this comment

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

still open

Copy link
Contributor

@aschemmel-tech aschemmel-tech left a comment

Choose a reason for hiding this comment

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

another inline comment

:contains: gd_temp__rel__mod_rel_note
:has: doc_concept__req__process, doc_concept__req__process

The module release note provides clarity what is included in the current version of the software
Copy link
Contributor

@aschemmel-tech aschemmel-tech Mar 31, 2025

Choose a reason for hiding this comment

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

This is a description of the work product and not of the workflow (activity) - please copy/align the text with the wp one and create a new description of the wf. Same remark for the other wf in this file.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: In Progress
Development

Successfully merging this pull request may close these issues.

Epic: (Initial) Processes Release Management Improvement: Document Release Management Process
5 participants