vagrant-flow 1.0.14 → 1.0.15
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
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 7b20ef24ebbdf159fc7d1e1569a191935b45ae5e
|
|
4
|
+
data.tar.gz: e540c87586b2984b4ea63f58fd21e7c13e27172a
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 9644ad9aa6c184bb2b923dbfd4aa7f6fde14ee860b02e9ea40d461086ef4f7af7e8d73e5aca9a88a68c4ebcc7b5fd894c81f6acd5d36acf9098b96ddad9c7fd7
|
|
7
|
+
data.tar.gz: ea7b51750ba3ddd471c5cb2c2bc060dd5afa5fe1c711291fa1a5a2eb1391eee6c0a59ea9db95a5f90ba8a888bc552ed08ef5cd6dce687af6445cebc4c9e5e5b5
|
data/README.md
CHANGED
|
@@ -125,8 +125,9 @@ Example multiinitconfig.yml file (for use with no optional command line argument
|
|
|
125
125
|
---
|
|
126
126
|
:intnetName: neverwinterDP
|
|
127
127
|
machines:
|
|
128
|
+
#This will use all defaults and create a guest named machine1
|
|
128
129
|
- name: machine1
|
|
129
|
-
|
|
130
|
+
#Create another machine, but specify which .box to use with virtual box
|
|
130
131
|
- name: server1
|
|
131
132
|
url: demandcube/centos-64_x86_64-VB-4.3.8
|
|
132
133
|
- name: jenkinstestmachine
|
|
@@ -137,21 +138,35 @@ machines:
|
|
|
137
138
|
Example multiinitconfig.yml file for use with virtualbox and digitalocean providers. All the extra parameters are required to make digitalocean work.
|
|
138
139
|
```
|
|
139
140
|
---
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
:
|
|
143
|
-
|
|
141
|
+
#Where your ssh private key lives (for use with digital ocean)
|
|
142
|
+
#~/.ssh/id_rsa is the default, so you can omit this value if you want
|
|
143
|
+
:sshPrivateKeyPath: ~/.ssh/id_rsa
|
|
144
|
+
|
|
145
|
+
#These two keys (digitalOceanApiKey and digitalOceanClientId) must be set for digitalocean to work
|
|
146
|
+
#Omit them if you don't want digitalocean as a provider option in your vagrantfile
|
|
147
|
+
:digitalOceanApiKey: 782a1d830f62e57d985eb7b1c938f94f
|
|
148
|
+
:digitalOceanClientId: ae856c82c79398598838f3f93b7a7d5e
|
|
149
|
+
|
|
144
150
|
:intnetName: neverwinterDP
|
|
145
151
|
machines:
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
152
|
+
#Create a box with all defaults set for you
|
|
153
|
+
- name: fulldefaults
|
|
154
|
+
|
|
155
|
+
#Use a custom url for your virtual box image
|
|
156
|
+
- name: customvboxurl
|
|
157
|
+
url: demandcube/centos-64_x86_64-VB-4.3.8
|
|
158
|
+
|
|
159
|
+
#Set custom config for digitalocean
|
|
160
|
+
- name: digitaloceancustom
|
|
161
|
+
digitalOceanRegion: New York 2
|
|
162
|
+
digitalOceanImage: Debian 7.0 x64
|
|
163
|
+
|
|
164
|
+
#Set custom config for vbox and digitaloceanprovider
|
|
165
|
+
- name: digitaloceanvboxcustom
|
|
166
|
+
url: demandcube/centos-64_x86_64-VB-4.3.8
|
|
167
|
+
digitalOceanRegion: New York 2
|
|
168
|
+
digitalOceanImage: Debian 7.0 x64
|
|
169
|
+
|
|
155
170
|
|
|
156
171
|
```
|
|
157
172
|
|
|
@@ -4,15 +4,20 @@ require 'yaml'
|
|
|
4
4
|
|
|
5
5
|
###This shows how to make a valid configuration file in YAML format for vagrant-flow to consume with the ansible-inventory command
|
|
6
6
|
x = {
|
|
7
|
+
#~/.ssh/id_rsa is also the default
|
|
7
8
|
:sshPrivateKeyPath =>"~/.ssh/id_rsa",
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
9
|
+
|
|
10
|
+
#These two keys must be set for digitalocean to work
|
|
11
|
+
#Omit them if you don't want digitalocean as a provider option in your vagrantfile
|
|
12
|
+
:digitalOceanApiKey => "123456789098765432",
|
|
13
|
+
:digitalOceanClientId => "fytudisughfsdalk",
|
|
14
|
+
|
|
11
15
|
:intnetName=>"neverwinterDP",
|
|
12
16
|
"machines" => [
|
|
13
|
-
{"name"=>"
|
|
14
|
-
{"name"=>"
|
|
15
|
-
{"name"=>"
|
|
17
|
+
{"name"=>"fulldefaults"},
|
|
18
|
+
{"name"=>"customvboxurl", "url"=>"demandcube/centos-64_x86_64-VB-4.3.8",},
|
|
19
|
+
{"name"=> "digitaloceancustom", "digitalOceanRegion" => "New York 2", "digitalOceanImage"=>"Debian 7.0 x64"},
|
|
20
|
+
{"name"=> "digitaloceanvboxcustom", "url"=>"demandcube/centos-64_x86_64-VB-4.3.8", "digitalOceanRegion" => "New York 2", "digitalOceanImage"=>"Debian 7.0 x64" },
|
|
16
21
|
]
|
|
17
22
|
}
|
|
18
23
|
|
|
@@ -26,6 +26,15 @@ module VagrantPlugins
|
|
|
26
26
|
options[:provision_ignore_sentinel] = false
|
|
27
27
|
options[:quiet] = false
|
|
28
28
|
|
|
29
|
+
|
|
30
|
+
#Defaults for machine and configs
|
|
31
|
+
default_sshPrivateKeyPath ="~/.ssh/id_rsa"
|
|
32
|
+
machineDefaults = {
|
|
33
|
+
"url" => "demandcube/centos-65_x86_64-VB-4.3.8",
|
|
34
|
+
"digitalOceanImage" =>"CentOS 6.5 x64",
|
|
35
|
+
"digitalOceanRegion" => "San Francisco 1"
|
|
36
|
+
}
|
|
37
|
+
|
|
29
38
|
#Default virtualbox__intnet name for private network
|
|
30
39
|
options[:vboxintnet] = "neverwinterDP"
|
|
31
40
|
|
|
@@ -128,6 +137,22 @@ module VagrantPlugins
|
|
|
128
137
|
machine["ip"] = ip.to_s
|
|
129
138
|
}
|
|
130
139
|
|
|
140
|
+
#Set default ssh private key (used by digitalocean provider option)
|
|
141
|
+
if not content.has_key?(:sshPrivateKeyPath)
|
|
142
|
+
content[:sshPrivateKeyPath] = default_sshPrivateKeyPath
|
|
143
|
+
end
|
|
144
|
+
|
|
145
|
+
|
|
146
|
+
content["machines"].each {|machine|
|
|
147
|
+
#Set defaults for digital ocean provicder if they're not provided in the config
|
|
148
|
+
machineDefaults.each {|key,val|
|
|
149
|
+
if not machine.has_key?(key)
|
|
150
|
+
machine[key] = val
|
|
151
|
+
end
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
|
|
131
156
|
|
|
132
157
|
#Put Vagrantfile in pwd
|
|
133
158
|
save_path = Pathname.new("Vagrantfile").expand_path(@env.cwd)
|
|
@@ -12,33 +12,35 @@ Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
|
|
|
12
12
|
|
|
13
13
|
<% for machine in @machines %>
|
|
14
14
|
|
|
15
|
-
config.vm.define :<%= machine["name"]%> do | <%= machine["name"]%> |
|
|
15
|
+
config.vm.define :<%= machine["name"]%> do | <%= machine["name"]%> |
|
|
16
|
+
<% if machine.has_key?("name") and machine.has_key?("url") %>
|
|
16
17
|
<%= machine["name"]%>.vm.box = "<%= machine["url"]%>"
|
|
18
|
+
<% end %>
|
|
17
19
|
|
|
18
20
|
# Create a private network
|
|
19
21
|
<%= machine["name"]%>.vm.network :private_network, ip: "<%= machine["ip"]%>", virtualbox__intnet: "<%= @intnetName %>"
|
|
20
22
|
<%= machine["name"]%>.vm.hostname = "<%= machine["name"]%>"
|
|
21
23
|
|
|
24
|
+
<% if machine.has_key?("digitalOceanImage") and machine.has_key?("digitalOceanRegion") and @digitalOceanApiKey and @digitalOceanClientId and @sshPrivateKeyPath %>
|
|
22
25
|
#digitalOcean provider
|
|
23
|
-
<% if machine.has_key?("digitalOceanImage") and @digitalOceanApiKey and @digitalOceanClientId and @sshPrivateKeyPath and @digitalOceanRegion%>
|
|
24
26
|
<%= machine["name"]%>.vm.synced_folder ".", "/vagrant", disabled: true
|
|
25
27
|
config.vm.provider :digital_ocean do |provider, override|
|
|
26
28
|
override.ssh.private_key_path = '<%= @sshPrivateKeyPath %>'
|
|
27
29
|
provider.client_id = '<%= @digitalOceanClientId %>'
|
|
28
30
|
provider.api_key = '<%= @digitalOceanApiKey %>'
|
|
29
|
-
provider.
|
|
30
|
-
provider.region = '<%= @digitalOceanRegion %>'
|
|
31
|
+
provider.region = '<%=machine["digitalOceanRegion"] %>'
|
|
31
32
|
provider.image = '<%= machine["digitalOceanImage"] %>'
|
|
32
33
|
end
|
|
33
34
|
<% end %>
|
|
34
35
|
|
|
35
|
-
|
|
36
|
+
<% if machine.has_key?("name") and machine.has_key?("url") %>
|
|
36
37
|
#VirtualBox provider
|
|
37
38
|
config.vm.provider :virtualbox do |vb|
|
|
38
39
|
vb.name = "<%= machine["name"]%>"
|
|
39
40
|
# vb.customize ["modifyvm", :id, "--memory", "1024"]
|
|
40
41
|
# vb.customize ["modifyvm", :id, "--cpus", "2"]
|
|
41
42
|
end
|
|
43
|
+
<% end %>
|
|
42
44
|
|
|
43
45
|
end
|
|
44
46
|
<% end %>
|
data/lib/vagrant-flow/version.rb
CHANGED