-
Notifications
You must be signed in to change notification settings - Fork 5
Releasing Keshmesh
Perform the following steps to release a new version of Keshmesh.
Run the tests in edu.illinois.keshmesh.detector.tests
and make sure that they all pass.
- Remove the following folders and files from
edu.illinois.keshmesh.updatesite
.features/
plugins/
artifacts.jar
content.jar
logs.zip
- Open
edu.illinois.keshmesh.updatesite/site.xml
in Eclipse. - Remove all the features listed in
site.xml
but not any categories. - Select the
Keshmesh
category in theSite Map
. Then, press theAdd Feature...
button and selectedu.illinois.keshmesh (1.0.0.qualifier)
from the popped up dialog. - Press the button
Build
.
- Install the new release of Keshmesh from the local file system into fresh instances of Eclipse to make sure that it installs successfully.
- Check whether the update from an old version of Keshmesh to the new one works.
- Copy the contents of the folder
edu.illinois.keshmesh.updatesite
intopublic_html/updates
of the machine hosting the update site. - Repeat the first two steps for the remote update site.
Update the change log at the root of the repository by the changes made in the new release. We usually have an issue devoted to releasing a new version of Keshmesh in which we keep track of the issues that are addressed in the new release. Use the release issue to update the change log. Then, close the release issue.
-
Be careful not to delete any
build.xml
files. For some reason, the build script of the update site sometimes deletes some of the other build scripts. -
Commit the changes to the update site and change log. Use a commit message of the following form
Released v<x>.<y>.<z>.<qualifier> This commit belongs to issue #<release-issue>.
In the above message, <x>
, <y>
, <z>
and <qualifier>
are parts of the version of the generated feature, and <release-issue>
is the number of the issue devoted to this particular release of Keshmesh.
-
Push the commit to the remote repository.
-
Tag the commit containing the new release using the following command.
git tag v<x>.<y>.<z>.<qualifier> <commit-sha>
Push the created tag to the remote repository using the following command.
git push --tags