Preloader image
Note: This information is largely obsolete and remains here for reference only.

{code:none} mvn release:prepare -Dusername=dblevins -Dassemble

{code:none}
mvn release:perform -Dassemble -Dusername=dblevins -DaltDeploymentRepository=dblevins::default::scp://people.apache.org/x1/home/dblevins/public_html/stage -Dgpg.passphrase=xxxxx



mvn clean deploy -Prelease -Dassemble -Dusername=dblevins -DaltDeploymentRepository=dblevins::default::scp://people.apache.org/x1/home/dblevins/public_html/stage/repo -Dgpg.passphrase=xxxxx
  1. Create a copy of the trunk the branch will be based on.

Merging things from trunk to the branch

While fixing issues in the branch and trunk in parallel it may happen that some changes in trunk have not been applied to the branch. Provided you're in the branch's directory the following command applies a change from the trunk  to the branch (`{-c 575845`} is the commit number with the fix and the url points to a repo the change is in).

{code:none}
svn merge -c 575845 https://svn.apache.org/repos/asf/tomee/tomee/trunk

Here’s a little script that can make merging easier

#!/bin/bash

for n in $@; do
  m=$(($n -1))
  LOG=/tmp/svn-commit-r$n.log

  cat /dev/null > $LOG

  echo "Merging r$n - http://svn.apache.org/viewvc?rev=$n&view=rev" >> $LOG
  echo "" >> $LOG
  echo "svn merge -r $m:$n https://svn.apache.org/repos/asf/tomee/tomee/trunk ." >> $LOG
  echo "" >> $LOG
  svn log -r$n https://svn.apache.org/repos/asf/tomee/tomee/trunk >> $LOG

  svn merge -r $m:$n https://svn.apache.org/repos/asf/tomee/tomee/trunk .  &&
  svn ci -F $LOG
  echo "$n merged"
done

Aggregation into a stage/3.x directory

#!/bin/bash

VER=3.0

function package () {
    SOURCE=$1; DEST=${2:-$SOURCE}
    tar czf $DEST.tar.gz $SOURCE
    zip -9rq $DEST.zip $SOURCE
}
function shash {
    openssl $1 < $2 > $2.$1 ;
}
function sign {
    archive=$1
    gpg --armor --output $archive.asc --detach-sig $archive
    gpg --verify $archive.asc $archive
}

function fail () { echo $1 >&2; exit 1;}


mkdir $VER
(cd $VER

svn export http://svn.apache.org/repos/asf/openejb/tags/openejb-$VER/examples openejb-examples-$VER
package openejb-examples-$VER && rm -r openejb-examples-$VER

svn export http://svn.apache.org/repos/asf/openejb/tags/openejb-$VER openejb-$VER-src
package openejb-$VER-src && rm -r openejb-$VER-src

for archive in *.{zip,tar.gz}; do
    echo $archive
    shash md5 $archive
    sign $archive
done || fail "Unable to sign or hash release archives"
)

scp -r $VER  people.apache.org:public_html/stage/

# Copy standalone assembly in

ssh people.apache.org "cp ~/public_html/stage/repo/org/apache/openejb/openejb-standalone/$VER/openejb-standalone-$VER.{zip,tar.gz}{,.asc,.md5} ~/public_html/stage/$VER/"


echo $VER | ssh people.apache.org 'read VER && for n in ~/public_html/stage/repo/org/apache/openejb/openejb-standalone/$VER/openejb-standalone-$VER.{zip,tar.gz}{,.asc,.md5}; do cp $n ~/public_html/stage/$VER/$(basename ${n/openejb-standalone-$VER/openejb-$VER}); done'

# Copy tomcat webapp assembly in

echo $VER | ssh people.apache.org 'read VER && for n in ~/public_html/stage/repo/org/apache/openejb/openejb-tomcat-webapp/$VER/openejb-tomcat-webapp-$VER.war{,.asc,.md5}; do cp $n ~/public_html/stage/$VER/$(basename ${n/-tomcat-webapp-$VER/}); done'

Release notes

#set( $rpc = $xmlrpc.connect("dblevins:xxxxx","http://issues.apache.org/jira/rpc/xmlrpc") )
#set( $version = $rpc.getVersion("OPENEJB", "3.0") )
#set ( $versionId = $version.id )
#set ( $jira = $rss.fetch("http://issues.apache.org/jira/secure/IssueNavigator.jspa?view=rss&&pid=12310530&status=5&status=6&fixfor=${versionId}&tempMax=1000&reset=true&decorator=none") )
#set( $issues = $jira.issues )

Apache OpenEJB $version

$date

New Features:

#foreach ( $issue in $issues.equals("type", "New Feature").descending("id") )
  * [$issue.key]  $issue.summary
#end

Improvements:

#foreach ( $issue in $issues.equals("type", "Improvement") )
  * [$issue.key]  $issue.summary
#end

Bugs:

#foreach ( $issue in $issues.equals("type", "Bug").sort("priority") )
  * [$issue.key]  $issue.summary
#end

Tasks & Sub-Tasks:

#foreach ( $issue in $issues.equals("type", "Task").sort("summary") )
  * [$issue.key]  $issue.summary
#end
#foreach ( $issue in $issues.equals("type", "Sub-task").sort("summary") )
  * [$issue.key]  $issue.summary
#end



 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Unimplemented Features, bugs, limitations

#set ( $jira = $rss.fetch("http://issues.apache.org/jira/secure/IssueNavigator.jspa?view=rss&&pid=12310530&status=1&status=3&status=4&version=${versionId}&tempMax=1000&reset=true&decorator=none") )
#set( $issues = $jira.issues )

#foreach ( $issue in $issues.sort("priority") )
  * [$issue.key]  $issue.summary
#end

README.html file

some way to dynamically update this would be great.

{code:html} <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">Apache OpenEJB 3.0[discrete] === Apache OpenEJB 3.0 Packaging Details (or "What Should I Download?") * OpenEJB Standlone Server: openejb-3.0.zip openejb-3.0.tar.gz * OpenEJB for Tomcat 6 or Tomcat 5.5: openejb.war * EJB 3.0 and other examples: openejb-examples-3.0.zip openejb-examples-3.0.tar.gz * Source: openejb-3.0-src.zip * openejb-3.0-src.tar.gz Thank you for using OpenEJB!. *The Apache OpenEJB Project + http://tomee.apache.org/ </BODY></HTML> # Publishing When all voting is done {code:none} mvn stage:copy -Dsource="http://people.apache.org/~dblevins/stage/repo/" \ -Dtarget="scp://people.apache.org/www/people.apache.org/repo/m2-ibiblio-rsync-repository" \ -DsourceRepositoryId=apache.staging \ -DtargetRepositoryId=apache.releases \ -Dversion=3.0 {code:none} $ mv 3.0 /www/www.apache.org/dist/openejb/