StarlingX/Release Process
Describe the steps in creating a StarlingX Release
Release Activity
Milestone
- Finalize any outstanding changes to master stx-manifest/default.xml, particularly for the starlingx and stx-staging remotes as those are used to create the list of repos to branch and tag.
- Create the branches and tag them by running stx-tools/release/branch-stx.sh. Set SERIES to the proper value if the current year/month is not correct:
SERIES=2018.07 stx-tools/release/branch-stx.sh
- Create the branch manifest in stx-manifest/default.xml
- Review and approve the .gitreview updates in the new branch
Release
- Make a cleanup pass though release notes and add missing
- Finalize any outstanding changes to master stx-manifest/default.xml, particularly for the starlingx and stx-staging remotes as those are used to create the list of repos to branch and tag.
- Create the branches and tag them by running stx-tools/release/branch-stx.sh. Set SERIES, BRANCH and TAG to the proper values:
- SERIES=YYYY.MM
- BRANCH=r/YYYY.MM
- TAG=YYYY.MM.rc1
- Create the branch manifest in stx-manifest/default.xml
- Review and approve the .gitreview updates in the new branch
- Look for UPPER_CONSTRAINTS_FILE values to update for stable branches (there may not be any as this is an OpenStack-ism that we would change when rebasing OpenStack projects)
- Verify release notes appear correctly and make adjustments
Scripts
branch-stx.sh
Found in stx-tools/release, performs the following steps:
- create repo list using getrepo.sh (also in stx-tools/release) to extract from stx-manifest/default.xml for the starlingx and stx-staging remotes
- for each repo:
- clone repo
- create the new branch
- tag branch
- for gerrit (starlingx) repos:
- push to gerrit
- update .gitreview
- for Github repos (stx-staging):
- push to github