kitchen-puppet 0.0.22 → 0.0.23
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.
@@ -127,6 +127,8 @@ module Kitchen
|
|
127
127
|
provisioner.calculate_path('hiera_keys')
|
128
128
|
end
|
129
129
|
|
130
|
+
default_config :hiera_deep_merge, false
|
131
|
+
|
130
132
|
def calculate_path(path, type = :directory)
|
131
133
|
base = config[:test_base_path]
|
132
134
|
candidates = []
|
@@ -159,6 +161,7 @@ module Kitchen
|
|
159
161
|
do_download #{config[:puppet_omnibus_url]} /tmp/puppet_install.sh
|
160
162
|
#{sudo('sh')} /tmp/puppet_install.sh #{version}
|
161
163
|
fi
|
164
|
+
#{install_deep_merge}
|
162
165
|
#{install_busser}
|
163
166
|
INSTALL
|
164
167
|
else
|
@@ -173,6 +176,8 @@ module Kitchen
|
|
173
176
|
#{sudo_env('apt-get')} -y install puppet-common#{puppet_debian_version}
|
174
177
|
#{sudo_env('apt-get')} -y install puppet#{puppet_debian_version}
|
175
178
|
fi
|
179
|
+
#{install_eyaml}
|
180
|
+
#{install_deep_merge}
|
176
181
|
#{install_busser}
|
177
182
|
INSTALL
|
178
183
|
when 'redhat', 'centos', 'fedora', 'oracle', 'amazon'
|
@@ -183,6 +188,8 @@ module Kitchen
|
|
183
188
|
#{update_packages_redhat_cmd}
|
184
189
|
#{sudo_env('yum')} -y install puppet#{puppet_redhat_version}
|
185
190
|
fi
|
191
|
+
#{install_eyaml}
|
192
|
+
#{install_deep_merge}
|
186
193
|
#{install_busser}
|
187
194
|
INSTALL
|
188
195
|
else
|
@@ -208,19 +215,30 @@ module Kitchen
|
|
208
215
|
fi
|
209
216
|
fi
|
210
217
|
#{install_eyaml}
|
218
|
+
#{install_deep_merge}
|
211
219
|
#{install_busser}
|
212
220
|
INSTALL
|
213
221
|
end
|
214
222
|
end
|
215
223
|
end
|
216
224
|
# rubocop:enable Metrics/CyclomaticComplexity, Metrics/PerceivedComplexity
|
225
|
+
def install_deep_merge
|
226
|
+
return unless config[:hiera_deep_merge]
|
227
|
+
<<-INSTALL
|
228
|
+
# Support for hash merge lookups to recursively merge hash keys
|
229
|
+
if [[ $(#{sudo('gem')} list deep_merge -i) == 'false' ]]; then
|
230
|
+
echo '-----> Installing deep_merge to provide deep_merge of hiera hashes'
|
231
|
+
#{sudo('gem')} install #{gem_proxy_parm} --no-ri --no-rdoc deep_merge
|
232
|
+
fi
|
233
|
+
INSTALL
|
234
|
+
end
|
217
235
|
|
218
236
|
def install_eyaml
|
219
237
|
return unless config[:hiera_eyaml]
|
220
238
|
<<-INSTALL
|
221
239
|
# A backend for Hiera that provides per-value asymmetric encryption of sensitive data
|
222
240
|
if [[ $(#{sudo('gem')} list hiera-eyaml -i) == 'false' ]]; then
|
223
|
-
echo
|
241
|
+
echo '-----> Installing hiera-eyaml to provide encryption of hiera data'
|
224
242
|
#{sudo('gem')} install #{gem_proxy_parm} --no-ri --no-rdoc hiera-eyaml
|
225
243
|
fi
|
226
244
|
INSTALL
|
@@ -236,7 +254,7 @@ module Kitchen
|
|
236
254
|
# whole chef client
|
237
255
|
if [ ! -d "/opt/chef" ]
|
238
256
|
then
|
239
|
-
echo
|
257
|
+
echo '-----> Installing Chef Omnibus to install busser to run tests'
|
240
258
|
do_download #{chef_url} /tmp/install.sh
|
241
259
|
#{sudo('sh')} /tmp/install.sh
|
242
260
|
fi
|
@@ -433,6 +451,10 @@ module Kitchen
|
|
433
451
|
config[:hiera_eyaml_key_remote_path]
|
434
452
|
end
|
435
453
|
|
454
|
+
def hiera_deep_merge
|
455
|
+
config[:hiera_deep_merge]
|
456
|
+
end
|
457
|
+
|
436
458
|
def librarian_puppet_ssl_file
|
437
459
|
config[:librarian_puppet_ssl_file]
|
438
460
|
end
|
data/provisioner_options.md
CHANGED
@@ -38,6 +38,7 @@ remove_puppet_repo | false | remove copy of puppet repository and puppet configu
|
|
38
38
|
hiera_eyaml | false | use hiera-eyaml to encrypt hiera data
|
39
39
|
hiera_eyaml_key_remote_path | "/etc/puppet/secure/keys" | directory of hiera-eyaml keys on server
|
40
40
|
hiera_eyaml_key_path | "hiera_keys" | directory of hiera-eyaml keys on workstation
|
41
|
+
hiera_deep_merge | false | install the deep_merge gem to support hiera deep merge mode
|
41
42
|
facter_file | nil | yaml file of custom facter_files to be provided to the puppet-apply command
|
42
43
|
http_proxy | nil | use http proxy when installing puppet and packages
|
43
44
|
puppet_logdest | nil | _Array_ of log destinations. Include 'console' if wanted
|
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.23
|
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: 2015-02-
|
12
|
+
date: 2015-02-25 00:00:00.000000000 Z
|
13
13
|
dependencies: []
|
14
14
|
description: ! '== DESCRIPTION:
|
15
15
|
|