User Tools

Site Tools


beewm:devel:compiling_and_making_releases

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
beewm:devel:compiling_and_making_releases [2016/05/17 17:26] – created adminbeewm:devel:compiling_and_making_releases [2017/02/01 12:57] (current) admin
Line 1: Line 1:
-======Compiling BeeWM======+======Compiling BeeWM HEAD======
  
-BeeWM uses gradle to compile and test. It is recommended to use Oracle JDK with BeeWM. To set up JDK 8, assign the JAVA_HOME variable, for example:+BeeWM uses gradle to compile and test. It is recommended to use Oracle JDK with BeeWM. To set up JDK 7, assign the JAVA_HOME variable, for example:
 <code> <code>
-export JAVA_HOME="/opt/bda/java-8-sun"+export JAVA_HOME="/opt/bda/java-7-sun"
 </code> </code>
  
Line 11: Line 11:
 ./gradlew clean ./gradlew clean
  
-full compile with tests: +sparse compile excluding all tests: 
-./gradlew build+./gradlew build -x test -x storageIntegrationTest -x clusterIntegrationTest
  
 # compile excluding the integration tests (that require a cluster queue setup): # compile excluding the integration tests (that require a cluster queue setup):
-./gradlew build -x integrationTest+./gradlew build -x storageIntegrationTest -x clusterIntegrationTest
  
-sparse compile excluding all tests: +full compile with tests: 
-./gradlew build -x test -x integrationTest+./gradlew build
 </code> </code>
  
 ======Making BeeWM Releases====== ======Making BeeWM Releases======
  
 +====Tagging the current Release====
 +
 +To compile a release, tag the GIT repository for the release (for example 0.3.2):
 <code> <code>
 +# find the last commit of the 0.3.2 series, to set the tag there:
 +git log|less
 +
 +# tag the commit with its checksum (or part of it):
 +git tag 0.3.2 4a391b3236770dd70390029af4846d18a4554444
 +</code>
 +
 +====Checking out a specific (previous) Release====
 +
 +To check out a specific release to compile, check out the tag of the GIT repository:
 +<code>
 +# list available tags:
 +git tag
 +
 +# check out a specific tag, for example 0.3.2
 +git checkout tags/0.3.2
 +</code>
 +
 +====Compiling a Release for Deployment====
 +
 +<code>
 +# full recompiled release with testing
 ./gradlew clean build distTar ./gradlew clean build distTar
 +
 +# releases after 0.4.0: full recompiled release without integration testing
 +./gradlew clean build distTar -x storageIntegrationTest -x clusterIntegrationTest
 +
 +# releases before 0.4.0: full recompiled release without integration testing
 +./gradlew clean build distTar -x integrationTest
 +
 +
 +# find the release files for BeeWM and the BeeWM Webclient in the directories:
 +ls -la bee-*/build/distributions/*
 +
 +# store the archive on the server for downloading:
 +cp -iv bee-*/build/distributions/*0.4.0-SNAPSHOT-61*tar.gz \
 +    /home/www/de.biodataanalysis/pages/data/beewm/releases/ && \
 +sudo chmod 660 /home/www/de.biodataanalysis/pages/data/beewm/releases/*tar.gz && \
 +sudo chown www-mario:www-mario /home/www/de.biodataanalysis/pages/data/beewm/releases/*tar.gz
 +</code>
 +
 +====Tagging for the next Release Series====
 +
 +After a version is finished and released, enter the release date in Jira, and tag the GIT repository for the next release series. Assuming the current release was 0.3.2, tag for the next release 0.4.0:
 +<code>
 +# find the first commit of the 0.4.0 series, to set the tag there:
 +git log|less
 +
 +# tag the commit with its checksum (or part of it):
 +git tag 0.4.0-SNAPSHOT 70004f4e725840d7835f0ebe3a835e22e8d4e8ac
 +
 +# push the new tags to the server:
 +git push origin --tags
 </code> </code>
  
beewm/devel/compiling_and_making_releases.1463498768.txt.gz · Last modified: 2016/05/17 17:26 by admin