6.6 KiB
6.6 KiB
Eclipse Che release process
0. Create new issue for the release
Use this template, eg., for VERSION = 7.8.0 and BRANCH = 7.8.x:
1. Create branch for release preparation and next bugfixes:
git branch {branchname} # e.g 7.7.x
git push --set-upstream origin {branchname}
2. Create PR for switch master to the next development version:
git branch set_next_version_in_master_{next_version} # e.g 7.8.0-SNAPSHOT
# Update parent version
mvn versions:update-parent versions:commit -DallowSnapshots=true -DparentVersion={next_version}
# Update dependencies
sed -i -e "s#{version_old}#{next_version}#" pom.xml
git commit
git push --set-upstream origin set_next_version_in_master_{next_version}
- Create PR
3. In release branch of Che need to set up released version of plugin registry and plugins:
1 Update deploy_che.sh (should be deprecated soon - https://github.com/eclipse/che/issues/14069) default environment variables
2 Update default version of plugins and editors in che.properties to released tag e.g `7.7.0`
3 Update Helm charts with released tag e.g `7.7.0`
To do this execute commands:
cd .ci
set_tag_version_images.sh 7.25.0
git commit
git push
4. Start pre-release testing.
5. If pre-release test passed need to merge branch to the release branch and push changes, release process will start by webhook:
- Set released parent version
- Update dependencies in pom.xml, then:
git checkout release git merge -X theirs {branchname} git push -f
6. Close/release repository on Nexus
https://oss.sonatype.org/#stagingRepositories
Note: For bugfix release procedure will be similar except creating new branch on first step and update version in master branch.
Script
make-release.sh is a script that performs these actions, use --prerelease-testing flag to prepare "RC" release for QE testing, and --trigger-release to perform a release after that