ovsdb-server: Refactoring and clean up remote status reporting.
[cascardo/ovs.git] / Vagrantfile
index 982eb01..102a17d 100644 (file)
@@ -3,13 +3,17 @@
 
 # Vagrantfile API/syntax version. Don't touch unless you know what you're doing!
 VAGRANTFILE_API_VERSION = "2"
+Vagrant.require_version ">=1.7.0"
 
 $bootstrap_fedora = <<SCRIPT
-yum -y update
-yum -y install autoconf automake openssl-devel libtool \
+dnf -y update
+dnf -y install autoconf automake openssl-devel libtool \
                python-twisted-core python-zope-interface PyQt4 \
-              desktop-file-utils groff graphviz rpmdevtools
+               desktop-file-utils groff graphviz rpmdevtools \
+               libcap-ng-devel kernel-devel-`uname -r`
 echo "search extra update built-in" >/etc/depmod.d/search_path.conf
+cd /vagrant
+./boot.sh
 SCRIPT
 
 $configure_ovs = <<SCRIPT
@@ -23,27 +27,39 @@ cd ~/build
 make
 SCRIPT
 
+$test_kmod = <<SCRIPT
+cd ~/build
+make check-kmod
+SCRIPT
+
 $install_rpm = <<SCRIPT
 cd ~/build
 PACKAGE_VERSION=`autom4te -l Autoconf -t 'AC_INIT:$2' /vagrant/configure.ac`
 make && make dist
 rpmdev-setuptree
 cp openvswitch-$PACKAGE_VERSION.tar.gz $HOME/rpmbuild/SOURCES
+rpmbuild --bb -D "kversion `uname -r`" /vagrant/rhel/openvswitch-kmod-fedora.spec
 rpmbuild --bb --without check /vagrant/rhel/openvswitch-fedora.spec
-sudo rpm -e openvswitch
-sudo rpm -ivh $HOME/rpmbuild/RPMS/x86_64/openvswitch-$PACKAGE_VERSION-1.fc20.x86_64.rpm
-sudo systemctl enable openvswitch
-sudo systemctl start openvswitch
-sudo systemctl status openvswitch
+rpm -e openvswitch
+rpm -ivh $HOME/rpmbuild/RPMS/x86_64/openvswitch-$PACKAGE_VERSION-1.fc22.x86_64.rpm
+systemctl enable openvswitch
+systemctl start openvswitch
+systemctl status openvswitch
+SCRIPT
+
+$test_ovs_system_userspace = <<SCRIPT
+cd ~/build
+make check-system-userspace
 SCRIPT
 
 Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
-  config.vm.define "fedora-20" do |fedora|
-    fedora.vm.box = "chef/fedora-20"
-    fedora.vm.provision :shell, inline: $bootstrap_fedora
+  config.vm.define "fedora-22" do |fedora|
+       fedora.vm.box = "bento/fedora-22"
+       fedora.vm.provision "bootstrap", type: "shell", inline: $bootstrap_fedora
+       fedora.vm.provision "configure_ovs", type: "shell", inline: $configure_ovs
+       fedora.vm.provision "build_ovs", type: "shell", inline: $build_ovs
+       fedora.vm.provision "test_ovs_kmod", type: "shell", inline: $test_kmod
+       fedora.vm.provision "test_ovs_system_userspace", type: "shell", inline: $test_ovs_system_userspace
+       fedora.vm.provision "install_rpm", type: "shell", inline: $install_rpm
   end
-
-  config.vm.provision "configure_ovs", type: "shell", inline: $configure_ovs, privileged: false
-  config.vm.provision "build_ovs", type: "shell", inline: $build_ovs, privileged: false
-  config.vm.provision "install_rpm", type: "shell", inline: $install_rpm, privileged: false
 end