THIS PAGE IS OBSOLETE. THE ANDROID BUILD IS MANAGED BY JENKINS RUNNING UNDER USER “build” on dev.agtek.com
SmartDirt is built automatically each night on the build machine (dev.agtek.com). These instructions describe the build system as it pertains to the SmartDirt project. Currently the build runs under the account “mjallison”.
The build is invoked each morning, at 0130 hours, by a crontab entry. The entry looks like:
30 01 * * * /home/mjallison/nightly_build.sh > /home/mjallison/build.txt 2>&1; /home/mjallison/post-build.sh
There are two parts of the build. The main portion, encoded in “nightly_build.sh” checks out the source, and builds native and Java portions of the application. The second phase of building is handled by “post-build.sh”. The post build script copies the completed build APK and the build log to the dev machine's HTML directory for publishing.
This is the build process workflow, which is encoded in the shell script “nightly_build.sh”.
1) checkout SmartDirt
mkdir SmartDirt cd SmartDirt svn checkout https://w3kserver2.agtek.com:8443/svn/Android_SmartDirt/trunk
2) Perform an update to prep for building
android update project --target 3 --name SmartDirt --path .
3) Set the build number by getting the SVN repository version and replacing build_number in SmartDirt/res/values/strings.xml
4) Build the native portion of the application via:
/usr/android-ndk-r4b/ndk-build
5) Build the product
ant release
6) Generate the commands for post-build.sh, to be executed by cron.
Nightly_build.sh can be manually run to test for Linux build status without publishing, since publish in only handled by the post processing.