diff --git a/vagrantSandbox/README b/vagrantSandbox/README index 41d8b0f16..367925f24 100644 --- a/vagrantSandbox/README +++ b/vagrantSandbox/README @@ -3,7 +3,10 @@ * Prerequisites These virtual machines require - VirtualBox :: for running from [[https://www.virtualbox.org]] - - Vagrant :: to automatically set them up from [[http://www.vagrantup.com]] + - Vagrant :: to automatically set them up from + [[http://www.vagrantup.com]] Make sure that you have at + least version 1.5 to be able to use the base boxes from + https://vagrantcloud.com/ To make sure that for the boxes the have the newest VirtualBox-additions do : vagrant plugin install vagrant-vbguest @@ -31,7 +34,7 @@ doing * Virtual machines Currently existing virtual machines are - - precise :: Latest LTS Ubuntu. + - precise :: Latest LTS Ubuntu. Currently the default machine to use - lucid :: Previous LTS Ubuntu. Currently problems with automatic setting up (something with the =postfix=-package) @@ -39,8 +42,13 @@ =lucid=-machine. Not yet working - centos65 :: A CentOS 6.5 machine with preinstalled development tools - - freebsd92 :: FreeBSD 9.2 32-bit machine. Does not work because - FreeBSD does not support shared folders + - freebsd92 :: FreeBSD 9.2 64-bit machine. Currently this machine + does not provision automatically. After the first + failure log in and do +: sudo pkg_add -r rsync +: sudo pkg_add -r bash + then halt the machine and bring it up again (with the + =--provision=-option) - freebsd10 :: FreeBSD 10.0 32-big machine. Tries to set up shared folders via NFS. Currently not working - opensuse12 :: OpenSUSE 12.3 machine. Currently not completely diff --git a/vagrantSandbox/Vagrantfile b/vagrantSandbox/Vagrantfile index 081f8ab5b..d3b3eedd4 100644 --- a/vagrantSandbox/Vagrantfile +++ b/vagrantSandbox/Vagrantfile @@ -12,6 +12,28 @@ Vagrant.configure("2") do |config| vb.customize ["modifyvm", :id, "--memory", "1024"] end + # default + config.vm.define :precise do |precise| + precise.vm.box = "hashicorp/precise64" + precise.vm.box_check_update = true + # precise.vm.box_url = "http://files.vagrantup.com/precise64.box" + precise.vm.provision :shell do |s| + s.args = "precise" + s.path = "initUbunutuScript.sh" + end + end + + config.vm.define :centos65 do |centos65| + centos65.vm.box = "chef/centos-6.5" + centos65.vm.box_check_update = true + # centos65.vm.box_url = "https://github.com/2creatives/vagrant-centos/releases/download/v6.5.1/centos65-x86_64-20131205.box" + centos65.vm.provision :shell do |s| + s.args = "centos65" + s.path = "initCentOSRHELScript.sh" + end + end + + # legacy config.vm.define :lucid do |lucid| lucid.vm.box = "lucid64" lucid.vm.box_url = "http://files.vagrantup.com/lucid64.box" @@ -21,6 +43,7 @@ Vagrant.configure("2") do |config| end end + #legacy config.vm.define :maverick do |maverick| maverick.vm.box = "maverick64" maverick.vm.box_url = "http://mathie-vagrant-boxes.s3.amazonaws.com/maverick64.box" @@ -30,34 +53,21 @@ Vagrant.configure("2") do |config| end end - config.vm.define :precise do |precise| - precise.vm.box = "precise64" - precise.vm.box_url = "http://files.vagrantup.com/precise64.box" - precise.vm.provision :shell do |s| - s.args = "precise" - s.path = "initUbunutuScript.sh" - end - end - - config.vm.define :centos65 do |centos65| - centos65.vm.box = "centos65" - centos65.vm.box_url = "https://github.com/2creatives/vagrant-centos/releases/download/v6.5.1/centos65-x86_64-20131205.box" - centos65.vm.provision :shell do |s| - s.args = "centos65" - s.path = "initCentOSRHELScript.sh" - end - end - + # experimental config.vm.define :freebsd92 do |freebsd92| - freebsd92.vm.box = "freebsd92" + freebsd92.vm.box = "chef/freebsd-9.2" + freebsd92.vm.box_check_update = true # freebsd92.vm.box_url = "https://wunki.org/files/freebsd-9.2-amd64-wunki.box" - freebsd92.vm.box_url = "http://iris.hosting.lv/freebsd-9.2-i386.box" +# freebsd92.vm.box_url = "http://iris.hosting.lv/freebsd-9.2-i386.box" freebsd92.vm.provision :shell do |s| s.args = "freebsd92" s.path = "initFreeBSDScript.sh" end + freebsd92.vm.synced_folder "..", "/FOAM-sources", type: "rsync", rsync__exclude: "vagrantSandbox/" + freebsd92.vm.synced_folder ".", "/vagrant", type: "rsync", rsync__exclude: "ccache4vm/" end + # legacy/experimental config.vm.define :freebsd10 do |freebsd10| freebsd10.vm.box = "freebsd10" # freebsd10.vm.box_url = "https://wunki.org/files/freebsd-10.0-amd64-wunki.box" @@ -78,6 +88,7 @@ Vagrant.configure("2") do |config| freebsd10.vm.synced_folder "..", "/FOAM-sources", :nfs => true end + # legacy config.vm.define :opensuse12 do |opensuse12| opensuse12.vm.box = "opensuse12" opensuse12.vm.box_url = "http://sourceforge.net/projects/opensusevagrant/files/12.3/opensuse-12.3-64.box/download" diff --git a/vagrantSandbox/initCentOSRHELScript.sh b/vagrantSandbox/initCentOSRHELScript.sh index b96b1f71e..4aca9927e 100755 --- a/vagrantSandbox/initCentOSRHELScript.sh +++ b/vagrantSandbox/initCentOSRHELScript.sh @@ -6,9 +6,12 @@ echo echo "Init script for $boxName" echo +echo "Install the EPEL-repository for additional software" +rpm -Uvh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm + # some of these packages are already installed. But lets be sure -neededPackages=(gcc-g++ mercurial git flex bison make ccache rpm-build wget zlib-devel binutils-devel) +neededPackages=(gcc-c++ gcc-gfortran mercurial git flex bison make ccache rpm-build wget zlib-devel binutils-devel) bonusPackages=(emacs csh tcsh zsh) for p in ${neededPackages[@]}; do diff --git a/vagrantSandbox/initGeneralScript.sh b/vagrantSandbox/initGeneralScript.sh index 672f49af0..0a0025808 100755 --- a/vagrantSandbox/initGeneralScript.sh +++ b/vagrantSandbox/initGeneralScript.sh @@ -37,8 +37,12 @@ then then echo echo "Parent is git" + echo "Cloning. This may take some time" echo + + # su -c not correctly working on FreeBSD su vagrant - -c "git clone $OFParent $OFClone" + echo echo "Git cloned: TODO: set same branch as parent" echo @@ -52,6 +56,7 @@ then # sed removes + in case of a 'tainted' parent echo "Parent is on id $idName" + echo "Cloning. This may take some time" su vagrant - -c "hg clone -u $idName $OFParent $OFClone" echo else