Difference between revisions of "TripleO/ReleaseManagement"
< TripleO
Rpodolyaka (talk | contribs) (Created page with "==== Prerequisites ==== # [https://help.launchpad.net/YourAccount/ImportingYourPGPKey Upload] your GPG key to Launchpad # Become a member of [https://review.openstack.org/#/a...") |
|||
Line 30: | Line 30: | ||
* Find the version number of the last release among the other tags | * Find the version number of the last release among the other tags | ||
− | git tag | + | git tag | sort --version-sort |
* Find out what has changed since the last release | * Find out what has changed since the last release |
Revision as of 13:53, 13 February 2014
Prerequisites
- Upload your GPG key to Launchpad
- Become a member of tripleo-ptl ACL group in Gerrit
Projects
Currently, we make releases of the following projects on a regular basis:
- os-apply-config
- os-refresh-config
- os-collect-config
- diskimage-builder
- tripleo-heat-templates
- tripleo-image-elements
- tuskar
- tuskar-ui
- python-tuskarclient
Versioning scheme
Generally, we follow the rules of Semantic Versioning, but as long as 1.0.0 version of a project hasn't been released, we use 0.MAJOR.MINOR versioning scheme, bumping MAJOR only when we do something incompatible with the previous release, and bumping MINOR part otherwise.
How to make a release
- Go to the project dir
- Update your clone
git remote update git checkout master && git pull
- Find the version number of the last release among the other tags
git tag | sort --version-sort
- Find out what has changed since the last release
git log -u --no-merges $LAST_VERSION..HEAD
- Create a signed tag bumping the version number according to the versioning scheme described above
git tag -s X.Y.Z
- Verify the tag GPG signature
git tag -v $NEW_VERSION
- Push the created tag to Gerrit
git push gerrit $NEW_VERSION
- Use process_bugs util to close all the bugs which are in 'Fix committed' state
python process_bugs.py $PROJECT_NAME --fixrelease