Docker builds on Travis (#343)

* attempt to build on travis using docker

* run tests in foreground

* add examples to travis tests

* test from current checkout

* attempt to fix docker version issues

* try build with xenial

* attempt docker upgrade

* avoid hang on configuration files

* matrix osx and linux w/ docker

* restore non-test docker builds

* fix typo

* tuning and cleanup

* add missing file

* comment cleanup
This commit is contained in:
Johann Schleier-Smith
2016-08-02 17:03:28 -07:00
committed by Robert Nishihara
parent 33d03e56db
commit 583df08957
10 changed files with 100 additions and 12 deletions
+14
View File
@@ -0,0 +1,14 @@
#!/bin/bash
if [[ $TRAVIS_OS_NAME == 'linux' ]]; then
# Linux test uses Docker
docker run amplab/ray:test-base bash -c 'source setup-env.sh && cd test && python runtest.py && python array_test.py && python microbenchmarks.py'
else
# Mac OS X test
source setup-env.sh
pushd test
runtest.py
python array_test.py
python microbenchmarks.py
popd
fi
+7
View File
@@ -0,0 +1,7 @@
#!/bin/bash
# Hyperparameter optimization test
# Runs only on Docker under Linux
if [[ $TRAVIS_OS_NAME == 'linux' ]]; then
docker run --shm-size=500m amplab/ray:test-examples bash -c 'source setup-env.sh && cd examples/hyperopt && python driver.py'
fi
+28
View File
@@ -0,0 +1,28 @@
#!/bin/bash
if [[ $TRAVIS_OS_NAME == 'linux' ]]; then
# Linux test uses Docker
# We need to update the Docker version provided by Travis CI
# in order to set shm size, a setting required by some of the
# tests.
sudo apt-get update
sudo apt-get -y install apt-transport-https ca-certificates
sudo apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D
echo deb https://apt.dockerproject.org/repo ubuntu-trusty main | sudo tee --append /etc/apt/sources.list.d/docker.list
sudo apt-get update
sudo apt-get -y -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold" install docker-engine
docker version
# We tar the current checkout, then include it in the Docker image
tar --exclude './docker' -cv . > ./docker/test-base/ray.tar
docker build --no-cache -t amplab/ray:test-base docker/test-base
rm ./docker/test-base/ray.tar
docker build --no-cache -t amplab/ray:test-examples docker/test-examples
docker ps -a
else
# Mac OS X test
./install-dependencies.sh
./setup.sh
./build.sh
fi
+7
View File
@@ -0,0 +1,7 @@
#!/bin/bash
# L-BFGS Test
# Runs only on Docker under Linux
if [[ $TRAVIS_OS_NAME == 'linux' ]]; then
docker run --shm-size=500m amplab/ray:test-examples bash -c 'source setup-env.sh && cd examples/lbfgs && python driver.py'
fi