October 04, 2005

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
Posted by csev at October 4, 2005 11:08 AM