diff --git a/test/scenario_test/README.md b/test/scenario_test/README.md index 5464704b..07a5e6b4 100644 --- a/test/scenario_test/README.md +++ b/test/scenario_test/README.md @@ -1,120 +1,104 @@ -Route Server Scenario Test +Scenario Test ======================== -Preparation ------------ -Please set up Ubuntu 14.04 Server Edition virtual machine, -and install golang environment inside the VM. +This page explains how to set up a scenario test environment and run the test. -Setup ------ -Execute the following commands inside the VM: +## Prerequisites + +Assume you finished setting up [Golang](https://golang.org/doc/install) and [Docker](https://docs.docker.com/installation/ubuntulinux/) on Ubuntu 14.04 Server VM. +We recommend allocating memory more than 8GB to the VM. +Because this scenario test runs a lot of test cases concurrently. + +## Check +Please check if Golang and Docker is installed correctly and +make sure the $GOPATH is defined. -- ##### 1. Install and setting the packages required to run the scenario test. ```shell -$ sudo apt-get update -$ sudo apt-get install git python-pip python-dev iputils-arping bridge-utils lv -$ sudo wget https://raw.github.com/jpetazzo/pipework/master/pipework -O /usr/local/bin/pipework -$ sudo chmod 755 /usr/local/bin/pipework -$ sudo apt-key adv --keyserver hkp://pgp.mit.edu:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D -$ sudo apt-get install docker-engine -$ gpasswd -a `whoami` docker +$ go version +go version go1.5.1 linux/amd64 + +$ echo $GOPATH +/home/yokoi-h/work + +$ sudo docker version +Client: + Version: 1.9.0 + API version: 1.21 + Go version: go1.4.2 + Git commit: 76d6bc9 + Built: Tue Nov 3 17:43:42 UTC 2015 + OS/Arch: linux/amd64 + +Server: + Version: 1.9.0 + API version: 1.21 + Go version: go1.4.2 + Git commit: 76d6bc9 + Built: Tue Nov 3 17:43:42 UTC 2015 + OS/Arch: linux/amd64 + ``` + +## Set up dependencies +Execute the following commands inside the VM to install the dependencies: + +1. Install pip and [pipework](https://github.com/jpetazzo/pipework). + + ```shell + $ sudo apt-get update + $ sudo apt-get install git python-pip python-dev iputils-arping bridge-utils lv + $ sudo wget https://raw.github.com/jpetazzo/pipework/master/pipework -O /usr/local/bin/pipework + $ sudo chmod 755 /usr/local/bin/pipework + ``` +
+ +1. Get docker images. + Download docker images pertaining to GoBGP testing. + + ```shell + $ sudo docker pull golang:1.5 + $ sudo docker pull osrg/quagga + $ sudo docker pull osrg/gobgp + ``` +
+ +1. Clone gobgp and install python libraries. + + ```shell + $ mkdir -p $GOPATH/src/github.com/osrg + $ cd $GOPATH/src/github.com/osrg + $ git clone https://github.com/osrg/gobgp.git + $ cd ./gobgp/test/scenario_test + $ sudo pip install -r pip-requires.txt + ```
-- ##### 2. Get each docker image from Docker Hub. -```shell -$ sudo docker pull osrg/golang:1.5 -$ sudo docker pull osrg/quagga -$ sudo docker pull osrg/gobgp +##
Install local source code +You need to install local source code into gobgp docker container. +You also need this operation at every modification to the source code. + ``` -
- - -- ##### 3. Download gobgp and install python libraries. -```shell -$ git clone https://github.com/osrg/gobgp.git -$ cd ./gobgp -$ GOBGP_DIR=`pwd` -$ cd ${GOBGP_DIR}/test/scenario_test -$ pip install -r pip-requires.txt -``` -
- - -Start ------ -##### All scenario test -You can run the all scenario test in the following shell script. -```shell -./run_all_tests.sh [
Run test +You can run all scenario tests with run_all_tests.sh. +If all tests passed, you can see "all tests passed successfully" at the end of the test. + ```shell -sudo -E python bgp_zebra_test.py [ Clean up +A lot of containers are created during the test. +Let's clean up. ``` - - - test of global_policy_test only -```shell -sudo -E python global_policy_test.py [