diff options
author | Antonio Ojea <aojea@midokura.com> | 2017-02-24 14:22:28 +0100 |
---|---|---|
committer | Christian Grothoff <christian@grothoff.org> | 2017-02-25 01:53:16 +0100 |
commit | c4942479309a40c09c4659fa3e26280d3a121058 (patch) | |
tree | 91a38332aa89dd2f6b7047171cd286e88f6d6341 /contrib/vagrant/Vagrantfile | |
parent | b92a2992b013a8a27f2ca3b5d5e183c0f1df54a1 (diff) | |
download | gnunet-c4942479309a40c09c4659fa3e26280d3a121058.tar.gz gnunet-c4942479309a40c09c4659fa3e26280d3a121058.zip |
Add Vagrant file for development
This patch adds a vagranfile that installs the required
dependencies to compile gnunet.
To be able to use it you need to cd to the contrib/vagrant
directory, run "vagrant up" and wait until the VM is provisioned.
Once it finish the provisioning you can login in the VM with
"vagrant ssh" The VM mounts the source code of gnunet in the
folder /gnunet, thus you can edit your code in the host and
compile it in the VM.
Signed-off-by: Antonio Ojea <aojea@midokura.com>
Diffstat (limited to 'contrib/vagrant/Vagrantfile')
-rw-r--r-- | contrib/vagrant/Vagrantfile | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/contrib/vagrant/Vagrantfile b/contrib/vagrant/Vagrantfile new file mode 100644 index 000000000..d6b671b24 --- /dev/null +++ b/contrib/vagrant/Vagrantfile | |||
@@ -0,0 +1,55 @@ | |||
1 | # -*- mode: ruby -*- | ||
2 | # vi: set ft=ruby : | ||
3 | # | ||
4 | # Source https://github.com/alxn/vpp/blob/master/build-root/vagrant/Vagrantfile | ||
5 | |||
6 | Vagrant.configure(2) do |config| | ||
7 | |||
8 | config.vm.box = "bento/ubuntu-16.04" | ||
9 | config.vm.box_version = "2.2.9" | ||
10 | config.vm.provision 'shell', path: 'bootstrap.ubuntu.sh' | ||
11 | |||
12 | # Add .gnupg dir in so folks can sign patches | ||
13 | # Note, as gnupg puts socket files in that dir, we have | ||
14 | # to be cautious and make sure we are dealing with a plain file | ||
15 | homedir = File.expand_path("~/") | ||
16 | Dir["#{homedir}/.gnupg/**/*"].each do |fname| | ||
17 | if File.file?(fname) | ||
18 | destname = fname.sub(Regexp.escape("#{homedir}/"),'') | ||
19 | config.vm.provision "file", source: fname, destination: destname | ||
20 | end | ||
21 | end | ||
22 | |||
23 | # Copy in the .gitconfig if it exists | ||
24 | if File.file?(File.expand_path("~/.gitconfig")) | ||
25 | config.vm.provision "file", source: "~/.gitconfig", destination: ".gitconfig" | ||
26 | end | ||
27 | |||
28 | # vagrant-cachier caches apt/yum etc to speed subsequent | ||
29 | # vagrant up | ||
30 | # to enable, run | ||
31 | # vagrant plugin install vagrant-cachier | ||
32 | # | ||
33 | if Vagrant.has_plugin?("vagrant-cachier") | ||
34 | config.cache.scope = :box | ||
35 | end | ||
36 | |||
37 | # use http proxy if avaiable | ||
38 | if ENV['http_proxy'] && Vagrant.has_plugin?("vagrant-proxyconf") | ||
39 | config.proxy.http = "$http_proxy" | ||
40 | config.proxy.https = "$https_proxy" | ||
41 | config.proxy.no_proxy = "localhost,127.0.0.1" | ||
42 | end | ||
43 | |||
44 | config.vm.synced_folder "../../", "/gnunet", disabled: false | ||
45 | config.vm.provider "virtualbox" do |vb| | ||
46 | vb.memory = "4096" | ||
47 | end | ||
48 | config.vm.provider "vmware_fusion" do |fusion,override| | ||
49 | fusion.vmx["memsize"] = "4096" | ||
50 | end | ||
51 | config.vm.provider "vmware_workstation" do |vws,override| | ||
52 | vws.vmx["memsize"] = "4096" | ||
53 | vws.vmx["numvcpus"] = "4" | ||
54 | end | ||
55 | end | ||