Skip to content

Commit

Permalink
Modernize freebsd vagrant config.
Browse files Browse the repository at this point in the history
  • Loading branch information
bdarnell committed Sep 1, 2014
1 parent ce7261d commit 429e499
Show file tree
Hide file tree
Showing 3 changed files with 31 additions and 37 deletions.
44 changes: 23 additions & 21 deletions maint/vm/freebsd/Vagrantfile
Original file line number Diff line number Diff line change
@@ -1,23 +1,25 @@
Vagrant::Config.run do |config|
# A freebsd image can be created with veewee
# https://github.com/jedi4ever/veewee
#
# vagrant basebox define freebsd freebsd-8.2-pcbsd-i386-netboot
# vagrant basebox build freebsd
# vagrant basebox export freebsd
# vagrant box add freebsd freebsd.box
config.vm.box = "freebsd"
# -*- mode: ruby -*-
# vi: set ft=ruby :

config.vm.guest = :freebsd

# Note that virtualbox shared folders don't work with freebsd, so
# we'd need nfs shared folders here even if virtualbox gains
# support for symlinks.
config.vm.network :hostonly, "172.19.1.3"
# Name this v-root to clobber the default /vagrant mount point.
# We can't mount it over nfs because there are apparently issues
# when one nfs export is a subfolder of another.
config.vm.share_folder("v-root", "/tornado", "../../..", :nfs => true)
# Vagrantfile API/syntax version. Don't touch unless you know what you're doing!
VAGRANTFILE_API_VERSION = "2"

config.vm.provision :shell, :path => "setup.sh"
end
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
config.vm.box = "chef/freebsd-10.0"

config.vm.network "private_network", type: "dhcp"

# Share an additional folder to the guest VM. The first argument is
# the path on the host to the actual folder. The second argument is
# the path on the guest to mount the folder. And the optional third
# argument is a set of non-required options.
config.vm.synced_folder "../../..", "/tornado", type: "nfs"

# Override the default /vagrant mapping to use nfs, since freebsd doesn't
# support other folder types.
config.vm.synced_folder ".", "/vagrant", type: "nfs"

config.ssh.shell = "/bin/sh"

config.vm.provision :shell, :path => "setup.sh"
end
22 changes: 7 additions & 15 deletions maint/vm/freebsd/setup.sh
Original file line number Diff line number Diff line change
Expand Up @@ -2,15 +2,12 @@

chsh -s bash vagrant

# This doesn't get created automatically for freebsd since virtualbox
# shared folders don't work.
ln -snf /tornado/maint/vm/freebsd /vagrant

PORTS="
lang/python27
devel/py-pip
devel/py-virtualenv
ftp/curl
PACKAGES="
curl
python
python34
py27-pip
py27-virtualenv
"

PIP_PACKAGES="
Expand All @@ -19,13 +16,8 @@ pycurl
tox
"

cd /usr/ports

for port in $PORTS; do
make -C $port -DBATCH install
done
ASSUME_ALWAYS_YES=true pkg install $PACKAGES

pip install $PIP_PACKAGES

/tornado/maint/vm/shared-setup.sh

2 changes: 1 addition & 1 deletion maint/vm/freebsd/tox.ini
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
[tox]
envlist=py27-full, py27
envlist=py27-full, py27, py34
setupdir=/tornado
# /home is a symlink to /usr/home, but tox doesn't like symlinks here
toxworkdir=/usr/home/vagrant/tox-tornado
Expand Down

0 comments on commit 429e499

Please sign in to comment.