]> git.proxmox.com Git - mirror_ovs.git/commitdiff
vagrant: Add FreeBSD 10.2 box support.
authorWilliam Tu <u9012063@gmail.com>
Wed, 29 Jun 2016 17:35:00 +0000 (10:35 -0700)
committerBen Pfaff <blp@ovn.org>
Sun, 3 Jul 2016 17:27:20 +0000 (10:27 -0700)
Add FreeBSD 10.2 vagrant file "Vagrantfile-FreeBSD".  Users can run
'VAGRANT_VAGRANTFILE=Vagrantfile-FreeBSD vagrant up' to test basic
OVS configure, build, and check.

Signed-off-by: William Tu <u9012063@gmail.com>
Signed-off-by: Ben Pfaff <blp@ovn.org>
Makefile.am
Vagrantfile-FreeBSD [new file with mode: 0644]

index 8cb8523b7ea23fb51463bc5225a4239345de9197..b2c11269df549e83d8f883a12b771dfd4abc2c63 100644 (file)
@@ -114,7 +114,8 @@ EXTRA_DIST = \
        build-aux/xml2nroff \
        $(MAN_FRAGMENTS) \
        $(MAN_ROOTS) \
-       Vagrantfile
+       Vagrantfile \
+       Vagrantfile-FreeBSD
 bin_PROGRAMS =
 sbin_PROGRAMS =
 bin_SCRIPTS =
diff --git a/Vagrantfile-FreeBSD b/Vagrantfile-FreeBSD
new file mode 100644 (file)
index 0000000..8f00abe
--- /dev/null
@@ -0,0 +1,49 @@
+# -*- mode: ruby -*-
+# vi: set ft=ruby :
+
+# All Vagrant configuration is done below. The "2" in Vagrant.configure
+# configures the configuration version (we support older styles for
+# backwards compatibility). Please don't change it unless you know what
+# you're doing.
+
+VAGRANTFILE_API_VERSION = "2"
+Vagrant.require_version ">=1.7.0"
+
+$bootstrap_freebsd = <<SCRIPT
+sed  -e 's/\#DEFAULT_ALWAYS_YES = false/DEFAULT_ALWAYS_YES = true/g' -e 's/\#ASSUME_ALWAYS_YES = false/ASSUME_ALWAYS_YES = true/g' /usr/local/etc/pkg.conf > /tmp/pkg.conf
+mv -f /tmp/pkg.conf /usr/local/etc/pkg.conf
+pkg install automake libtool wget python py27-six gmake
+SCRIPT
+
+$configure_ovs = <<SCRIPT
+cd /vagrant
+./boot.sh
+mkdir -p ~/build
+cd ~/build
+sudo /vagrant/configure --disable-libcapng --enable-silent-rules
+SCRIPT
+
+$build_ovs = <<SCRIPT
+cd ~/build
+gmake
+SCRIPT
+
+$test_userspace = <<SCRIPT
+cd ~/build
+gmake check
+SCRIPT
+
+Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
+  # Use NFS due to capability 'mount_virtualbox_shared_folder'
+  # does not work on FreeBSD.
+  config.vm.network :private_network, ip: "10.0.0.2"
+  config.vm.synced_folder ".", "/vagrant", :nfs => true
+
+  config.vm.define "freebsd-10.2" do |freebsd|
+    freebsd.vm.box = "bento/freebsd-10.2" 
+    freebsd.vm.provision "bootstrap", type: "shell", inline: $bootstrap_freebsd
+    freebsd.vm.provision "configure_ovs", type: "shell", inline: $configure_ovs
+    freebsd.vm.provision "build_ovs", type: "shell", inline: $build_ovs
+    freebsd.vm.provision "test_userspace", type: "shell", inline: $test_userspace
+  end
+end