Below are the steps needed to do a release. But rather than doing them by hand, you can run this script:
https://github.com/eclipse/che-plugin-registry/blob/master/make-release.sh
HOWEVER, because the master branch is protected from commits, the above script will not be able to commit an update to the VERSION file. Instead it must produce a PR.
remote: error: GH006: Protected branch update failed for refs/heads/master.
remote: error: At least 1 approving review is required by reviewers with write access.
To github.com:eclipse/che-plugin-registry
! [remote rejected] master -> master (protected branch hook declined)
- create a branch for the release e.g.
7.8.x
- provide a PR with bumping the VERSION file to the
7.8.x
branch - CI is triggered based on the changes in the
release
branch (not7.8.x
). - add
7.8.0
versions of theche-machine-exec
andche-theia
plugins and bumplatest.txt
files of those plugins to7.8.0
- update container runtime image tag of the
theia-dev
plugin to7.8.0
- submit PR with the changes above to the
7.8.x
branch.
In order to trigger the CI once the PR is merged to the 7.8.x
one needs to:
git fetch origin 7.8.x:7.8.x
git checkout 7.8.x
git branch release -f
git push origin release -f
CI will build an image from the release
branch and push it to quay.io e.g quay.io/eclipse/che-plugin-registry:7.8.0
The last things that need to be done:
- the
7.8.0
tag creation from the7.8.x
branch - provide a PR to add the latest
7.8.0
versions of theche-theia
andche-machine-exec
plugins to the master branch, including updates tolatest.txt
files.
After the release, the VERSION
file should be bumped in the master branch, e.g. to 7.9.0-SNAPSHOT
.
The release process is the same as for the Major / Minor one, but the values passed to the make-release.sh
script will differ so that work is done in the existing 7.7.x branch.
./make-release.sh --repo git@github.com:eclipse/che-plugin-registry --version 7.7.1 --trigger-release
Note that nNew che-machine-exec and che-theia plugins for the 7.7.1 release should ALSO be added to the master branch.