summaryrefslogtreecommitdiff
path: root/contrib/Vagrantfile
diff options
context:
space:
mode:
authorCarl Yeksigian <carl@apache.org>2013-06-03 18:29:31 -0400
committerCarl Yeksigian <carl@apache.org>2013-06-04 04:56:00 -0400
commit1ed799156dbaa8f313b413d28a6dacc7775ce88f (patch)
tree60ef674571fdff25e55b10dc33782f16705a92ef /contrib/Vagrantfile
parentd65def0159ce785488d9e8316d56a1d595bc1408 (diff)
downloadthrift-1ed799156dbaa8f313b413d28a6dacc7775ce88f.tar.gz
THRIFT-1985: Add a Vagrantfile to build and test Apache Thrift fully reproducable
Moved the Vagrantfile to the contrib/ directory to prevent polluting the top level directory
Diffstat (limited to 'contrib/Vagrantfile')
-rw-r--r--contrib/Vagrantfile59
1 files changed, 59 insertions, 0 deletions
diff --git a/contrib/Vagrantfile b/contrib/Vagrantfile
new file mode 100644
index 000000000..dd2e2ee9c
--- /dev/null
+++ b/contrib/Vagrantfile
@@ -0,0 +1,59 @@
+# -*- mode: ruby -*-
+# vi: set ft=ruby :
+
+#
+# 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.
+#
+
+$script = <<SCRIPT
+echo I am provisioning for Apache Thrift ...
+sudo apt-get update -qq -y
+sudo apt-get upgrade -qq -y
+sudo apt-get install -qq libboost-dev libboost-test-dev libboost-program-options-dev libevent-dev automake libtool flex bison pkg-config g++ libssl-dev make libqt4-dev
+sudo apt-get install -qq ant openjdk-7-jdk
+sudo apt-get install -qq python-all python-all-dev python-all-dbg
+sudo apt-get install -qq libbit-vector-perl
+sudo apt-get install -qq php5-dev php5-cli phpunit
+sudo apt-get install -qq libglib2.0-dev
+sudo apt-get install -qq git erlang-base erlang-eunit erlang-dev
+sudo apt-get install -qq mono-gmcs mono-devel libmono-system-web2.0-cil
+#sudo apt-get install -qq ghc6 cabal-install libghc6-binary-dev libghc6-network-dev libghc6-http-dev
+sudo apt-get install -qq mingw32 mingw32-binutils mingw32-runtime
+echo I am building Apache Thrift ...
+cd /thrift
+sh bootstrap.sh
+sh configure
+make
+make dist
+make check
+#sh test/test.sh
+date > /etc/vagrant_provisioned_at
+SCRIPT
+
+Vagrant.configure("2") do |config|
+ # Ubuntu 12.04 LTS (Precise Pangolin)
+ config.vm.box = "precise64"
+ config.vm.box_url = "http://cloud-images.ubuntu.com/precise/current/precise-server-cloudimg-vagrant-amd64-disk1.box"
+ # config.vm.box = "precise32"
+ # config.vm.box_url = "http://cloud-images.ubuntu.com/precise/current/precise-server-cloudimg-vagrant-i386-disk1.box"
+
+ config.vm.synced_folder "../", "/thrift"
+
+ # call the script
+ config.vm.provision :shell, :inline => $script
+end