Criteria for a repo to be included in an O3DE release? #129
Replies: 7 comments 5 replies
-
We want there to be as few canonical repos as possible because this is a multiplication point for SIG load. For all practical purposes we should think of all canonical repos conceptually as 1 repo, or conceptually as submodules of a master O3DE repo. All canonical repos are therefore considered part of the engine. All canonical repos are tested as working as part of a release of the engine. A breakage in any canonical repo is considered a break in the engine as a whole, just as if it was in the core repo, and thus would halt a release. We should refer to o3de/o3de now as the "core engine repo", it is a special canonical repo as it must be able to be built and run in isolation and therefore must not have any dependencies on any other repo. Since we consider all canonical repos conceptually as one repo:
Other considerations:
Future thoughts:
|
Beta Was this translation helpful? Give feedback.
-
@tonybalandiuk Few questions
|
Beta Was this translation helpful? Give feedback.
-
@byrcolin is there an easy way to see "The list of all Canonical repos"? |
Beta Was this translation helpful? Give feedback.
-
Does anyone disagree with the statement "All canonical repos should be included in the O3DE release process" ? |
Beta Was this translation helpful? Give feedback.
-
Decided on 2/28
|
Beta Was this translation helpful? Give feedback.
-
@tonybalandiuk to document in our release process documentation |
Beta Was this translation helpful? Give feedback.
-
|
Beta Was this translation helpful? Give feedback.
-
Currently (as of O3DE release 22.10.0, Oct 2022), the release process includes the following O3DE Repositories ("repos"):
- o3de
- o3de-multiplayersample
- o3de-netsoaktest
This means that during the release cycle:
(1) each of these repositories will have a "Stabilization branch" created where big fixing occurs leading up to the release. If any of these repositories are not declared "stable", the release will be held.
(2) when we are ready to release, the code from the stabilization branch for each repository is merged to main is updated
(3) a release tag is applied upon updating the code in these repositories.
Purpose of this discussion:
Determine the specific criteria we use to determine which O3DE repositories to include in the O3DE release process. This discussion may be as simple as declaring "all canonical repos are included in the O3DE release process". Regardless, we want to open this discussion to the O3DE community so everyone can voice their opinion.
Background:
During the 1/17 #sig-release meeting we discussed the possibility of including the O3DE Extras Repo since it is now considered "canonical". See notes at https://github.com/o3de/sig-release/blob/main/meetings/notes/2023%20-%20January%2017th.md
This raised a more general question of "what should be the criteria for a repository to be included in a release?" which will be formally discussed under this discussion.
The O3DE Extras repo, specifically, will be requested to sig-release AFTER this discussion. This discussion is about the broader discussion for any repo, not just O3DE extras.
Why are we talking about this now:
We're talking about this because the O3DE extras repo was brought up as a candidate for inclusion, noting that it is a "canonical repo" as of November 2022.
Considerations:
Related:
Beta Was this translation helpful? Give feedback.
All reactions