Skip to content

Latest commit

 

History

History
96 lines (76 loc) · 6.85 KB

RELEASE.md

File metadata and controls

96 lines (76 loc) · 6.85 KB

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
  • on Linux machine: set_tag_version_images_linux.sh {tag}
  • on MacOS: set_tag_version_images_macos.sh {tag}
  • 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
  • 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