Local build machine environment
- clean Tomcat 5.5.26
- empty .m2/repository/org/sakaiproject
- new MySQL 5.0.51 sakai db
- add to .M2/settings.xml
<!-- Reference plugins in order to use <goalPrefix> short-hand --> <pluginGroups> <pluginGroup>net.sourceforge.maven-taglib</pluginGroup> </pluginGroups>
Tag preparation
1. Check out RC tag.
sakai.properties
2. Update component/component-api/component/src/config/org/sakaiproject/config/sakai.properties
updating version.service
, version.sakai
and uncommenting stealthToolsstealthTools@org.sakaiproject.tool.api.ActiveToolManager
. Commit changes.
version.service=RELEASE version.sakai=2.5.2 . . . # STEALTH TOOLS. A stealth tool is a tool that is running in Sakai, but is not available to be added to a site in Worksite Setup. # For Development/QA purposes stealthTools property will be commented out; release artifacts will have the property uncommented. stealthTools@org.sakaiproject.tool.api.ActiveToolManager=blogger,sakai.messagecenter,sakai.podcasts,sakai.postem,sakai.rutgers.linktool,sakai.rutgers.testlink,sakai.search,sakai.site.roster
3. Update reference/docs/sakai.properties
version.service
and version.sakai
. Make sure stealthedTools property is commented out (i.e., enabling all provisional tools for the demo). Commit changes.
version.service=DEMO version.sakai=2.5.2
/master/pom.xml
1. Add
/pack-demo/pom.xml
4. The current 2.5.x pack-demo pom does not include the binary artifact generation code. Replace with
<?xml version="1.0"?>
<project xmlns="http://maven.apache.org/POM/4.0.0">
<modelVersion>4.0.0</modelVersion>
<parent>
<artifactId>base</artifactId>
<groupId>org.sakaiproject</groupId>
<version>2.5.2</version>
<relativePath>../pom.xml</relativePath>
</parent>
<groupId>org.sakaiproject</groupId>
<artifactId>pack-demo</artifactId>
<packaging>pom</packaging>
<name>Sakai Pack Demo</name>
<version>2.5.2</version>
<organization>
<name>Sakai Project</name>
<url>http://sakaiproject.org/</url>
</organization>
<properties>
<sakai.plugin.version>2.2</sakai.plugin.version>
<sakai.tomcat.version>5.5.26</sakai.tomcat.version>
</properties>
<dependencies>
<dependency>
<groupId>tomcat.tomcat</groupId>
<artifactId>tomcat</artifactId>
<version>$
</version>
<type>zip</type>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<artifactId>maven-antrun-plugin</artifactId>
<executions>
<execution>
<id>pack-demo-clean</id>
<phase>install</phase>
<configuration>
<tasks>
<!-- clear the deploy area -->
<delete dir="$
/target/unpack" />
<delete dir="$
/target/pack" />
<!-- expand the tomcat zip from the repo into the target -->
<unzip
src="$
/tomcat/tomcat/tomcat/$
/tomcat-$
.zip"
dest="$
/target/unpack" overwrite="true" />
<echo>
Executing cd ../;mvn
-Dmaven.tomcat.home=$
/target/pack
-Dmaven.test.skip=true clean install
sakai:deploy
</echo>
<exec dir="../" executable="mvn"
failonerror="true">
<arg
value="-Dmaven.tomcat.home=$
/target/pack" />
<arg value="-Dmaven.test.skip=true" />
<arg value="-Dkeystore=$
" />
<arg value="-Dalias=$
" />
<arg
value="-Dstorepass=$
" />
<!-- <arg value="clean"/> -->
<arg value="install" />
<arg value="sakai:deploy" />
</exec>
<copy
todir="$
/target/pack/licenses/">
<fileset
dir="$
/../reference/licenses">
<exclude name=".svn/**" />
</fileset>
</copy>
<copy file="$
/../ECLv1.txt"
tofile="$
/target/pack/ECLv1.txt" overwrite="true" />
<!-- zip it -->
<delete
file="sakai-bin-$
.zip" />
<zip
destfile="sakai-bin-$
.zip" compress="yes">
<zipfileset
dir="$
/target/pack/"
prefix="sakai-bin-$
" />
</zip>
<echo>
- * * sakai-bin-$
.zip
</echo>
<!-- tar it -->
<delete
file="sakai-bin-$
.tar.gz" />
<tar
destfile="sakai-bin-$
.tar.gz" longfile="gnu"
compression="gzip">
<tarfileset
dir="$
/target/pack/" mode="755"
prefix="sakai-bin-$
">
<include name="*/.sh" />
</tarfileset>
<tarfileset
dir="$
/target/pack/"
prefix="sakai-bin-$
">
<exclude name="*/.sh" />
</tarfileset>
</tar>
<echo>
- * *
sakai-bin-$
.tar.gz
</echo>
<move file="$
/target/pack"
tofile="$
/target/pack-stage" overwrite="true" />
<move
file="$
/target/unpack/apache-tomcat-$
"
tofile="$
/target/pack" overwrite="true" />
<delete dir="$
/target/unpack" />
<copy todir="$
/target/pack">
<fileset
dir="$
/target/pack-stage">
<include name="*/" />
</fileset>
</copy>
<!-- add in demo stuff -->
<copy
file="$
/../reference/demo/sakai.properties"
tofile="$
/target/pack/sakai/sakai.properties" />
<copy
todir="$
/target/pack/sakai/db">
<fileset
dir="$
/../reference/demo/db">
<include name="*/sakai.db." />
</fileset>
</copy>
<copy
file="$
/../reference/demo/readme.txt"
tofile="$
/target/pack/demo_readme.txt" />
<copy
file="$
/../reference/docs/readme.txt"
tofile="$
/target/pack/sakai_readme.txt" />
<copy
file="$
/../reference/demo/start-sakai.bat"
tofile="$
/target/pack/start-sakai.bat" />
<copy
file="$
/../reference/demo/start-sakai.sh"
tofile="$
/target/pack/start-sakai.sh" />
<copy
file="$
/../reference/demo/stop-sakai.bat"
tofile="$
/target/pack/stop-sakai.bat" />
<copy
file="$
/../reference/demo/stop-sakai.sh"
tofile="$
/target/pack/stop-sakai.sh" />
<!-- Replace the favorite icon from tomcat -->
<copy
file="$
/../reference/library/src/webapp/icon/favicon.ico"
tofile="$
/target/pack/webapps/ROOT/favicon.ico"
overwrite="true" />
<!-- custom Tomcat mods -->
<copy
file="$
/../reference/demo/index.html"
tofile="$
/target/pack/webapps/ROOT/index.html" />
<copy overwrite="true"
file="$
/target/pack/conf/server.xml"
tofile="$
/target/pack/conf/server-orig.xml" />
<copy overwrite="true"
file="$
/target/pack/conf/server-orig.xml"
tofile="$
/target/pack/conf/server.xml">
<filterset
begintoken="maxHttpHeaderSize" endtoken=""8192""
recurse="false">
<filter token="="
value="maxHttpHeaderSize="8192" URIEncoding="UTF-8"" />
</filterset>
</copy>
<!-- makes all ".sh" files readable and executable for anyone on a UNIX system -->
<chmod dir="$
/target/pack/"
perm="ugo+rx" includes="*/.sh" />
<!-- zip it -->
<delete
file="sakai-demo-$
.zip" />
<zip
destfile="sakai-demo-$
.zip" compress="yes">
<zipfileset
dir="$
/target/pack/"
prefix="sakai-demo-$
" />
</zip>
<echo>
- * *
sakai-demo-$
.zip
</echo>
<!-- tar it -->
<delete
file="sakai-demo-$
.tar.gz" />
<tar
destfile="sakai-demo-$
.tar.gz" longfile="gnu"
compression="gzip">
<tarfileset
dir="$
/target/pack/" mode="755"
prefix="sakai-demo-$
">
<include name="*/.sh" />
</tarfileset>
<tarfileset
dir="$
/target/pack/"
prefix="sakai-demo-$
">
<exclude name="*/.sh" />
</tarfileset>
</tar>
<echo>
- * *
sakai-demo-$
.tar.gz
</echo>
<delete dir="$
/target/pack/" />
<delete
dir="$
/target/pack-stage/" />
</tasks>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>