blob: cce52abb980368845ac8396e3cc9aac00819921e [file] [log] [blame]
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
# Basic Vagrant config (API version 2)
Vagrant.configure(2) do |config|
# Base box: FreeBSD 10.2 for x86-64
config.vm.guest = :freebsd
config.vm.box = "freebsd/FreeBSD-10.2-STABLE"
# Need some extra config to play nice with FreeBSD as guest OS.
config.vm.synced_folder ".", "/vagrant", id: "vagrant-root", disabled: true
config.ssh.shell = "sh"
config.vm.base_mac = "080027D14C66"
# Give a reasonable amount of cpu and memory to the VM
config.vm.provider "virtualbox" do |vb|
vb.memory = 8192
vb.cpus = 4
end
# Share the project source dir with the VM. We need to use NFS to mount a
# shared directory in a FreeBSD guest.
config.vm.network "private_network", ip: "10.0.1.10"
config.vm.synced_folder "../../..", "/quickstep", type: "nfs"
# Install necessary development packages
config.vm.provision "shell", inline: <<-SHELL
pkg upgrade -y
pkg install -y clang37 lldb37 cmake git protobuf flex bison
SHELL
end