# -*- 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"
config.vm.synced_folder "../", "/vagrant/csit"
# Provision the box using ansible local (no Ansible installation needed
# on host).
config.vm.provision "ansible_local" do |ansible|
ansible.version = "latest"
ansible.become = true
ansible.verbose = false
ansible.limit = "vagrant"
ansible.inventory_path = "csit/fdio.infra.ansible/inventories/vagrant_inventory/hosts"
ansible.playbook = "csit/fdio.infra.ansible/site.yaml"
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-ubuntu2004-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-ubuntu2004-1n-vbox
For more information please visit:
https://docs.fd.io/csit/master/report/
https://docs.fd.io/csit/master/trending/
MESSAGE
config.vm.define "focal", primary: true do |focal|
# Base box definition, currently using
# Official Ubuntu 20.04 LTS (Focal) Daily Build
focal.vm.box = "ubuntu/focal64"
focal.vm.box_version = "20210415.0.0"
focal.vm.box_check_update = false
# Virtualbox machine configuration
focal.vm.provider "virtualbox" do |vb|
vb.name = "vppdevice-focal"
vb.gui = false
vb.memory = "8192"
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