Skip to content

Continuous Integration

shenki edited this page Sep 27, 2014 · 3 revisions

Builds will happen on build.hdmi2usb.tv which is an Ubuntu 14.04 64-bit machine, with Xilinx ISE 64bit installed.

Travis-CI will kick off the builds by doing a git push to build.hmdi2usb.tv, which will run a post-receive trigger. The trigger will checkout the revision that has been pushed and do a build. It must output the progress as it goes to ensure that Travis keeps the build running.

post-receive hook

#!/bin/bash
set -e
read OLD_HEAD NEW_HEAD REF_NAME
START_TIME=
WORK_DIR=$HOME/build_`date +'%Y%m%d_%H%M%S'`_git$NEW_HEAD
echo "Building $NEW_HEAD in $WORK_DIR"
mkdir -p $WORK_DIR

GIT_WORK_TREE=$WORK_DIR git checkout -f $NEW_HEAD
pushd $WORK_DIR
echo `date +'%Y-%m-%d %H:%M:%S'`" Starting build"
echo "We are in `pwd`"
source /opt/Xilinx/14.7/ISE_DS/settings64.sh
make
echo `date +'%Y-%m-%d %H:%M:%S'`" Build complete"

Configuration

ssh -X server
sudo apt-get install vim git libgtk2.0-0 xserver-common
tar xf Xilinx_ISE_DS_Lin_14.7_1015_1.tar
cd Xilinx_ISE_DS_Lin_14.7_1015_1
sudo mkdir /opt/Xilinx && sudo chown $USER /opt/Xilinx
./xsetup

After setup has completed

sudo chown -R root /opt/Xilinx