# -*- mode: ruby -*- # vi: set ft=ruby : Vagrant.configure("2") do |config| # Configure cached packages to be shared between instances of the # same base box. if Vagrant.has_plugin?("vagrant-cachier") config.cache.scope = :box end # Configure proxy if needed. if Vagrant.has_plugin?("vagrant-proxyconf") config.proxy.http = "http://192.168.0.2:3128/" config.proxy.https = "http://192.168.0.2:3128/" config.proxy.ftp = "http://192.168.0.2:3128/" config.proxy.no_proxy = "localhost,127.0.0.1" end # Configure testing network interfaces (tg). config.vm.network :private_network, type: "dhcp", auto_config: false, virtualbox__intnet: "link1", nic_type: "82545em", mac: "0800270fe04d" config.vm.network :private_network, type: "dhcp", auto_config: false, virtualbox__intnet: "link2", nic_type: "82545em", mac: "08002761f7ad" config.vm.network :private_network, type: "dhcp", auto_config: false, virtualbox__intnet: "link3", nic_type: "82545em", mac: "080027dc5da4" # Configure testing network interfaces (sut). config.vm.network :private_network, type: "dhcp", auto_config: false, virtualbox__intnet: "link1", nic_type: "82545em", mac: "080027385e58" config.vm.network :private_network, type: "dhcp", auto_config: false, virtualbox__intnet: "link2", nic_type: "82545em", mac: "080027e3f542" config.vm.network :private_network, type: "dhcp", auto_config: false, virtualbox__intnet: "link3", nic_type: "82545em", mac: "0800274f7c63" # Provision the box using ansible local (no Ansible installation needed # on host). config.vm.provision "ansible_local" do |ansible| ansible.version = "latest" ansible.compatibility_mode = "2.0" ansible.become = true ansible.verbose = false ansible.limit = "all" ansible.inventory_path = "ansible/vppdevice" ansible.playbook = "ansible/master.yml" end config.vm.post_up_message = <<-MESSAGE Your virtual machine is configured! Login to the box using command: vagrant ssh To run some tests use the VPP Device bootstrap script, eg: cd /home/vagrant/csit/resources/libraries/bash/entry ./bootstrap_vpp_device.sh csit-vpp-device-master-ubuntu1804-1n-vbox To run only selected tests based on TAGS, export environment variables before running the test suite: export GERRIT_EVENT_TYPE="comment-added" export GERRIT_EVENT_COMMENT_TEXT="devicetest memif" ./bootstrap_vpp_device.sh csit-vpp-device-master-ubuntu1804-1n-vbox For more information please visit: https://docs.fd.io/csit/rls1908/report/index.html https://docs.fd.io/csit/master/trending/ MESSAGE config.vm.define "bionic", primary: true do |bionic| # Base box definition, currently using # Official Ubuntu 18.04 LTS (Bionic Beaver) Daily Build bionic.vm.box = "ubuntu/bionic64" bionic.vm.box_version = "20190724.1.0" bionic.vm.box_check_update = false # Virtualbox machine configuration bionic.vm.provider "virtualbox" do |vb| vb.name = "vppdevice-bionic" vb.gui = false vb.memory = "4096" vb.cpus = "4" vb.customize ["modifyvm", :id, "--nicpromisc2", "allow-all"] vb.customize ["modifyvm", :id, "--nicpromisc3", "allow-all"] vb.customize ["modifyvm", :id, "--nicpromisc4", "allow-all"] vb.customize ["modifyvm", :id, "--nicpromisc5", "allow-all"] vb.customize ["modifyvm", :id, "--nicpromisc6", "allow-all"] vb.customize ["modifyvm", :id, "--nicpromisc7", "allow-all"] end end config.vm.define "centos8", autostart: false do |centos8| # Base box definition, currently using # Unofficial Centos8 (as currently there is no offical build) centos8.vm.box = "geerlingguy/centos8" centos8.vm.box_version = "1.0.2" centos8.vm.box_check_update = false # Virtualbox machine configuration centos8.vm.provider "virtualbox" do |vb| vb.name = "vppdevice-centos8" vb.gui = false vb.memory = "4096" vb.cpus = "4" vb.customize ["modifyvm", :id, "--nicpromisc2", "allow-all"] vb.customize ["modifyvm", :id, "--nicpromisc3", "allow-all"] vb.customize ["modifyvm", :id, "--nicpromisc4", "allow-all"] vb.customize ["modifyvm", :id, "--nicpromisc5", "allow-all"] vb.customize ["modifyvm", :id, "--nicpromisc6", "allow-all"] vb.customize ["modifyvm", :id, "--nicpromisc7", "allow-all"] end end end