Skip to content

libra.local: CI Build Bot with Jenkins

Jeffrey Carpenter edited this page Jul 25, 2015 · 2 revisions

CI Build Bot with Jenkins

Hostname: libra.local

  • reading pw from stdin
    • ...I'm hoping that this info might help us get around the problem of X11 + non-local access to the display

http://libra.local:8080/ http://windev.local:8080/ http://inasafe.org/en/developer-docs/jenkins_ci_windows_slave.html

  • libra.local: Fix permissions @ ~/Documents/nomlib; jenkins user needs access to a dump dir ... add option to VisualUnitTest to allow modifying default?
  • windev.local: Configure->SCM->Git->Additional Behaviors->Clean after checkout
  • Use file-based build execution scripts for maintenance / ease of use
  • Configure build servers to wipe workspaces on each build
  • Disable unnecessary plugins on libra.local:8080, windev.local:8080
  • Use libra or windev as the master node to monitor the other?
  • push notification (git hooks? REST API?) && e-mail notifications
  • Automated backups of Jenkins config; see https://wiki.jenkins-ci.org/display/JENKINS/Administering+Jenkins

Linux notes

NOTE: These notes apply only to the experimental feature/LinuxPort branch.

See also:

# nomlib build environment setup
sudo apt-get install git clang cmake

# documentation deps
sudo apt-get install doxygen graphviz

# running tests on a headless box
sudo apt-get install xvfb

mkdir $HOME/local
mkdir $HOME/Projects
cd ~/Projects

# libRocket install

## libRocket deps
sudo apt-get install libfreetype6-dev

## build
gclone https://github.com/i8degrees/libRocket
cd libRocket
cd Build && mkdir build && cd build

cmake -DBUILD_SAMPLES=off -DBUILD_LUA_BINDINGS=off -DCMAKE_BUILD_TYPE=Debug -DROCKET_DEBUG=on -DCMAKE_VERBOSE_MAKEFILE=1 -DCMAKE_INSTALL_PREFIX=$HOME/local ..

# gtest install

## deps
sudo apt-get install libgtest-dev

## build
cd /usr/src/gtest
sudo mkdir build
cd build
sudo cmake -DCMAKE_BUILD_TYPE=Release ..
sudo make
sudo mv libg* /usr/lib

# nomlib install

## nomlib deps

# TOOD: Verify dependency installation list
sudo apt-get install libsdl2-dev libsdl2_image-dev libsdl2_ttf-dev libsndfile1-dev libopenal-dev

gclone https://github.com/i8degrees/nomlib
cd nomlib

export NOM_DEPS_URL='http://downloads.sourceforge.net/project/nomlib/osx/2014-11-30_nomlib-bab75fd_osx-dependencies.tar.gz?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fnomlib%2Ffiles%2Fosx%2F&ts=1417940969&use_mirror=iweb'

wget -O /tmp/deps.tar.gz $NOM_DEPS_URL
tar -xzf /tmp/deps.tar.gz -C third-party

mkdir build && cd build
LIBROCKETDIR=$HOME/local cmake -DDEBUG=on -DDEBUG_ASSERT=on -DEXAMPLES=on -DNOM_BUILD_TESTS=on -DCMAKE_INSTALL_PREFIX=$HOME/local ..
make
make install
cd ..
bin/gen_ref_images.sh
cd build
make test