Skip to content

How to release openHAB

Thomas E.-E. edited this page Feb 9, 2014 · 9 revisions

Follow these steps if you want to release a new version of openHAB. Later we plan to leverage the Maven Release Plugin to facilitate these steps.

  1. Pull the latest state from the repository into a fresh and empty directory

     git clone [email protected]:openhab/openhab.git
    
  2. Open a command-line and go to the openhab directory

  3. Set project version to release version with the Tycho Versions plugin

     export MAVEN_OPTS="-Xmx1024m -XX:MaxPermSize=1024m"; mvn -P prepare-release initialize -DnewVersion=1.x.0
    
  4. Manually change ./products/org.openhab.runtime.product/category.xml file. Replace 1.x.0.qualifier by 1.x.0

  5. Manually change ./products/org.openhab.designer.product/category.xml file. Replace 1.x.0.qualifier by 1.x.0

  6. Execute a Maven build

     mvn -P deploy clean deploy -Drepo.id=cloudbees-public-release-repo -Drepo.url=dav:https://repository-openhab.forge.cloudbees.com/release/1.x.0 -Dp2.repo.dir=p2 -Dapt.repo.dir=apt-repo
    
  7. Install and extensively test the created binaries

  8. Commit the changed files

     git commit -a -m "prepare for 1.x.0 release"
    
  9. Create a release tag with pattern v<version>

     git tag v1.x.0
    
  10. Increment to next development version

     mvn -P prepare-next-snapshot initialize -DnewVersion=1.y.0
    
  11. Manually change ./products/org.openhab.runtime.product/category.xml file. Replace 1.y.0 by 1.y.0.qualifier

  12. Manually change ./products/org.openhab.designer.product/category.xml file. Replace 1.y.0 by 1.y.0.qualifier

  13. Execute a Maven build with goals clean verify to assure that everything builds

     mvn clean verify
    
  14. Commit the changes

     git commit -a -m "increment to next development version 1.y.0"
    
  15. Push the changes including the tag to the server

     git push origin master --tags
    
  16. Switch to the root directoy of openHAB

to be continued …

Installation

Community

Features

Samples

Release Notes

Clone this wiki locally