blob: 6c5941e60b6a4ab8f782aeb8548c057702c52316 [file] [log] [blame]
#!/bin/bash
# Copyright (c) 2015 SONATA-NFV and Paderborn University
# ALL RIGHTS RESERVED.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
# Neither the name of the SONATA-NFV, Paderborn University
# nor the names of its contributors may be used to endorse or promote
# products derived from this software without specific prior written
# permission.
#
# This work has been performed in the framework of the SONATA project,
# funded by the European Commission under Grant number 671517 through
# the Horizon 2020 and 5G-PPP programmes. The authors would like to
# acknowledge the contributions of their colleagues of the SONATA
# partner consortium (www.sonata-nfv.eu).
#
# This is the entry point for Jenkins.
# Script has to be called from "son-emu" root directory, like: sudo ./utils/ci/jenkins_entrypoint.sh
export DOCKER_HOST="unix:///var/run/docker.sock"
set -e
set -x
# install docker
#apt-get install curl apt-transport-https ca-certificates
#curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
#add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
#apt-get -qq update
#apt-get install docker-ce
# build the container
docker build -t test-son-emu-img .
# launch the container and trigger the unit tests
docker run --name son-emu --rm --privileged --pid='host' -v /var/run/docker.sock:/var/run/docker.sock test-son-emu-img py.test -v src/emuvim/test/unittests
#
# old way to call the tests directly on the host machine
#
#SON_EMU_DIR=$(pwd)
#cd $SON_EMU_DIR/../
# prepare
#apt-get update
#DEBIAN_FRONTEND=noninteractive apt-get install -o Dpkg::Options::="--force-confold" --force-yes -y git ansible aptitude
#echo "localhost ansible_connection=local" >> /etc/ansible/hosts
# install containernet
#git clone https://github.com/containernet/containernet.git
#CONTAINERNET_DIR=$(pwd)/containernet
#echo "Installing containernet (will take some time ~30 minutes) ..."
#cd $CONTAINERNET_DIR/ansible
#ansible-playbook install.yml
# install son-emu
#echo "Installing son-emu (will take some time) ..."
#cd $SON_EMU_DIR/ansible
#ansible-playbook install.yml
# execute son-emu tests at the end to validate installation
#echo "Running son-emu unit tests to validate installation"
#cd $SON_EMU_DIR
#python setup.py develop
# run the unit tests
#py.test -v src/emuvim/test/unittests