Merge pull request #76 from draios/add-travis

Add minimal travis support.
This commit is contained in:
Mark Stemm 2016-05-17 22:43:03 -07:00
commit acbb2f5862
3 changed files with 71 additions and 0 deletions

38
.travis.yml Normal file
View File

@ -0,0 +1,38 @@
language: c
env:
- BUILD_TYPE=Debug
- BUILD_TYPE=Release
before_install:
- sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test
- sudo apt-get update
install:
- sudo apt-get --force-yes install g++-4.8
- sudo apt-get install rpm linux-headers-$(uname -r)
- git clone https://github.com/draios/sysdig.git ../sysdig
before_script:
- export KERNELDIR=/lib/modules/$(ls /lib/modules | sort | head -1)/build
script:
- set -e
- export CC="gcc-4.8"
- export CXX="g++-4.8"
- wget https://s3.amazonaws.com/download.draios.com/dependencies/cmake-3.3.2.tar.gz
- tar -xzf cmake-3.3.2.tar.gz
- cd cmake-3.3.2
- ./bootstrap --prefix=/usr
- make
- sudo make install
- cd ..
- mkdir build
- cd build
- cmake .. -DCMAKE_BUILD_TYPE=$BUILD_TYPE
- make VERBOSE=1
- make package
- cd ..
- sudo test/falco_trace_regression.sh build/userspace/falco/falco
notifications:
webhooks:
urls:
# - https://webhooks.gitter.im/e/fdbc2356fb0ea2f15033
on_success: change
on_failure: always
on_start: never

View File

@ -11,6 +11,9 @@ for an early release. On the other hand performance is still a work in
progress. On busy hosts and/or with large rule sets, you may see the current progress. On busy hosts and/or with large rule sets, you may see the current
version of falco using high CPU. Expect big improvements in coming releases. version of falco using high CPU. Expect big improvements in coming releases.
Dev Branch: [![Build Status](https://travis-ci.org/draios/falco.svg?branch=dev)](https://travis-ci.org/draios/falco)<br />
Master Branch: [![Build Status](https://travis-ci.org/draios/falco.svg?branch=master)](https://travis-ci.org/draios/falco)
####Table of Contents ####Table of Contents
- [Overview](#overview) - [Overview](#overview)

30
test/falco_trace_regression.sh Executable file
View File

@ -0,0 +1,30 @@
#!/bin/bash
set -eu
SCRIPT=$(readlink -f $0)
BASEDIR=$(dirname $SCRIPT)
FALCO=$1
BUILDDIR=$(dirname $FALCO)
# Load the built kernel module by hand
insmod $BUILDDIR/../../driver/sysdig-probe.ko
# For now, simply ensure that falco can run without errors.
FALCO_CMDLINE="$FALCO -c $BASEDIR/../falco.yaml -r $BASEDIR/../rules/falco_rules.yaml"
echo "Running falco: $FALCO_CMDLINE"
$FALCO_CMDLINE > $BASEDIR/falco.log 2>&1 &
FALCO_PID=$!
echo "Falco started, pid $FALCO_PID"
sleep 10
if kill -0 $FALCO_PID > /dev/null 2>&1; then
echo "Falco ran successfully"
kill $FALCO_PID
ret=0
else
echo "Falco did not start successfully. Full program output:"
cat $BASEDIR/falco.log
ret=1
fi
exit $ret