puppet 4.9.2-x86-mingw32 → 4.9.3-x86-mingw32
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of puppet might be problematic. Click here for more details.
- data/lib/hiera/puppet_function.rb +1 -0
- data/lib/puppet/feature/hiera_eyaml.rb +3 -0
- data/lib/puppet/functions/eyaml_lookup_key.rb +73 -0
- data/lib/puppet/pops/lookup/global_data_provider.rb +12 -1
- data/lib/puppet/pops/lookup/hiera_config.rb +6 -4
- data/lib/puppet/pops/lookup/invocation.rb +20 -0
- data/lib/puppet/pops/lookup/location_resolver.rb +2 -2
- data/lib/puppet/pops/lookup/lookup_key_function_provider.rb +46 -10
- data/lib/puppet/provider/package/rpm.rb +1 -1
- data/lib/puppet/version.rb +1 -1
- data/lib/semver.rb +2 -2
- data/spec/unit/functions/hiera_spec.rb +176 -94
- data/spec/unit/functions/lookup_spec.rb +383 -95
- data/spec/unit/provider/package/rpm_spec.rb +2 -1
- data/spec/unit/semver_spec.rb +234 -7
- metadata +4 -2
@@ -7,12 +7,13 @@ describe provider_class do
|
|
7
7
|
|
8
8
|
let (:packages) do
|
9
9
|
<<-RPM_OUTPUT
|
10
|
-
cracklib-dicts 0 2.8.9 3.3 x86_64
|
10
|
+
'cracklib-dicts 0 2.8.9 3.3 x86_64
|
11
11
|
basesystem 0 8.0 5.1.1.el5.centos noarch
|
12
12
|
chkconfig 0 1.3.30.2 2.el5 x86_64
|
13
13
|
myresource 0 1.2.3.4 5.el4 noarch
|
14
14
|
mysummaryless 0 1.2.3.4 5.el4 noarch
|
15
15
|
tomcat 1 1.2.3.4 5.el4 x86_64
|
16
|
+
'
|
16
17
|
RPM_OUTPUT
|
17
18
|
end
|
18
19
|
|
data/spec/unit/semver_spec.rb
CHANGED
@@ -213,18 +213,245 @@ describe SemVer do
|
|
213
213
|
expect(version.special).to eq('-beta6')
|
214
214
|
end
|
215
215
|
|
216
|
-
|
217
|
-
Puppet[:strict] = :off
|
218
|
-
|
219
|
-
|
216
|
+
context 'should not log a deprecation warning when strict == off' do
|
217
|
+
before(:each) { Puppet[:strict] = :off }
|
218
|
+
|
219
|
+
it 'on new instance' do
|
220
|
+
SemVer.new('1.2.3')
|
221
|
+
expect(@logs).to be_empty
|
222
|
+
end
|
223
|
+
|
224
|
+
it 'on exact range' do
|
225
|
+
SemVer['1.2.3']
|
226
|
+
expect(@logs).to be_empty
|
227
|
+
end
|
228
|
+
|
229
|
+
it 'on simple range' do
|
230
|
+
SemVer['1.2.x']
|
231
|
+
expect(@logs).to be_empty
|
232
|
+
end
|
233
|
+
|
234
|
+
it 'on tilde range' do
|
235
|
+
SemVer['~1.2.0']
|
236
|
+
expect(@logs).to be_empty
|
237
|
+
end
|
238
|
+
|
239
|
+
it 'on from-to range' do
|
240
|
+
SemVer['1.2.0-1.3.0']
|
241
|
+
expect(@logs).to be_empty
|
242
|
+
end
|
243
|
+
|
244
|
+
it 'on >= range' do
|
245
|
+
SemVer['>=1.2.0']
|
246
|
+
expect(@logs).to be_empty
|
247
|
+
end
|
248
|
+
|
249
|
+
it 'on <= range' do
|
250
|
+
SemVer['<=1.2.0']
|
251
|
+
expect(@logs).to be_empty
|
252
|
+
end
|
253
|
+
|
254
|
+
it 'on > range' do
|
255
|
+
SemVer['>1.2.0']
|
256
|
+
expect(@logs).to be_empty
|
257
|
+
end
|
258
|
+
|
259
|
+
it 'on > range' do
|
260
|
+
SemVer['<1.2.0']
|
261
|
+
expect(@logs).to be_empty
|
262
|
+
end
|
263
|
+
end
|
264
|
+
|
265
|
+
context 'should log a deprecation warning when strict == warning' do
|
266
|
+
before(:each) { Puppet[:strict] = :warning }
|
267
|
+
|
268
|
+
it 'on new instance' do
|
269
|
+
SemVer.new('1.2.3')
|
270
|
+
expect(@logs.map(&:message)).to include(/Use of class Puppet::SemVer is deprecated. SemanticPuppet::Version or SemanticPuppet::VersionRange should be used instead/)
|
271
|
+
end
|
272
|
+
|
273
|
+
it 'on exact range' do
|
274
|
+
SemVer['1.2.3']
|
275
|
+
expect(@logs.map(&:message)).to include(/Use of class Puppet::SemVer is deprecated. SemanticPuppet::Version or SemanticPuppet::VersionRange should be used instead/)
|
276
|
+
end
|
277
|
+
|
278
|
+
it 'on simple range' do
|
279
|
+
SemVer['1.2.x']
|
280
|
+
expect(@logs.map(&:message)).to include(/Use of class Puppet::SemVer is deprecated. SemanticPuppet::Version or SemanticPuppet::VersionRange should be used instead/)
|
281
|
+
end
|
282
|
+
|
283
|
+
it 'on tilde range' do
|
284
|
+
SemVer['~1.2.0']
|
285
|
+
expect(@logs.map(&:message)).to include(/Use of class Puppet::SemVer is deprecated. SemanticPuppet::Version or SemanticPuppet::VersionRange should be used instead/)
|
286
|
+
end
|
287
|
+
|
288
|
+
it 'on from-to range' do
|
289
|
+
SemVer['1.2.0 - 1.3.0']
|
290
|
+
expect(@logs.map(&:message)).to include(/Use of class Puppet::SemVer is deprecated. SemanticPuppet::Version or SemanticPuppet::VersionRange should be used instead/)
|
291
|
+
end
|
292
|
+
|
293
|
+
it 'on >= range' do
|
294
|
+
SemVer['>=1.2.0']
|
295
|
+
expect(@logs.map(&:message)).to include(/Use of class Puppet::SemVer is deprecated. SemanticPuppet::Version or SemanticPuppet::VersionRange should be used instead/)
|
296
|
+
end
|
297
|
+
|
298
|
+
it 'on <= range' do
|
299
|
+
SemVer['<=1.2.0']
|
300
|
+
expect(@logs.map(&:message)).to include(/Use of class Puppet::SemVer is deprecated. SemanticPuppet::Version or SemanticPuppet::VersionRange should be used instead/)
|
301
|
+
end
|
302
|
+
|
303
|
+
it 'on > range' do
|
304
|
+
SemVer['>1.2.0']
|
305
|
+
expect(@logs.map(&:message)).to include(/Use of class Puppet::SemVer is deprecated. SemanticPuppet::Version or SemanticPuppet::VersionRange should be used instead/)
|
306
|
+
end
|
307
|
+
|
308
|
+
it 'on > range' do
|
309
|
+
SemVer['<1.2.0']
|
310
|
+
expect(@logs.map(&:message)).to include(/Use of class Puppet::SemVer is deprecated. SemanticPuppet::Version or SemanticPuppet::VersionRange should be used instead/)
|
311
|
+
end
|
312
|
+
|
313
|
+
context 'unless suppressed by argument' do
|
314
|
+
it 'on new instance' do
|
315
|
+
SemVer.new('1.2.3', true)
|
316
|
+
expect(@logs).to be_empty
|
317
|
+
end
|
318
|
+
|
319
|
+
it 'on exact range' do
|
320
|
+
SemVer['1.2.3', true]
|
321
|
+
expect(@logs).to be_empty
|
322
|
+
end
|
323
|
+
|
324
|
+
it 'on simple range' do
|
325
|
+
SemVer['1.2.x', true]
|
326
|
+
expect(@logs).to be_empty
|
327
|
+
end
|
328
|
+
|
329
|
+
it 'on tilde range' do
|
330
|
+
SemVer['~1.2.0', true]
|
331
|
+
expect(@logs).to be_empty
|
332
|
+
end
|
333
|
+
|
334
|
+
it 'on from-to range' do
|
335
|
+
SemVer['1.2.0 - 1.3.0', true]
|
336
|
+
expect(@logs).to be_empty
|
337
|
+
end
|
338
|
+
|
339
|
+
it 'on >= range' do
|
340
|
+
SemVer['>=1.2.0', true]
|
341
|
+
expect(@logs).to be_empty
|
342
|
+
end
|
343
|
+
|
344
|
+
it 'on <= range' do
|
345
|
+
SemVer['<=1.2.0', true]
|
346
|
+
expect(@logs).to be_empty
|
347
|
+
end
|
348
|
+
|
349
|
+
it 'on > range' do
|
350
|
+
SemVer['>1.2.0', true]
|
351
|
+
expect(@logs).to be_empty
|
352
|
+
end
|
353
|
+
|
354
|
+
it 'on > range' do
|
355
|
+
SemVer['<1.2.0', true]
|
356
|
+
expect(@logs).to be_empty
|
357
|
+
end
|
358
|
+
end
|
220
359
|
end
|
221
360
|
|
222
|
-
|
223
|
-
(
|
224
|
-
|
361
|
+
context 'should log a deprecation warning when strict == error' do
|
362
|
+
before(:each) { Puppet[:strict] = :error }
|
363
|
+
|
364
|
+
it 'on new instance' do
|
225
365
|
SemVer.new('1.2.3')
|
226
366
|
expect(@logs.map(&:message)).to include(/Use of class Puppet::SemVer is deprecated. SemanticPuppet::Version or SemanticPuppet::VersionRange should be used instead/)
|
227
367
|
end
|
368
|
+
|
369
|
+
it 'on exact range' do
|
370
|
+
SemVer['1.2.3']
|
371
|
+
expect(@logs.map(&:message)).to include(/Use of class Puppet::SemVer is deprecated. SemanticPuppet::Version or SemanticPuppet::VersionRange should be used instead/)
|
372
|
+
end
|
373
|
+
|
374
|
+
it 'on simple range' do
|
375
|
+
SemVer['1.2.x']
|
376
|
+
expect(@logs.map(&:message)).to include(/Use of class Puppet::SemVer is deprecated. SemanticPuppet::Version or SemanticPuppet::VersionRange should be used instead/)
|
377
|
+
end
|
378
|
+
|
379
|
+
it 'on tilde range' do
|
380
|
+
SemVer['~1.2.0']
|
381
|
+
expect(@logs.map(&:message)).to include(/Use of class Puppet::SemVer is deprecated. SemanticPuppet::Version or SemanticPuppet::VersionRange should be used instead/)
|
382
|
+
end
|
383
|
+
|
384
|
+
it 'on from-to range' do
|
385
|
+
SemVer['1.2.0 - 1.3.0']
|
386
|
+
expect(@logs.map(&:message)).to include(/Use of class Puppet::SemVer is deprecated. SemanticPuppet::Version or SemanticPuppet::VersionRange should be used instead/)
|
387
|
+
end
|
388
|
+
|
389
|
+
it 'on >= range' do
|
390
|
+
SemVer['>=1.2.0']
|
391
|
+
expect(@logs.map(&:message)).to include(/Use of class Puppet::SemVer is deprecated. SemanticPuppet::Version or SemanticPuppet::VersionRange should be used instead/)
|
392
|
+
end
|
393
|
+
|
394
|
+
it 'on <= range' do
|
395
|
+
SemVer['<=1.2.0']
|
396
|
+
expect(@logs.map(&:message)).to include(/Use of class Puppet::SemVer is deprecated. SemanticPuppet::Version or SemanticPuppet::VersionRange should be used instead/)
|
397
|
+
end
|
398
|
+
|
399
|
+
it 'on > range' do
|
400
|
+
SemVer['>1.2.0']
|
401
|
+
expect(@logs.map(&:message)).to include(/Use of class Puppet::SemVer is deprecated. SemanticPuppet::Version or SemanticPuppet::VersionRange should be used instead/)
|
402
|
+
end
|
403
|
+
|
404
|
+
it 'on > range' do
|
405
|
+
SemVer['<1.2.0']
|
406
|
+
expect(@logs.map(&:message)).to include(/Use of class Puppet::SemVer is deprecated. SemanticPuppet::Version or SemanticPuppet::VersionRange should be used instead/)
|
407
|
+
end
|
408
|
+
|
409
|
+
context 'unless suppressed by argument' do
|
410
|
+
it 'on new instance' do
|
411
|
+
SemVer.new('1.2.3', true)
|
412
|
+
expect(@logs).to be_empty
|
413
|
+
end
|
414
|
+
|
415
|
+
it 'on exact range' do
|
416
|
+
SemVer['1.2.3', true]
|
417
|
+
expect(@logs).to be_empty
|
418
|
+
end
|
419
|
+
|
420
|
+
it 'on simple range' do
|
421
|
+
SemVer['1.2.x', true]
|
422
|
+
expect(@logs).to be_empty
|
423
|
+
end
|
424
|
+
|
425
|
+
it 'on tilde range' do
|
426
|
+
SemVer['~1.2.0', true]
|
427
|
+
expect(@logs).to be_empty
|
428
|
+
end
|
429
|
+
|
430
|
+
it 'on from-to range' do
|
431
|
+
SemVer['1.2.0 - 1.3.0', true]
|
432
|
+
expect(@logs).to be_empty
|
433
|
+
end
|
434
|
+
|
435
|
+
it 'on >= range' do
|
436
|
+
SemVer['>=1.2.0', true]
|
437
|
+
expect(@logs).to be_empty
|
438
|
+
end
|
439
|
+
|
440
|
+
it 'on <= range' do
|
441
|
+
SemVer['<=1.2.0', true]
|
442
|
+
expect(@logs).to be_empty
|
443
|
+
end
|
444
|
+
|
445
|
+
it 'on > range' do
|
446
|
+
SemVer['>1.2.0', true]
|
447
|
+
expect(@logs).to be_empty
|
448
|
+
end
|
449
|
+
|
450
|
+
it 'on > range' do
|
451
|
+
SemVer['<1.2.0', true]
|
452
|
+
expect(@logs).to be_empty
|
453
|
+
end
|
454
|
+
end
|
228
455
|
end
|
229
456
|
end
|
230
457
|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: puppet
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 4.9.
|
4
|
+
version: 4.9.3
|
5
5
|
prerelease:
|
6
6
|
platform: x86-mingw32
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2017-02-
|
12
|
+
date: 2017-02-24 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: facter
|
@@ -639,6 +639,7 @@ files:
|
|
639
639
|
- lib/puppet/feature/cfacter.rb
|
640
640
|
- lib/puppet/feature/selinux.rb
|
641
641
|
- lib/puppet/feature/eventlog.rb
|
642
|
+
- lib/puppet/feature/hiera_eyaml.rb
|
642
643
|
- lib/puppet/feature/telnet.rb
|
643
644
|
- lib/puppet/feature/libuser.rb
|
644
645
|
- lib/puppet/feature/external_facts.rb
|
@@ -1330,6 +1331,7 @@ files:
|
|
1330
1331
|
- lib/puppet/functions/hocon_data.rb
|
1331
1332
|
- lib/puppet/functions/alert.rb
|
1332
1333
|
- lib/puppet/functions/hiera_hash.rb
|
1334
|
+
- lib/puppet/functions/eyaml_lookup_key.rb
|
1333
1335
|
- lib/puppet/functions/info.rb
|
1334
1336
|
- lib/puppet/functions/filter.rb
|
1335
1337
|
- lib/puppet/functions/contain.rb
|