vagrant-cachier 0.5.1 → 0.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +33 -0
- data/Gemfile +1 -1
- data/Gemfile.lock +59 -34
- data/LICENSE.txt +1 -1
- data/README.md +27 -10
- data/development/Cheffile.lock +1 -5
- data/development/Vagrantfile +81 -71
- data/docs/buckets/apt-lists.md +18 -0
- data/docs/how-does-it-work.md +5 -6
- data/docs/index.md +24 -5
- data/docs/template.html +1 -0
- data/docs/usage.md +81 -28
- data/lib/vagrant-cachier/action/clean.rb +1 -1
- data/lib/vagrant-cachier/action/configure_bucket_root.rb +46 -0
- data/lib/vagrant-cachier/action/install_buckets.rb +47 -0
- data/lib/vagrant-cachier/bucket.rb +55 -0
- data/lib/vagrant-cachier/bucket/apt.rb +3 -12
- data/lib/vagrant-cachier/bucket/apt_cacher.rb +1 -13
- data/lib/vagrant-cachier/bucket/apt_lists.rb +24 -0
- data/lib/vagrant-cachier/bucket/chef.rb +1 -14
- data/lib/vagrant-cachier/bucket/composer.rb +1 -14
- data/lib/vagrant-cachier/bucket/gem.rb +4 -17
- data/lib/vagrant-cachier/bucket/npm.rb +1 -14
- data/lib/vagrant-cachier/bucket/pacman.rb +1 -14
- data/lib/vagrant-cachier/bucket/rvm.rb +4 -17
- data/lib/vagrant-cachier/bucket/yum.rb +4 -15
- data/lib/vagrant-cachier/bucket/zypper.rb +4 -15
- data/lib/vagrant-cachier/cap/debian/apt_lists_dir.rb +13 -0
- data/lib/vagrant-cachier/capabilities.rb +64 -0
- data/lib/vagrant-cachier/config.rb +35 -10
- data/lib/vagrant-cachier/hooks.rb +27 -0
- data/lib/vagrant-cachier/plugin.rb +12 -80
- data/lib/vagrant-cachier/version.rb +1 -1
- data/locales/en.yml +3 -7
- data/vagrant-cachier.gemspec +11 -1
- metadata +20 -12
- data/lib/vagrant-cachier/action/ensure_single_cache_root.rb +0 -64
- data/lib/vagrant-cachier/errors.rb +0 -9
- data/lib/vagrant-cachier/provision_ext.rb +0 -74
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 307983515bc00363631b1742d531e79f2fb24e8e
|
4
|
+
data.tar.gz: 6bebf0f7c9e887566d4f1161506d461ae43f3b06
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6677e3fcb6ebb9c699fd3c774250fba801a50c914c32022d53367ad2a2b1fe029f03f8853f84858fe8bf554e982c5763bab24d1f2ed70a140847f587287ad01e
|
7
|
+
data.tar.gz: 20574de968aac25e1d2295739a2f97d2876be801f1d966841c631d7524b3186aef29e522952ce7b2c5c3ed2d53cac244826d171db505eab9265e4ab8f4efe583
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,36 @@
|
|
1
|
+
## [0.6.0](https://github.com/fgrehm/vagrant-cachier/compare/v0.5.1...v0.6.0) (Feb 26, 2014)
|
2
|
+
|
3
|
+
BACKWARDS INCOMPATIBILITY:
|
4
|
+
|
5
|
+
- Plugin activation is now triggered by the `cache.scope` config and that config
|
6
|
+
is now required. Previous versions of the plugin had it set to `:box` but
|
7
|
+
there is no consensus whether `:box` and `:machine` is better. This is to
|
8
|
+
highlight that you need to think about the caching strategy you are going
|
9
|
+
to use. For more information and to discuss this move please check [GH-17](https://github.com/fgrehm/vagrant-cachier/issues/17).
|
10
|
+
- Because `cache.scope` is now a requirement and in order to reduce the amount of
|
11
|
+
configuration required by the plugin, we enabled automatic bucket detection by
|
12
|
+
default. To revert to the old behavior you can disable it globally from your
|
13
|
+
`~/.vagrant.d/Vagrantfile`.
|
14
|
+
- Support for Vagrant < 1.4 is gone, please use a previous plugin version if
|
15
|
+
you are running Vagrant 1.2 / 1.3
|
16
|
+
- Automatic handling of multiple machine scoped cache dirs from versions
|
17
|
+
prior to 0.3.0 of this plugin was removed.
|
18
|
+
- Support for `enable_nfs` has been deprecated and will be removed on 0.7.0,
|
19
|
+
please use `cache.synced_folder_opts = {type: :nfs}` instead.
|
20
|
+
|
21
|
+
FEATURES:
|
22
|
+
|
23
|
+
- Warm up cache buckets with files available on guest in case bucket is empty
|
24
|
+
- Support for offline provisioning of apt-packages by caching `/var/lib/apt/lists` [GH-84]
|
25
|
+
- Support for specifying custom cache bucket synced folder opts
|
26
|
+
- Support to force disabe the plugin [GH-72]
|
27
|
+
- Automatically disable the plugin for cloud providers [GH-45]
|
28
|
+
- Skip configuration of buckets that have been configured already [GH-85]
|
29
|
+
|
30
|
+
BUG FIXES:
|
31
|
+
|
32
|
+
- Properly fix NFS support for Vagrant 1.4+ [GH-76]
|
33
|
+
|
1
34
|
## [0.5.1](https://github.com/fgrehm/vagrant-cachier/compare/v0.5.0...v0.5.1) (Dec 20, 2013)
|
2
35
|
|
3
36
|
BUG FIXES:
|
data/Gemfile
CHANGED
@@ -4,7 +4,7 @@ source 'https://rubygems.org'
|
|
4
4
|
gemspec
|
5
5
|
|
6
6
|
group :development do
|
7
|
-
gem 'vagrant', github: 'mitchellh/vagrant'
|
7
|
+
gem 'vagrant', github: 'mitchellh/vagrant', tag: 'v1.4.3'
|
8
8
|
gem 'vagrant-lxc', github: 'fgrehm/vagrant-lxc'
|
9
9
|
gem 'vagrant-pristine', github: 'fgrehm/vagrant-pristine'
|
10
10
|
gem 'vagrant-global-status', github: 'fgrehm/vagrant-global-status'
|
data/Gemfile.lock
CHANGED
@@ -1,104 +1,129 @@
|
|
1
1
|
GIT
|
2
2
|
remote: git://github.com/fgrehm/vagrant-global-status.git
|
3
|
-
revision:
|
3
|
+
revision: 8ae82e2c57b085a030137a40e9b3d232f42e5117
|
4
4
|
specs:
|
5
|
-
vagrant-global-status (0.1.
|
5
|
+
vagrant-global-status (0.1.5.dev)
|
6
6
|
|
7
7
|
GIT
|
8
8
|
remote: git://github.com/fgrehm/vagrant-lxc.git
|
9
|
-
revision:
|
9
|
+
revision: 1083f100adc4cf1bd20e7eb794ecfda94ef8b365
|
10
10
|
specs:
|
11
|
-
vagrant-lxc (0.
|
11
|
+
vagrant-lxc (0.7.1.dev)
|
12
12
|
|
13
13
|
GIT
|
14
14
|
remote: git://github.com/fgrehm/vagrant-pristine.git
|
15
|
-
revision:
|
15
|
+
revision: 503dbc47848c81d0fbfa6840491856f518d244a1
|
16
16
|
specs:
|
17
17
|
vagrant-pristine (0.3.0)
|
18
18
|
|
19
19
|
GIT
|
20
20
|
remote: git://github.com/mitchellh/vagrant.git
|
21
|
-
revision:
|
21
|
+
revision: 4f0eb9504cc786d5a57a43814427e8eb35407a4c
|
22
|
+
tag: v1.4.3
|
22
23
|
specs:
|
23
|
-
vagrant (1.3
|
24
|
+
vagrant (1.4.3)
|
24
25
|
childprocess (~> 0.3.7)
|
25
26
|
erubis (~> 2.7.0)
|
26
27
|
i18n (~> 0.6.0)
|
27
28
|
log4r (~> 1.1.9)
|
28
29
|
net-scp (~> 1.1.0)
|
29
|
-
net-ssh (
|
30
|
+
net-ssh (>= 2.6.6, < 2.8.0)
|
30
31
|
|
31
32
|
PATH
|
32
33
|
remote: .
|
33
34
|
specs:
|
34
|
-
vagrant-cachier (0.
|
35
|
+
vagrant-cachier (0.6.0)
|
35
36
|
|
36
37
|
GEM
|
37
38
|
remote: https://rubygems.org/
|
38
39
|
specs:
|
39
40
|
archive-tar-minitar (0.5.2)
|
40
|
-
chef (11.
|
41
|
-
|
42
|
-
|
41
|
+
chef (11.8.2)
|
42
|
+
chef-zero (~> 1.6, >= 1.6.2)
|
43
|
+
diff-lcs (~> 1.2, >= 1.2.4)
|
44
|
+
erubis (~> 2.7)
|
45
|
+
highline (~> 1.6, >= 1.6.9)
|
43
46
|
json (>= 1.4.4, <= 1.7.7)
|
44
|
-
|
45
|
-
mixlib-
|
46
|
-
mixlib-
|
47
|
-
mixlib-
|
48
|
-
mixlib-
|
47
|
+
mime-types (~> 1.16)
|
48
|
+
mixlib-authentication (~> 1.3)
|
49
|
+
mixlib-cli (~> 1.3)
|
50
|
+
mixlib-config (~> 2.0)
|
51
|
+
mixlib-log (~> 1.3)
|
52
|
+
mixlib-shellout (~> 1.2)
|
49
53
|
net-ssh (~> 2.6)
|
50
54
|
net-ssh-multi (~> 1.1.0)
|
51
|
-
ohai (
|
55
|
+
ohai (~> 6.0)
|
56
|
+
pry (~> 0.9)
|
57
|
+
puma (~> 1.6)
|
52
58
|
rest-client (>= 1.0.4, < 1.7.0)
|
53
59
|
yajl-ruby (~> 1.1)
|
60
|
+
chef-zero (1.7.2)
|
61
|
+
hashie (~> 2.0)
|
62
|
+
json
|
63
|
+
mixlib-log (~> 1.3)
|
64
|
+
moneta (< 0.7.0)
|
65
|
+
rack
|
54
66
|
childprocess (0.3.9)
|
55
67
|
ffi (~> 1.0, >= 1.0.11)
|
68
|
+
coderay (1.1.0)
|
69
|
+
diff-lcs (1.2.5)
|
56
70
|
erubis (2.7.0)
|
57
|
-
ffi (1.9.
|
58
|
-
|
59
|
-
|
71
|
+
ffi (1.9.3)
|
72
|
+
hashie (2.0.5)
|
73
|
+
highline (1.6.20)
|
74
|
+
i18n (0.6.9)
|
60
75
|
ipaddress (0.8.0)
|
61
76
|
json (1.7.7)
|
62
|
-
librarian (0.1.
|
77
|
+
librarian (0.1.1)
|
63
78
|
highline
|
64
79
|
thor (~> 0.15)
|
65
|
-
librarian-chef (0.0.
|
80
|
+
librarian-chef (0.0.2)
|
66
81
|
archive-tar-minitar (>= 0.5.2)
|
67
82
|
chef (>= 0.10)
|
68
83
|
librarian (~> 0.1.0)
|
69
84
|
log4r (1.1.10)
|
70
|
-
|
85
|
+
method_source (0.8.2)
|
86
|
+
mime-types (1.25.1)
|
71
87
|
mixlib-authentication (1.3.0)
|
72
88
|
mixlib-log
|
73
|
-
mixlib-cli (1.
|
74
|
-
mixlib-config (
|
89
|
+
mixlib-cli (1.4.0)
|
90
|
+
mixlib-config (2.1.0)
|
75
91
|
mixlib-log (1.6.0)
|
76
|
-
mixlib-shellout (1.
|
92
|
+
mixlib-shellout (1.3.0)
|
93
|
+
moneta (0.6.0)
|
77
94
|
net-scp (1.1.2)
|
78
95
|
net-ssh (>= 2.6.5)
|
79
|
-
net-ssh (2.
|
96
|
+
net-ssh (2.7.0)
|
80
97
|
net-ssh-gateway (1.2.0)
|
81
98
|
net-ssh (>= 2.6.5)
|
82
99
|
net-ssh-multi (1.1)
|
83
100
|
net-ssh (>= 2.1.4)
|
84
101
|
net-ssh-gateway (>= 0.99.0)
|
85
|
-
ohai (6.
|
102
|
+
ohai (6.20.0)
|
86
103
|
ipaddress
|
87
104
|
mixlib-cli
|
88
105
|
mixlib-config
|
89
106
|
mixlib-log
|
90
107
|
mixlib-shellout
|
91
|
-
systemu
|
108
|
+
systemu (~> 2.5.2)
|
92
109
|
yajl-ruby
|
93
|
-
|
110
|
+
pry (0.9.12.4)
|
111
|
+
coderay (~> 1.0)
|
112
|
+
method_source (~> 0.8)
|
113
|
+
slop (~> 3.4)
|
114
|
+
puma (1.6.3)
|
115
|
+
rack (~> 1.2)
|
116
|
+
rack (1.5.2)
|
117
|
+
rake (10.1.1)
|
94
118
|
rest-client (1.6.7)
|
95
119
|
mime-types (>= 1.16)
|
120
|
+
slop (3.4.7)
|
96
121
|
systemu (2.5.2)
|
97
122
|
thor (0.18.1)
|
98
|
-
vagrant-librarian-chef (0.1.
|
123
|
+
vagrant-librarian-chef (0.1.4)
|
99
124
|
librarian-chef
|
100
|
-
vagrant-omnibus (1.1
|
101
|
-
yajl-ruby (1.
|
125
|
+
vagrant-omnibus (1.2.1)
|
126
|
+
yajl-ruby (1.2.0)
|
102
127
|
|
103
128
|
PLATFORMS
|
104
129
|
ruby
|
data/LICENSE.txt
CHANGED
data/README.md
CHANGED
@@ -1,5 +1,7 @@
|
|
1
1
|
# vagrant-cachier
|
2
2
|
|
3
|
+
[](http://badge.fury.io/rb/vagrant-cachier) [](https://www.gittip.com/fgrehm/)
|
4
|
+
|
3
5
|
A [Vagrant](http://www.vagrantup.com/) plugin that helps you reduce the amount of
|
4
6
|
coffee you drink while waiting for boxes to be provisioned by sharing a common
|
5
7
|
package cache among similiar VM instances. Kinda like [vagrant-apt_cache](https://github.com/avit/vagrant-apt_cache)
|
@@ -9,7 +11,7 @@ multiple package managers and Linux distros.
|
|
9
11
|
|
10
12
|
## Installation
|
11
13
|
|
12
|
-
Make sure you have Vagrant 1.
|
14
|
+
Make sure you have Vagrant 1.4+ and run:
|
13
15
|
|
14
16
|
```
|
15
17
|
vagrant plugin install vagrant-cachier
|
@@ -17,15 +19,27 @@ vagrant plugin install vagrant-cachier
|
|
17
19
|
|
18
20
|
## Quick start
|
19
21
|
|
20
|
-
The easiest way to set things up is just to enable [cache buckets auto detection](http://fgrehm.viewdocs.io/vagrant-cachier/usage)
|
21
|
-
from within your `Vagrantfile`:
|
22
|
-
|
23
22
|
```ruby
|
24
23
|
Vagrant.configure("2") do |config|
|
25
24
|
config.vm.box = 'your-box'
|
26
|
-
|
27
|
-
|
28
|
-
|
25
|
+
if Vagrant.has_plugin?("vagrant-cachier")
|
26
|
+
# Configure cached packages to be shared between instances of the same base box.
|
27
|
+
# More info on http://fgrehm.viewdocs.io/vagrant-cachier/usage
|
28
|
+
config.cache.scope = :box
|
29
|
+
|
30
|
+
# If you are using VirtualBox, you might want to use that to enable NFS for
|
31
|
+
# shared folders. This is also very useful for vagrant-libvirt if you want
|
32
|
+
# bi-directional sync
|
33
|
+
config.cache.synced_folder_opts = {
|
34
|
+
type: :nfs,
|
35
|
+
# The nolock option can be useful for an NFSv3 client that wants to avoid the
|
36
|
+
# NLM sideband protocol. Without this option, apt-get might hang if it tries
|
37
|
+
# to lock files needed for /var/cache/* operations. All of this can be avoided
|
38
|
+
# by using NFSv4 everywhere. Please note that the tcp option is not the default.
|
39
|
+
mount_options: ['rw', 'vers=3', 'tcp', 'nolock']
|
40
|
+
}
|
41
|
+
# For more information please check http://docs.vagrantup.com/v2/synced-folders/basic_usage.html
|
42
|
+
end
|
29
43
|
end
|
30
44
|
```
|
31
45
|
|
@@ -33,12 +47,17 @@ For more information please read the documentation available at
|
|
33
47
|
http://fgrehm.viewdocs.io/vagrant-cachier.
|
34
48
|
|
35
49
|
|
36
|
-
##
|
50
|
+
## Providers that are known to work
|
37
51
|
|
38
52
|
* Vagrant's built in VirtualBox provider
|
39
53
|
* [vagrant-lxc](https://github.com/fgrehm/vagrant-lxc)
|
40
54
|
* [VMware providers](http://www.vagrantup.com/vmware) with NFS enabled (See
|
41
55
|
[GH-24](https://github.com/fgrehm/vagrant-cachier/issues/24) for more info)
|
56
|
+
* [docker-provider](https://github.com/fgrehm/docker-provider)
|
57
|
+
* _[Let me know if it is compatible with other providers!](https://github.com/fgrehm/vagrant-cachier/issues/new)_
|
58
|
+
|
59
|
+
_Please note that as of v0.6.0 the plugin will automatically disable any
|
60
|
+
previously defined configs for [cloud providers](lib/vagrant-cachier/plugin.rb#L19-22)_
|
42
61
|
|
43
62
|
|
44
63
|
## Contributing
|
@@ -48,5 +67,3 @@ http://fgrehm.viewdocs.io/vagrant-cachier.
|
|
48
67
|
3. Commit your changes (`git commit -am 'Add some feature'`)
|
49
68
|
4. Push to the branch (`git push origin my-new-feature`)
|
50
69
|
5. Create new Pull Request
|
51
|
-
|
52
|
-
[](https://bitdeli.com/free "Bitdeli Badge")
|
data/development/Cheffile.lock
CHANGED
data/development/Vagrantfile
CHANGED
@@ -12,116 +12,126 @@ Vagrant.configure("2") do |config|
|
|
12
12
|
|
13
13
|
config.cache.scope = :machine
|
14
14
|
config.cache.auto_detect = true
|
15
|
-
config.cache.
|
16
|
-
|
17
|
-
config.omnibus.chef_version = :latest
|
18
|
-
config.vm.provision :chef_solo do |chef|
|
19
|
-
chef.add_recipe "java::oracle"
|
20
|
-
chef.json = {
|
21
|
-
:java => {
|
22
|
-
:oracle => {
|
23
|
-
:accept_oracle_download_terms => true
|
24
|
-
}
|
25
|
-
}
|
26
|
-
}
|
27
|
-
end
|
15
|
+
config.cache.synced_folder_opts = { type: :nfs }
|
28
16
|
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
HOME=/home/vagrant su -p vagrant -l -c "curl -L https://get.rvm.io | bash -s stable"
|
33
|
-
fi
|
34
|
-
'
|
35
|
-
|
36
|
-
# Here we have the RVM cache bucket configured, so we install 2.0.0
|
37
|
-
config.vm.provision :shell, inline: '
|
38
|
-
if ! [ -d /home/vagrant/.rvm/rubies/ruby-1.9.3* ]; then
|
39
|
-
HOME=/home/vagrant su -p vagrant -l -c "rvm install 1.9.3 && rvm use 1.9.3 --default"
|
40
|
-
fi
|
41
|
-
'
|
42
|
-
|
43
|
-
config.vm.provision :shell, inline: '
|
44
|
-
if ! [ -d /home/vagrant/.nvm ]; then
|
45
|
-
apt-get install git -y
|
46
|
-
HOME=/home/vagrant su -p vagrant -l -c "
|
47
|
-
curl https://raw.github.com/creationix/nvm/master/install.sh | sh
|
48
|
-
"
|
49
|
-
fi
|
50
|
-
'
|
51
|
-
|
52
|
-
config.vm.provision :shell, inline: '
|
53
|
-
if ! [ -d /home/vagrant/.nvm/v0.10* ]; then
|
54
|
-
HOME=/home/vagrant su -p vagrant -l -c "
|
55
|
-
nvm install 0.10
|
56
|
-
nvm alias default 0.10
|
57
|
-
"
|
58
|
-
fi
|
59
|
-
'
|
17
|
+
config.vm.provider :virtualbox do |vb|
|
18
|
+
vb.customize [ "modifyvm", :id, "--memory", 256, "--cpus", "1" ]
|
19
|
+
end
|
60
20
|
|
61
21
|
configure_private_network = lambda do |node, suffix|
|
62
22
|
node.vm.network :private_network, ip: "192.168.50.#{suffix}"
|
63
23
|
end
|
64
24
|
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
25
|
+
initial_debian_setup = lambda do |debian, git_pkg = 'git'|
|
26
|
+
debian.vm.provision :shell, inline: "apt-get update && apt-get install -y #{git_pkg} php5-cli curl wget htop"
|
27
|
+
end
|
28
|
+
|
29
|
+
install_nvm_and_rvm = lambda do |node|
|
30
|
+
# Installs RVM
|
31
|
+
node.vm.provision :shell, inline: '
|
32
|
+
if ! [ -d /home/vagrant/.rvm ]; then
|
33
|
+
HOME=/home/vagrant su -p vagrant -l -c "curl -L https://get.rvm.io | bash -s stable"
|
34
|
+
fi
|
35
|
+
'
|
36
|
+
|
37
|
+
# Here we have the RVM cache bucket configured, so we install 2.0.0
|
38
|
+
node.vm.provision :shell, inline: '
|
39
|
+
if ! [ -d /home/vagrant/.rvm/rubies/ruby-2.0.0* ]; then
|
40
|
+
HOME=/home/vagrant su -p vagrant -l -c "rvm install 2.0.0 && rvm use 2.0.0 --default"
|
41
|
+
fi
|
42
|
+
'
|
43
|
+
|
44
|
+
node.vm.provision :shell, inline: '
|
45
|
+
if ! [ -d /home/vagrant/.nvm ]; then
|
46
|
+
apt-get install git -y
|
47
|
+
HOME=/home/vagrant su -p vagrant -l -c "
|
48
|
+
curl https://raw.github.com/creationix/nvm/master/install.sh | sh
|
49
|
+
"
|
50
|
+
fi
|
51
|
+
'
|
52
|
+
|
53
|
+
node.vm.provision :shell, inline: '
|
54
|
+
if ! [ -d /home/vagrant/.nvm/v0.10* ]; then
|
55
|
+
HOME=/home/vagrant su -p vagrant -l -c "
|
56
|
+
nvm install 0.10
|
57
|
+
nvm alias default 0.10
|
58
|
+
"
|
59
|
+
fi
|
71
60
|
'
|
72
61
|
end
|
73
62
|
|
74
63
|
config.vm.define :ubuntu do |ubuntu|
|
75
64
|
ubuntu.vm.box = "quantal64"
|
76
|
-
debian_like_configs.call ubuntu
|
77
65
|
configure_private_network.call ubuntu, 10
|
66
|
+
|
67
|
+
initial_debian_setup.call(ubuntu)
|
68
|
+
install_nvm_and_rvm.call(ubuntu)
|
69
|
+
|
70
|
+
ubuntu.omnibus.chef_version = :latest
|
71
|
+
ubuntu.vm.provision :chef_solo do |chef|
|
72
|
+
chef.add_recipe "java::oracle"
|
73
|
+
chef.json = {
|
74
|
+
:java => {
|
75
|
+
:oracle => {
|
76
|
+
:accept_oracle_download_terms => true
|
77
|
+
}
|
78
|
+
}
|
79
|
+
}
|
80
|
+
end
|
78
81
|
end
|
79
82
|
|
80
83
|
config.vm.define :lucid do |lucid|
|
81
84
|
lucid.vm.box = "lucid64"
|
82
|
-
|
85
|
+
# Disable NFS
|
86
|
+
lucid.cache.synced_folder_opts = { }
|
83
87
|
configure_private_network.call lucid, 11
|
88
|
+
|
89
|
+
initial_debian_setup.call(lucid, 'git-core')
|
90
|
+
install_nvm_and_rvm.call(lucid)
|
84
91
|
end
|
85
92
|
|
86
93
|
config.vm.define :debian do |debian|
|
87
94
|
debian.vm.box = "squeeze64"
|
88
95
|
debian.vm.box_url = 'http://f.willianfernandes.com.br/vagrant-boxes/DebianSqueeze64.box'
|
89
|
-
debian_like_configs.call debian
|
90
96
|
configure_private_network.call debian, 12
|
97
|
+
|
98
|
+
initial_debian_setup.call(debian)
|
99
|
+
install_nvm_and_rvm.call(debian)
|
91
100
|
end
|
92
101
|
|
93
102
|
config.vm.define :centos do |centos|
|
94
103
|
centos.vm.box = 'centos6_64'
|
95
104
|
centos.vm.box_url = 'http://developer.nrel.gov/downloads/vagrant-boxes/CentOS-6.4-x86_64-v20130309.box'
|
96
105
|
configure_private_network.call centos, 13
|
97
|
-
|
98
|
-
# bundle the project
|
106
|
+
|
99
107
|
centos.vm.provision :shell, inline: '
|
100
|
-
|
101
|
-
|
108
|
+
(
|
109
|
+
mkdir -p /tmp/epel
|
110
|
+
cd /tmp/epel
|
111
|
+
wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
|
112
|
+
wget http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
|
113
|
+
sudo rpm -Uvh remi-release-6*.rpm epel-release-6*.rpm
|
114
|
+
)
|
115
|
+
yum install -y libffi-devel ruby-devel git
|
116
|
+
'
|
117
|
+
centos.vm.provision :shell, inline: 'gem install bundler'
|
102
118
|
end
|
103
119
|
|
104
120
|
config.vm.define :arch do |arch|
|
105
121
|
arch.vm.box = 'arch64'
|
106
|
-
arch.vm.box_url = '
|
107
|
-
|
108
|
-
arch.
|
109
|
-
|
110
|
-
|
122
|
+
arch.vm.box_url = 'https://dl.dropboxusercontent.com/u/6750592/Arch_Linux_2013.11_x64.box'
|
123
|
+
# Disable NFS
|
124
|
+
arch.cache.synced_folder_opts = { }
|
125
|
+
|
126
|
+
arch.vm.provision :shell, inline: 'pacman -Syu --noconfirm libffi git ruby && gem install bundler'
|
111
127
|
end
|
112
128
|
|
113
|
-
# Please note that we are not able to install chef on the VM, so when bringing
|
114
|
-
# this up we should always pass in `--provision-with=shell`
|
115
|
-
#
|
116
|
-
# TODO: Find out how to install chef on this or other box or find one that has
|
117
|
-
# it pre installed
|
118
129
|
config.vm.define :opensuse do |suse|
|
119
130
|
suse.vm.box = 'opensuse-12'
|
120
131
|
suse.vm.box_url = 'http://sourceforge.net/projects/opensusevagrant/files/12.3/opensuse-12.3-64.box/download'
|
121
|
-
|
122
|
-
suse.cache.
|
123
|
-
|
124
|
-
suse.omnibus.chef_version = nil
|
132
|
+
# Disable NFS
|
133
|
+
suse.cache.synced_folder_opts = { }
|
134
|
+
|
125
135
|
suse.vm.provision :shell, inline: 'time zypper install -y git'
|
126
136
|
end
|
127
137
|
end
|