Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migrated to Confluence 5.3

...

Release day

Update the release notes

Add the release notes to distro/src/main/files/readme.html

...

  • Verify that the release notes have been added
  • Create the release branch: 
Code Block

svn -m "creating release branch for 5.0.alpha311" copy https://svn.activiti.org/repo/activiti/trunk https://svn.activiti.org/repo/activiti/tags/activiti-5.0.alpha311 
  • Update the version in the release branch: s/5.1-SNAPSHOT/5.1/g
  • Update the version in trunk to the next version's snapshot e.g. s/5.1-SNAPSHOT/5.2-SNAPSHOT/g
  • Update the version in trunk of module activiti-upgrade to the new snapshot.  e.g. s/5.1-ALWAYS-SNAPSHOT/5.2-ALWAYS-SNAPSHOT/g
  • Verification: Run the test suite: mvn -Pcheck clean install in the code base root

Generate the upgrade data

On your dev local machine, ensure that you have the upgrade properties to all the databases in ~/.activiti/upgrade/build.${database}.properties  Like for example:

  • ~/.activiti/upgrade/build.db2.properties
  • ~/.activiti/upgrade/build.h2.properties
  • ~/.activiti/upgrade/build.mssql.properties
  • ~/.activiti/upgrade/build.mysql.properties
  • ~/.activiti/upgrade/build.oracle.properties
  • ~/.activiti/upgrade/build.postgres.properties

Ensure that you have an up-to-date local git copy of the codebase

First ensure that you install the engine module with mvn clean install in the codebase root.

Then go to modules/activiti-upgrade and run

mvn -Pgenerate -Ddatabase=postgres -Dmaven.test.skip=true clean package

That command produces the datafiles in activiti-upgrade/src/test/resources/org/activiti/db/${project.version}/data.  Bear in mind that the default directory name is based on the project version, which might contain the -SNAPSHOT.  Then you can just manually change the directory name of the version.

If you want to produce new data files for older versions, use the upgradeVersion property like this

mvn -Pgenerate -Ddatabase=postgres -DupgradeVersion=5.8 -Dmaven.test.skip=true clean package

Run that generate profile for every database.

Then commit the resulting datafiles in git.  If this was done after branching the release, ensure that the commit is merged on master.

Test the distribution

  • Remove the 'skip.deploy.activiti.modeler=true' from $user.home/.activiti/build.properties
    Or even better: rename the build.properties temporary to e.g. XXXbuild.properties
  • Verification: Run the demo setup in the root directory like this
Code Block

ant -f qa/build.xml test.demo.start 

...

Build the distribution in directory distro:

Code Block

ant clean distro

Then upload the distro/target/activiti-5.011.alpha3.zip to http://ts.alfresco.com/share/page/site/activiti/documentlibrary#path=/Downloads&page=1

Upload the file to Amazon S3 (Through Ash/Panda/yourself)

Upload the activiti-modeler-5.x.war file to Amazon S3 (through Ash/Panda/yourself)

Publish the maven artifacts

Add following to ${user.home}/.m2/settings.xml

Code Block

<settings xmlns="http://maven.apache.org/POM/4.0.0"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
  <servers>
    <server>
      <id>alfresco.snapshot.repo</id>
      <username>jbarrez</username>
      <password>XXX</password>
    </server>
    <server>
      <id>alfresco.release.repo</id>
      <username>jbarrez</username>
      <password>XXX</password>
    </server>
  </servers>
</settings>

Note that this will save your password in plain text.
It is possible (since maven 2.1.0) to encrypt your password (untested): http://maven.apache.org/guides/mini/guide-encryption.html

Then do 

Code Block

mvn -Pdeploy clean deploy

on the root of the sources. This will publish all artifact to the snapshot/release repo, depending whether '-SNAPSHOT' is added to the current project version.

snapshot repo: http://maven.alfresco.com/nexus/content/repositories/activiti-snapshots/
release repo: http://maven.alfresco.com/nexus/content/repositories/activiti/

...

the activiti folder, right-clicking and selecting 'rebuild Metadata'.

Publish the designer integration jar

To publish the designer integration jar, following command should be used

Code Block

mvn deploy:deploy-file -Dfile=relative/path/to/org.activiti.designer.integration_0.7.0.jar -DgroupId=org.activiti.designer -DartifactId=org.activiti.designer.integration -Dversion=0.7.0 -DgeneratePom=true -DrepositoryId=alfresco.release.repo -Durl=http://maven.alfresco.com/nexus/content/repositories/activiti/ -Dpackaging=jar

This requires you to have a ${user.home}/.m2/settings.xml specifying your credentials to upload release artifacts

Code Block

<?xml version="1.0" encoding="UTF-8"?>
<settings xmlns="http://maven.apache.org/POM/4.0.0"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
  <servers>
    <server>
      <id>alfresco.release.repo</id>
      <username>yourusername</username>
      <password>******</password>
    </server>
  </servers>
</settings>

Update the website

  • Publish the docs:  in directory distro
Code Block

ant publish.docs
  • If they are updated, update the version andn publish the new .xsd schemas for http://activiti.org/cfg and http://activiti.org/bpmn
  • Add the new release to the downloads page in the website
  • Commit the docs and download page updates to the website

...