dhis2-devs team mailing list archive
-
dhis2-devs team
-
Mailing list archive
-
Message #04367
Complete build cycle with DHIS2, including installer and docs
Dear Devs,
I have been working on developing a procedure to build DHIS2, the
documentation and an installer from sources. I have a procedure that
works for me, and would now like to offer this up for discussion, and
potential inclusion in the trunk. And to see what else there needs to
be done. I have pretty much achieved what I needed, but this may not
fit everyone's needs.
First of all, there are three main projects that are needed. I created
a folder /workspace.
and then (if you do not already have all of this)
bzr branch lp:dhis2
bzr branch lp:~dhis2-documenters/dhis2/dhis2-docbook-docs
bzr branch lp:~jason-p-pickering/+junk/dhis2-live-installer
You can get a copy of BitRock install builder from here
http://installbuilder.bitrock.com/download-step-2.html. Install it
somewhere on your system.
I then created a build.sh file with the following content. Modify the
three environment variables to suit your needs.
#/bin/sh
export JAVA_HOME=/usr/local/java/jdk1.6.0_10/
export PATH=$PATH:/home/wheel/apache-maven-2.2.1/bin/
export BITROCK_HOME=/home/wheel/installbuilder-6.2.7/
echo "Building DHIS 2 Core..."
cd dhis2/dhis-2
mvn clean install -Dtest=skip -DfailIfNoTests=false
echo "Building DHIS 2 Web..."
cd dhis-web
mvn clean install -Dtest=skip -DfailIfNoTests=false
echo "Packing DHIS 2 Web Portal..."
cd dhis-web-portal
mvn clean install -Dtest=skip -DfailIfNoTests=false
echo "Builidng DHIS2 Live Package"
cd ../../../dhis-live/
mvn clean package -Dtest=skip -DfailIfNoTests=false
echo "Building documentation"
cd ../../dhis2-docbook-docs/
mvn package
echo "Copying DHIS2 resources to installer directories"
cd ../
rm -rf dhis2-live-installer/webapps/dhis
cp -r dhis2/dhis-2/dhis-web/dhis-web-portal/target/dhis/
dhis2-live-installer/webapps/
echo "Copying DHIS2 Live supoprt files to installer directories"
cp dhis2/dhis-live/target/dhis2-live.exe dhis2-live-installer/dhis2-live.exe
cp dhis2/dhis-live/target/dhis2-live-jar-with-dependencies.jar
dhis2-live-installer/dhis2-live.jar
echo "Copying Documentation to installaer directories"
cp dhis2-docbook-docs/target/site/en/pdf/dhis2_user_manual_en.pdf
dhis2-live-installer/docs/
echo "Building installer"
cd dhis2-live-installer
mvn exec:exec
Place this build.sh script in the /workspace directory, the same as
the three source branches.
My directory looks something like this..
/workspace
|build.sh
|_dhis2
|_dhis2-docbook-docs
|_dhis2-live-installer
Execute this build script. You will now enter into a rather lengthy
process depending on the speed of your machine. At the end. you will
have a Windows installer based on the latest source code and
documentation. These will be output to the BITROCK_HOME/output
directory.
Ideally, we can create an uber-pom to take care of this packaging, but
this will have to wait a bit.
Best regards,
Jason
Follow ups