Sakai Developer QuickStart

The big picture/outline:

http://cvs.sakaiproject.org/release/2.0.1/SourceInstallGuide.html

The attached script is the “magic developer bootstrap thing” – when it runs – you are in great shape.

Pre-requisites

SVN for Mac:

http://metissian.com/projects/macosx/subversion/

Maven

http://maven.apache.org/start/install.html

Add this to your .bashrc_login (or equivalent)

JAVA_OPTS='-server -Xms512m -Xmx512m -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCTimeStamps'; export JAVA_OPTS;


Shell script – beware line breaks.

#!/bin/csh
# To run this type
# cd ~/dev
# csh svn-bootstrap.csh
# Pick your Sakai Tag  and checkout type
# Head Check out
set TYPE=trunk
set TAG=sakai
# Tag Check out
#set TYPE=tags
#set TAG=sakai_2-0-0
echo Sakai Checkout Type: $TYPE Tag: $TAG
# set Tomcats ports and version
set TC_PORT=8080
set TC_SHUT=8005
set TOMCAT=5.5.9
echo TOMCAT Version:$TOMCAT Port:$TC_PORT  Shutdown port:$TC_SHUT
set MYPATH=`pwd`
# Download Tomcat using curl if necessary
if ( -d keepzips ) then
echo keepzips directory exists...
else
echo Creating keepzips directory ...
mkdir keepzips
endif
if ( -f keepzips/jakarta-tomcat-$TOMCAT-compat.tar.gz ) then
echo keepzips/jakarta-tomcat-$TOMCAT-compat.tar.gz exists...
else
echo Downloading keepzips/jakarta-tomcat-$TOMCAT-compat.tar.gz ...
cd keepzips
curl -O http://archive.apache.org/dist/jakarta/tomcat-5/v$TOMCAT/bin/jakarta-tomcat-$TOMCAT-compat.tar.gz
cd $MYPATH
endif
if ( -f keepzips/jakarta-tomcat-$TOMCAT.tar.gz ) then
echo keepzips/jakarta-tomcat-$TOMCAT.tar.gz exists...
else
echo Downloading keepzips/jakarta-tomcat-$TOMCAT.tar.gz ...
cd keepzips
curl -O http://archive.apache.org/dist/jakarta/tomcat-5/v$TOMCAT/bin/jakarta-tomcat-$TOMCAT.tar.gz
cd $MYPATH
endif
# Set up clean Tomcat directory
rm -rf jakarta-tomcat-$TOMCAT/
rm -rf old-$TAG
mv $TAG old-$TAG
echo Extracting Tomcat...
tar xfz keepzips/jakarta-tomcat-$TOMCAT.tar.gz
echo Extracting Tomcat JDK 1.5 Compatibility patch
tar xfz keepzips/jakarta-tomcat-$TOMCAT-compat.tar.gz
cd  jakarta-tomcat-$TOMCAT/conf
cp server.xml server.sav
cat server.sav | sed s/8080/$TC_PORT/ | sed s/8005/$TC_SHUT/ > server.xml
diff server.sav server.xml
cd ../..
svn co https://source.sakaiproject.org/svn/$TYPE/$TAG
cd $TAG
maven sakai -Dmaven.tomcat.home=$MYPATH/jakarta-tomcat-$TOMCAT/ -D maven.repo.remote=http://www.ibiblio.org/maven/,http://cvs.sakaiproject.org/maven/
cd ..
# Switch to the demo configuration - mostly to make HSQL DB store in a file
mkdir $MYPATH/jakarta-tomcat-$TOMCAT/sakai
cp $TAG/demo/sakai.properties $MYPATH/jakarta-tomcat-$TOMCAT/sakai
cp $TAG/demo/toolOrder.xml $MYPATH/jakarta-tomcat-$TOMCAT/sakai
echo
echo cd jakarta-tomcat-$TOMCAT/logs
echo ../bin/startup.sh