Difference between revisions of "StarlingX/Release Plan"
Ghada.khalil (talk | contribs) |
Ghada.khalil (talk | contribs) |
||
Line 4: | Line 4: | ||
---- | ---- | ||
== Release Definition == | == Release Definition == | ||
− | |||
A StarlingX milestone/release is a tagged branch in the source code repositories that: | A StarlingX milestone/release is a tagged branch in the source code repositories that: | ||
* is considered stable and can be used for repeatable builds | * is considered stable and can be used for repeatable builds | ||
Line 15: | Line 14: | ||
== Release Cadence and Schedule == | == Release Cadence and Schedule == | ||
− | |||
'''Releases are published in a time based fashion:''' | '''Releases are published in a time based fashion:''' | ||
* The initial StarlingX release is planned for October 2018 | * The initial StarlingX release is planned for October 2018 | ||
* From 2019, the regular release cadence is 3 releases/year; released in March, July, and November. | * From 2019, the regular release cadence is 3 releases/year; released in March, July, and November. | ||
− | + | === Formal Releases === | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
* Released three times per year | * Released three times per year | ||
* For each release, the code freeze for that release is four weeks prior to the release date. | * For each release, the code freeze for that release is four weeks prior to the release date. | ||
Line 47: | Line 28: | ||
* Release is tagged as YYYY.MM.0 | * Release is tagged as YYYY.MM.0 | ||
− | + | === Monthly Milestones === | |
* Informal milestones to be used by the test team for a pre-defined sanity/regression test cycle. | * Informal milestones to be used by the test team for a pre-defined sanity/regression test cycle. | ||
* Created each month in the 2nd week of the month a branch will be pulled. | * Created each month in the 2nd week of the month a branch will be pulled. | ||
Line 56: | Line 37: | ||
* Milestone is tagged as YYYY.MM.0 | * Milestone is tagged as YYYY.MM.0 | ||
− | ==== | + | == Release Milestones == |
− | * | + | StarlingX follows the openstack release milestones. The criteria for each milestone is defined to align more closely with the StarlingX deliverables/development cycle |
+ | * Milestone-1: | ||
+ | ** Release priorities and major features defined. | ||
+ | ** High level resourcing secured. | ||
+ | * Milestone-2: | ||
+ | ** Spec Freeze | ||
+ | ** Feature Development underway | ||
+ | ** TBD: others? Doc deliverables? Test Automation deliverables? | ||
+ | * Milestone-3: | ||
+ | ** Feature Freeze: All Feature Code Submitted and Feature Testing Complete | ||
+ | ** No blocking issues from Automated Sanity and Regression | ||
+ | ** Release Test Plan Defined (any specific test automation deliverables?) | ||
+ | ** Preliminary Documentation Available | ||
+ | ** TBD: any criteria for # of open bugs for the milestone declaration? | ||
+ | * RC1 (aka RC period start): | ||
+ | ** Release Branch Created & First Release Candidate Tagged | ||
+ | ** RC ISO and supporting build artifacts posted on CENGN (?) | ||
+ | *** To be discussed: how often do we build an "RC" ISO and post during the RC period? | ||
+ | ** Release Testing Start | ||
+ | ** Only Bug fixes are allowed in the release branch | ||
+ | * Final Release | ||
+ | ** Release Testing Complete and Pass Rate meets project criteria (> 95% ?) | ||
+ | ** All release gating issues are addressed or reviewed/accepted for deferral | ||
+ | ** Release tagged on release branch | ||
+ | ** Release ISO and supporting build artifacts posed on CENGN (?) | ||
+ | ** Final documentation posted on docs.startlingx.io | ||
+ | |||
+ | == Release Maintenance == | ||
+ | * Formal releases are supported for 12 months. This allows support to two previous StarlingX (n and n-1) releases. | ||
+ | * During the maintenance window, if there are fixes on the release branch, a new maintenance release will be created once a month. (will need to include a mini-test cycle) and the corresponding binaries posted publicly on CENGN. | ||
+ | * Long Term Support (if any): TBD | ||
− | |||
− | |||
− | |||
== List of Releases == | == List of Releases == | ||
Line 67: | Line 75: | ||
{| class="wikitable" | {| class="wikitable" | ||
|- | |- | ||
− | ! Version !! | + | ! Version !! Milestone-1 !! Milestone-2 !! Milestone-3 !! RC1 !! Release Date !! End of Life Date |
− | |||
− | |||
− | |||
− | |||
|- | |- | ||
− | | | + | | 2018.10.0 || N/A || N/A || 2018/09/26 || 2018/09/28|| 2018/10/24 || TBD |
|- | |- | ||
− | | 2019. | + | | 2019.xx.0 || TBD || TBD || TBD || TBD || TBD || TBD |
|- | |- | ||
− | | .. | + | | 2019.yy.0 || TBD || TBD || TBD || TBD || TBD || TBD |
|} | |} | ||
Revision as of 03:57, 4 December 2018
Releases
StarlingX is released periodically; one release in 2018 and three releases/year starting in 2019. A release consists of a branch in the source code repositories that enables repeatable builds over time.
Contents
Release Definition
A StarlingX milestone/release is a tagged branch in the source code repositories that:
- is considered stable and can be used for repeatable builds
- will have no additional features added
- will backport bug fixes for critical issues only
- will be maintained in the canonical repositories for a specified minimum period
- The list of repos included is maintained in stx-manifest/default.xml (or similar) for any given release. (Note: this file included non-StarlingX-managed repos, only repos from the "starlingx" and "stx-staging" remotes are included.)
- The actual release is a tag on the corresponding branch, i.e. r/2018.10 release branch will be initially tagged as 2018.10.0
Release Cadence and Schedule
Releases are published in a time based fashion:
- The initial StarlingX release is planned for October 2018
- From 2019, the regular release cadence is 3 releases/year; released in March, July, and November.
Formal Releases
- Released three times per year
- For each release, the code freeze for that release is four weeks prior to the release date.
- Branch name format r/YYYY.MM[.n]
- 'r/' is the branch name prefix (release)
- .n is a sequence number appended if more than one branch is created in a given month
r/2018.10
- Release Candidate is tagged as YYYY.MM.rcX
- Release is tagged as YYYY.MM.0
Monthly Milestones
- Informal milestones to be used by the test team for a pre-defined sanity/regression test cycle.
- Created each month in the 2nd week of the month a branch will be pulled.
- Branch name format m/YYYY.MM
- 'm/' is the branch name prefix (milestone)
- .n is a sequence number appended if more than one branch is created in a given month
m/2018.07
- Milestone is tagged as YYYY.MM.0
Release Milestones
StarlingX follows the openstack release milestones. The criteria for each milestone is defined to align more closely with the StarlingX deliverables/development cycle
- Milestone-1:
- Release priorities and major features defined.
- High level resourcing secured.
- Milestone-2:
- Spec Freeze
- Feature Development underway
- TBD: others? Doc deliverables? Test Automation deliverables?
- Milestone-3:
- Feature Freeze: All Feature Code Submitted and Feature Testing Complete
- No blocking issues from Automated Sanity and Regression
- Release Test Plan Defined (any specific test automation deliverables?)
- Preliminary Documentation Available
- TBD: any criteria for # of open bugs for the milestone declaration?
- RC1 (aka RC period start):
- Release Branch Created & First Release Candidate Tagged
- RC ISO and supporting build artifacts posted on CENGN (?)
- To be discussed: how often do we build an "RC" ISO and post during the RC period?
- Release Testing Start
- Only Bug fixes are allowed in the release branch
- Final Release
- Release Testing Complete and Pass Rate meets project criteria (> 95% ?)
- All release gating issues are addressed or reviewed/accepted for deferral
- Release tagged on release branch
- Release ISO and supporting build artifacts posed on CENGN (?)
- Final documentation posted on docs.startlingx.io
Release Maintenance
- Formal releases are supported for 12 months. This allows support to two previous StarlingX (n and n-1) releases.
- During the maintenance window, if there are fixes on the release branch, a new maintenance release will be created once a month. (will need to include a mini-test cycle) and the corresponding binaries posted publicly on CENGN.
- Long Term Support (if any): TBD
List of Releases
Planned
Version | Milestone-1 | Milestone-2 | Milestone-3 | RC1 | Release Date | End of Life Date |
---|---|---|---|---|---|---|
2018.10.0 | N/A | N/A | 2018/09/26 | 2018/09/28 | 2018/10/24 | TBD |
2019.xx.0 | TBD | TBD | TBD | TBD | TBD | TBD |
2019.yy.0 | TBD | TBD | TBD | TBD | TBD | TBD |
Release Team
- For team members and other information, visit the StarlingX Releases sub-project wiki page here