merge with latest upstream status
[osm/vim-emu.git] / Vagrantfile
old mode 100644 (file)
new mode 100755 (executable)
index 2efc999..7c9c68f
@@ -111,7 +111,7 @@ Vagrant.configure(2) do |config|
      sudo apt-get install -y git ansible aptitude
      sudo echo "localhost ansible_connection=local" >> /etc/ansible/hosts
      # install containernet
-     git clone https://github.com/mpeuster/containernet.git
+     git clone https://github.com/containernet/containernet.git
      echo "Installing containernet (will take some time ~30 minutes) ..."
      cd /home/vagrant/containernet/ansible
      sudo ansible-playbook install.yml
@@ -125,10 +125,42 @@ Vagrant.configure(2) do |config|
      echo "Running son-emu unit tests to validate installation"
      cd /home/vagrant/son-emu
      sudo python setup.py develop
-     sudo py.test -v
+     sudo py.test -v src/emuvim/test/unittests
+
+     # install son-cli
+     sudo apt-get install -y python-pip python-dev
+     sudo apt-get install -y python3.4 python3-dev libffi-dev libssl-dev libyaml-dev build-essential
+     sudo pip install virtualenv 
+     cd /home/vagrant
+     git clone https://github.com/sonata-nfv/son-cli.git
+     cd son-cli
+     virtualenv -p /usr/bin/python3.4 venv
+     source venv/bin/activate
+     python bootstrap.py
+     bin/buildout
+
+     # clone son-examples (disabled until repo goes public)
+     cd /home/vagrant
+     git clone https://github.com/sonata-nfv/son-examples.git
+
+     # prepare VM for some special containers (PF_RING)
+     cd /home/vagrant/son-examples/vnfs/sonata-vtc-vnf-docker/
+     chmod +x prepare_host.sh
+     sudo ./prepare_host.sh
 
      # place motd
+     cd /home/vagrant/son-emu
      sudo cp utils/vagrant/motd /etc/motd
+
+     # pre-fetch sonata example vnfs from DockerHub
+     echo "Fetching SONATA example VNF container from DockerHub/sonatanfv"
+     sudo docker pull sonatanfv/sonata-empty-vnf 
+     sudo docker pull sonatanfv/sonata-iperf3-vnf 
+     sudo docker pull sonatanfv/sonata-snort-ids-vnf
+     sudo docker pull sonatanfv/sonata-ovs1-vnf
+     sudo docker pull sonatanfv/sonata-ryu-vnf
+     sudo docker pull sonatanfv/sonata-vtc-vnf
+     sudo docker pull sonatanfv/son-emu-sap
   SHELL
 
   # TODO the native ansible provisioner does not work so we directly call the shell commands