kitchen-puppet 0.0.8 → 0.0.9
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.
@@ -55,6 +55,10 @@ module Kitchen
|
|
55
55
|
raise 'No modules_path detected. Please specify one in .kitchen.yml'
|
56
56
|
end
|
57
57
|
|
58
|
+
default_config :files_path do |provisioner|
|
59
|
+
provisioner.calculate_path('files')
|
60
|
+
end
|
61
|
+
|
58
62
|
default_config :hiera_data_path do |provisioner|
|
59
63
|
provisioner.calculate_path('hiera')
|
60
64
|
end
|
@@ -63,6 +67,10 @@ module Kitchen
|
|
63
67
|
provisioner.calculate_path('hiera.yaml', :file)
|
64
68
|
end
|
65
69
|
|
70
|
+
default_config :fileserver_config_path do |provisioner|
|
71
|
+
provisioner.calculate_path('fileserver.conf', :file)
|
72
|
+
end
|
73
|
+
|
66
74
|
default_config :puppetfile_path do |provisioner|
|
67
75
|
provisioner.calculate_path('Puppetfile', :file)
|
68
76
|
end
|
@@ -163,9 +171,9 @@ module Kitchen
|
|
163
171
|
end
|
164
172
|
|
165
173
|
def init_command
|
166
|
-
dirs = %w{modules manifests hiera hiera.yaml}.
|
174
|
+
dirs = %w{modules manifests files hiera hiera.yaml}.
|
167
175
|
map { |dir| File.join(config[:root_path], dir) }.join(" ")
|
168
|
-
cmd = "#{sudo('rm')} -rf #{dirs} #{hiera_data_remote_path} /etc/hiera.yaml /etc/puppet/hiera.yaml;"
|
176
|
+
cmd = "#{sudo('rm')} -rf #{dirs} #{hiera_data_remote_path} /etc/hiera.yaml /etc/puppet/hiera.yaml /etc/puppet/fileserver.conf;"
|
169
177
|
cmd = cmd+" mkdir -p #{config[:root_path]}"
|
170
178
|
debug(cmd)
|
171
179
|
cmd
|
@@ -179,7 +187,9 @@ module Kitchen
|
|
179
187
|
|
180
188
|
prepare_modules
|
181
189
|
prepare_manifests
|
190
|
+
prepare_files
|
182
191
|
prepare_hiera_config
|
192
|
+
prepare_fileserver_config
|
183
193
|
prepare_hiera_data
|
184
194
|
info('Finished Preparing files for transfer')
|
185
195
|
|
@@ -204,6 +214,14 @@ module Kitchen
|
|
204
214
|
].join(' ')
|
205
215
|
end
|
206
216
|
|
217
|
+
if fileserver_config
|
218
|
+
commands << [
|
219
|
+
sudo('cp'),
|
220
|
+
File.join(config[:root_path], 'fileserver.conf'),
|
221
|
+
'/etc/puppet',
|
222
|
+
].join(' ')
|
223
|
+
end
|
224
|
+
|
207
225
|
if hiera_data and hiera_data_remote_path == '/var/lib/hiera'
|
208
226
|
commands << [
|
209
227
|
sudo('cp -r'), File.join(config[:root_path], 'hiera'), '/var/lib/'
|
@@ -232,6 +250,7 @@ module Kitchen
|
|
232
250
|
File.join(config[:root_path], 'manifests', manifest),
|
233
251
|
"--modulepath=#{File.join(config[:root_path], 'modules')}",
|
234
252
|
"--manifestdir=#{File.join(config[:root_path], 'manifests')}",
|
253
|
+
"--fileserverconfig=#{File.join(config[:root_path], 'fileserver.conf')}",
|
235
254
|
puppet_noop_flag,
|
236
255
|
puppet_verbose_flag,
|
237
256
|
puppet_debug_flag,
|
@@ -267,10 +286,18 @@ module Kitchen
|
|
267
286
|
config[:modules_path]
|
268
287
|
end
|
269
288
|
|
289
|
+
def files
|
290
|
+
config[:files_path]
|
291
|
+
end
|
292
|
+
|
270
293
|
def hiera_config
|
271
294
|
config[:hiera_config_path]
|
272
295
|
end
|
273
296
|
|
297
|
+
def fileserver_config
|
298
|
+
config[:fileserver_config_path]
|
299
|
+
end
|
300
|
+
|
274
301
|
def hiera_data
|
275
302
|
config[:hiera_data_path]
|
276
303
|
end
|
@@ -344,6 +371,15 @@ module Kitchen
|
|
344
371
|
FileUtils.cp_r(Dir.glob("#{manifests}/*"), tmp_manifests_dir)
|
345
372
|
end
|
346
373
|
|
374
|
+
def prepare_files
|
375
|
+
info('Preparing files')
|
376
|
+
debug("Using files from #{files}")
|
377
|
+
|
378
|
+
tmp_files_dir = File.join(sandbox_path, 'files')
|
379
|
+
FileUtils.mkdir_p(tmp_files_dir)
|
380
|
+
FileUtils.cp_r(Dir.glob("#{files}/*"), tmp_files_dir)
|
381
|
+
end
|
382
|
+
|
347
383
|
def prepare_modules
|
348
384
|
info('Preparing modules')
|
349
385
|
if File.exists?(puppetfile)
|
@@ -366,6 +402,15 @@ module Kitchen
|
|
366
402
|
FileUtils.cp_r(hiera_config, File.join(sandbox_path, 'hiera.yaml'))
|
367
403
|
end
|
368
404
|
|
405
|
+
def prepare_fileserver_config
|
406
|
+
return unless fileserver_config
|
407
|
+
|
408
|
+
info('Preparing fileserver')
|
409
|
+
debug("Using fileserver config from #{fileserver_config}")
|
410
|
+
|
411
|
+
FileUtils.cp_r(fileserver_config, File.join(sandbox_path, 'fileserver.conf'))
|
412
|
+
end
|
413
|
+
|
369
414
|
def prepare_hiera_data
|
370
415
|
return unless hiera_data
|
371
416
|
info('Preparing hiera data')
|
data/provisioner_options.md
CHANGED
@@ -14,6 +14,8 @@ puppet_omnibus_remote_path | "/opt/puppet" | Server Installation location of an
|
|
14
14
|
manifests_path | | puppet repo manifests directory
|
15
15
|
manifest | 'site.pp' | manifest for puppet apply to run
|
16
16
|
modules_path | | puppet repo manifests directory
|
17
|
+
files_path | | directory to place at /tmp/kitchen/files
|
18
|
+
fileserver_config_path | | file to place fileserver.conf
|
17
19
|
hiera_data_path | | puppet repo hiera data directory
|
18
20
|
hiera_data_remote_path | "/var/lib/hiera" | Hiera data directory on server
|
19
21
|
puppet_debug| false| Enable full debugging logging
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: kitchen-puppet
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.9
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2014-05-
|
12
|
+
date: 2014-05-14 00:00:00.000000000 Z
|
13
13
|
dependencies: []
|
14
14
|
description: ! '== DESCRIPTION:
|
15
15
|
|