-
Notifications
You must be signed in to change notification settings - Fork 17
Release Procedure
Hyungro Lee edited this page May 19, 2020
·
9 revisions
- Release Manager: HL
- 1st Tuesday of the month
- If the release is a milestone release: no open tickets for the milestone
- Travis CI on
devel
ispassing
(http://ci.radical-project.org/job/radical.entk.devel/branch/devel/) - PyPI maintainer
- Repo maintainer (admin: https://github.com/orgs/radical-cybertools/teams/admin)
- Define a new version
export ENTK_RELEASE_VERSION="1.0.1"
(replace 1.0.1 accordingly) - Create a branch from the latest master: e.g.
git checkout master; git pull; git checkout -b release/$ENTK_RELEASE_VERSION
- Update the version file:
echo $ENTK_RELEASE_VERSION > VERSION
- Make modifications to the branch: followed by merging devel
git merge devel
(make sure to pull devel before) - Update release notes:
$EDITOR CHANGES.md
- Commit and push:
git commit -a; git push origin release/$ENTK_RELEASE_VERSION
- Create pull-request of release branch to the master (base): https://github.com/radical-cybertools/radical.entk/pulls
- Wait on and/or nudge other developers to review and test
- If not approved,
GOTO 3
- Define a new version
export ENTK_RELEASE_VERSION="1.0.1"
(replace 1.0.1 accordingly) - Create a branch from the latest master: e.g.
git checkout master; git pull; git checkout -b hotfix/issue_123
- Update version
echo $ENTK_RELEASE_VERSION > VERSION
- Make modifications to the branch: either by
$EDITOR
orgit cherry-pick abcsuperdupercommit890
(The latter is preferred) - Update release notes:
$EDITOR CHANGES.md
- Commit and push:
git commit -a; git push hotfix/issue_123
- Create pull-request of hotfix branch to the master(base): https://github.com/radical-cybertools/radical.entk/pulls
- Wait on and/or nudge other developers to review and test
- If not approved,
GOTO 3
- If approved, move to master branch and pull in the merged content:
git checkout master
, thengit pull
- Create tag:
git tag -a v$ENTK_RELEASE_VERSION -m "release v$ENTK_RELEASE_VERSION"
(v
prefix is added here) - Push tag to GitHub:
git push --tags
- Release on PyPI:
python setup.py sdist; twine upload --skip-existing dist/radical.entk-$ENTK_RELEASE_VERSION.tar.gz
- Verify PyPI version on: https://pypi.python.org/pypi/radical.entk
- Merge master into devel branch:
git checkout devel; git merge master; git push origin devel
- Merge devel into all open development branches:
for b in $branches; do git checkout $b; git merge master; done
- Delete the branch for the release e.g. release/$ENTK_RELEASE_VERSION or hotfix/issue_123