Skip to main content
Jump to: navigation, search

Difference between revisions of "Gemini/Blueprint/Releasing"

(Release Instructions)
(Release Instructions)
Line 31: Line 31:
 
# collect sources into JARs - mvn source:jar (outputDirectory doesn't work)
 
# collect sources into JARs - mvn source:jar (outputDirectory doesn't work)
 
# generate documentation - cd docs; mvn clean pre-site; cd .. (used to be docbkx:generate-html docbkx:generate-pdf) // output in docs/target/site/
 
# generate documentation - cd docs; mvn clean pre-site; cd .. (used to be docbkx:generate-html docbkx:generate-pdf) // output in docs/target/site/
## switch to Java 5
+
# switch to Java 5
 
# generate Maven repo (when the Gemini maven repo is open for business):
 
# generate Maven repo (when the Gemini maven repo is open for business):
 
## For full releases (not milestone or RC) may be necessary to change distributionManagement repository to point at release repository
 
## For full releases (not milestone or RC) may be necessary to change distributionManagement repository to point at release repository

Revision as of 09:00, 31 May 2012

Building Gemini Blueprint

Release Instructions

Pre-req's: Java 5 in addition to preferred Java version. Maven 2.0.x has worked in the past; now using 3.0.3.

For example, for 1.0.1.M01:

Step 1 - update version:

  1. mvn versions:set -DnewVersion=1.0.1.M01
  2. find . -name "*.versionsBackup" -exec rm {} \;
  3. check Spring version properties in main pom.xml
  4. update changelog and its version/date
  5. find . -name "boot-bundles.properties" and update ignore.gemini.blueprint.version to 1.0.1.M01
  6. if blueprint schema needs to be changed:
    1. add the file gemini-blueprint-<version>.xsd to core/src/main/resources/org/eclipse/gemini/blueprint/config
    2. update the version attribute of the xsd:schema element of the above file
    3. update core/src/resources/main/resources/META-INF/schema (especially the aliases)
    4. update xml files in META-INF/spring which refer to the latest version of the eclipse-gemini-blueprint.xsd schema

Step 2 - build and test:

  1. switch to Java 5
  2. Build and test using:
    1. mvn clean install -Pit,felix
    2. mvn clean install -Pit,knopflerfish // a few integration tests currently fail, but this could be KF setup problem
    3. mvn clean install -Pit,equinox
  3. switch back to Java 6 or later

Step 3 - generate release artifacts, tag, increment version:

  1. generate javadocs - mvn javadoc:aggregate javadoc:jar - aggregated javadoc in target/site/apidocs/
  2. collect sources into JARs - mvn source:jar (outputDirectory doesn't work)
  3. generate documentation - cd docs; mvn clean pre-site; cd .. (used to be docbkx:generate-html docbkx:generate-pdf) // output in docs/target/site/
  4. switch to Java 5
  5. generate Maven repo (when the Gemini maven repo is open for business):
    1. For full releases (not milestone or RC) may be necessary to change distributionManagement repository to point at release repository
    2. mvn -P equinox -Dmaven.test.skip=true deploy -DperformRelease -DaltDeploymentRepository=local::default::file:/tmp/gemini-blueprint/1.0.1.M01/repo
  6. run release project - cd release; rm -rf target; mvn -P equinox package -Dmaven.test.skip=true
  7. run the mvn deploy target above but this time without the altDeploymentRepository (for milestones) to get the same binaries in the zip and in the repo
  8. switch back to Java 6 or later
  9. tag the git repo
  10. increase version to 1.0.2.BUILD-SNAPSHOT

Step 4 - publish:

  1. upload ZIP to Eclipse
  2. update the downloads page
  3. announce forums and mailing list

Back to the top