hiera-eyaml-gpg 0.7.rc1 → 0.7.1

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: 9a1e340aeafc6de92a8995f984c749e70c80cf4a
4
- data.tar.gz: 4190de8d0b44f4a0090ba08639fa647af0329ad0
3
+ metadata.gz: 2af61d8a176da52612993cbf649a6eafda4e5d6f
4
+ data.tar.gz: 0a7db420491c2f13023eedea25c003376236ea11
5
5
  SHA512:
6
- metadata.gz: ba6dbc9e96ec7e9667d026685c56da46e995c9a7753e850b7a457402cd06ac72e3a055da3de0464d6ff9ec629eec7c1082b64842a86b1a9096d7dc40acb4d07b
7
- data.tar.gz: 08e384319fe422d1b028571fa91bdc320af8fc337b2cc08721dffca13aaeec50755aeb6c828f1df8a3e1232d6cae90def1918f07940f8d15dbfabda8066f56bd
6
+ metadata.gz: a827e567460559cbf2d7a5de01322bcc799869c627c9b6307bbefe76ea071955e3bd519268f1b571000f79825f5f90658fa1c42e784a920ad3de6e0a624beea1
7
+ data.tar.gz: 8b2d4a1f4b87f9a92534200ce3169d5052b12f1a9b2178197768a65e0b39de56a41194ce027f6db34463fa81bb85eae9e0c0d04f1e702fc2a97af2628ad27d1b
data/.gitignore CHANGED
@@ -5,3 +5,5 @@ keys/*.pem
5
5
  pkg/
6
6
  tmp/
7
7
  .DS_Store
8
+ .ruby-version
9
+ Gemfile.lock
data/.rubocop.yml ADDED
@@ -0,0 +1,489 @@
1
+ AllCops:
2
+ TargetRubyVersion: 1.9
3
+ Lint/ConditionPosition:
4
+ Enabled: True
5
+
6
+ Lint/ElseLayout:
7
+ Enabled: True
8
+
9
+ Lint/UnreachableCode:
10
+ Enabled: True
11
+
12
+ Lint/UselessComparison:
13
+ Enabled: True
14
+
15
+ Lint/EnsureReturn:
16
+ Enabled: True
17
+
18
+ Lint/HandleExceptions:
19
+ Enabled: True
20
+
21
+ Lint/LiteralInCondition:
22
+ Enabled: True
23
+
24
+ Lint/ShadowingOuterLocalVariable:
25
+ Enabled: True
26
+
27
+ Lint/LiteralInInterpolation:
28
+ Enabled: True
29
+
30
+ Style/HashSyntax:
31
+ Enabled: True
32
+
33
+ Style/RedundantReturn:
34
+ Enabled: True
35
+
36
+ Layout/EndOfLine:
37
+ Enabled: False
38
+
39
+ Lint/AmbiguousOperator:
40
+ Enabled: True
41
+
42
+ Lint/AssignmentInCondition:
43
+ Enabled: True
44
+
45
+ Layout/SpaceBeforeComment:
46
+ Enabled: True
47
+
48
+ Style/AndOr:
49
+ Enabled: True
50
+
51
+ Style/RedundantSelf:
52
+ Enabled: True
53
+
54
+ Metrics/BlockLength:
55
+ Enabled: False
56
+
57
+ # Method length is not necessarily an indicator of code quality
58
+ Metrics/MethodLength:
59
+ Enabled: False
60
+
61
+ Metrics/ModuleLength:
62
+ Enabled: True
63
+
64
+ Style/WhileUntilModifier:
65
+ Enabled: True
66
+
67
+ Lint/AmbiguousRegexpLiteral:
68
+ Enabled: True
69
+
70
+ Security/Eval:
71
+ Enabled: True
72
+
73
+ Lint/BlockAlignment:
74
+ Enabled: True
75
+
76
+ Lint/DefEndAlignment:
77
+ Enabled: True
78
+
79
+ Lint/EndAlignment:
80
+ Enabled: True
81
+
82
+ Lint/DeprecatedClassMethods:
83
+ Enabled: True
84
+
85
+ Lint/Loop:
86
+ Enabled: True
87
+
88
+ Lint/ParenthesesAsGroupedExpression:
89
+ Enabled: True
90
+
91
+ Lint/RescueException:
92
+ Enabled: True
93
+
94
+ Lint/StringConversionInInterpolation:
95
+ Enabled: True
96
+
97
+ Lint/UnusedBlockArgument:
98
+ Enabled: True
99
+
100
+ Lint/UnusedMethodArgument:
101
+ Enabled: True
102
+
103
+ Lint/UselessAccessModifier:
104
+ Enabled: True
105
+
106
+ Lint/UselessAssignment:
107
+ Enabled: True
108
+
109
+ Lint/Void:
110
+ Enabled: True
111
+
112
+ Layout/AccessModifierIndentation:
113
+ Enabled: True
114
+
115
+ Naming/AccessorMethodName:
116
+ Enabled: True
117
+
118
+ Style/Alias:
119
+ Enabled: True
120
+
121
+ Layout/AlignArray:
122
+ Enabled: True
123
+
124
+ Layout/AlignHash:
125
+ Enabled: True
126
+
127
+ Layout/AlignParameters:
128
+ Enabled: True
129
+
130
+ Metrics/BlockNesting:
131
+ Enabled: True
132
+
133
+ Style/AsciiComments:
134
+ Enabled: True
135
+
136
+ Style/Attr:
137
+ Enabled: True
138
+
139
+ Style/BracesAroundHashParameters:
140
+ Enabled: True
141
+
142
+ Style/CaseEquality:
143
+ Enabled: True
144
+
145
+ Layout/CaseIndentation:
146
+ Enabled: True
147
+
148
+ Style/CharacterLiteral:
149
+ Enabled: True
150
+
151
+ Naming/ClassAndModuleCamelCase:
152
+ Enabled: True
153
+
154
+ Style/ClassAndModuleChildren:
155
+ Enabled: False
156
+
157
+ Style/ClassCheck:
158
+ Enabled: True
159
+
160
+ # Class length is not necessarily an indicator of code quality
161
+ Metrics/ClassLength:
162
+ Enabled: False
163
+
164
+ Style/ClassMethods:
165
+ Enabled: True
166
+
167
+ Style/ClassVars:
168
+ Enabled: True
169
+
170
+ Style/WhenThen:
171
+ Enabled: True
172
+
173
+ Style/WordArray:
174
+ Enabled: True
175
+
176
+ Style/UnneededPercentQ:
177
+ Enabled: True
178
+
179
+ Layout/Tab:
180
+ Enabled: True
181
+
182
+ Layout/SpaceBeforeSemicolon:
183
+ Enabled: True
184
+
185
+ Layout/TrailingBlankLines:
186
+ Enabled: True
187
+
188
+ Layout/SpaceInsideBlockBraces:
189
+ Enabled: True
190
+
191
+ Layout/SpaceInsideBrackets:
192
+ Enabled: True
193
+
194
+ Layout/SpaceInsideHashLiteralBraces:
195
+ Enabled: True
196
+
197
+ Layout/SpaceInsideParens:
198
+ Enabled: True
199
+
200
+ Layout/LeadingCommentSpace:
201
+ Enabled: True
202
+
203
+ Layout/SpaceBeforeFirstArg:
204
+ Enabled: True
205
+
206
+ Layout/SpaceAfterColon:
207
+ Enabled: True
208
+
209
+ Layout/SpaceAfterComma:
210
+ Enabled: True
211
+
212
+ Layout/SpaceAfterMethodName:
213
+ Enabled: True
214
+
215
+ Layout/SpaceAfterNot:
216
+ Enabled: True
217
+
218
+ Layout/SpaceAfterSemicolon:
219
+ Enabled: True
220
+
221
+ Layout/SpaceAroundEqualsInParameterDefault:
222
+ Enabled: True
223
+
224
+ Layout/SpaceAroundOperators:
225
+ Enabled: True
226
+
227
+ Layout/SpaceBeforeBlockBraces:
228
+ Enabled: True
229
+
230
+ Layout/SpaceBeforeComma:
231
+ Enabled: True
232
+
233
+ Style/CollectionMethods:
234
+ Enabled: True
235
+
236
+ Layout/CommentIndentation:
237
+ Enabled: True
238
+
239
+ Style/ColonMethodCall:
240
+ Enabled: True
241
+
242
+ Style/CommentAnnotation:
243
+ Enabled: True
244
+
245
+ # 'Complexity' is very relative
246
+ Metrics/CyclomaticComplexity:
247
+ Enabled: False
248
+
249
+ Naming/ConstantName:
250
+ Enabled: True
251
+
252
+ Style/Documentation:
253
+ Enabled: False
254
+
255
+ Style/DefWithParentheses:
256
+ Enabled: True
257
+
258
+ Style/PreferredHashMethods:
259
+ Enabled: True
260
+
261
+ Layout/DotPosition:
262
+ EnforcedStyle: trailing
263
+
264
+ Style/DoubleNegation:
265
+ Enabled: True
266
+
267
+ Style/EachWithObject:
268
+ Enabled: True
269
+
270
+ Layout/EmptyLineBetweenDefs:
271
+ Enabled: True
272
+
273
+ Layout/IndentArray:
274
+ Enabled: True
275
+
276
+ Layout/IndentHash:
277
+ Enabled: True
278
+
279
+ Layout/IndentationConsistency:
280
+ Enabled: True
281
+
282
+ Layout/IndentationWidth:
283
+ Enabled: True
284
+
285
+ Layout/EmptyLines:
286
+ Enabled: True
287
+
288
+ Layout/EmptyLinesAroundAccessModifier:
289
+ Enabled: True
290
+
291
+ Style/EmptyLiteral:
292
+ Enabled: True
293
+
294
+ # Configuration parameters: AllowURI, URISchemes.
295
+ Metrics/LineLength:
296
+ Enabled: False
297
+
298
+ Style/MethodCallWithoutArgsParentheses:
299
+ Enabled: True
300
+
301
+ Style/MethodDefParentheses:
302
+ Enabled: True
303
+
304
+ Style/LineEndConcatenation:
305
+ Enabled: True
306
+
307
+ Layout/TrailingWhitespace:
308
+ Enabled: True
309
+
310
+ Style/StringLiterals:
311
+ Enabled: True
312
+
313
+ Style/TrailingCommaInArguments:
314
+ Enabled: True
315
+
316
+ Style/TrailingCommaInLiteral:
317
+ Enabled: True
318
+
319
+ Style/GlobalVars:
320
+ Enabled: True
321
+
322
+ Style/GuardClause:
323
+ Enabled: True
324
+
325
+ Style/IfUnlessModifier:
326
+ Enabled: True
327
+
328
+ Style/MultilineIfThen:
329
+ Enabled: True
330
+
331
+ Style/NegatedIf:
332
+ Enabled: True
333
+
334
+ Style/NegatedWhile:
335
+ Enabled: True
336
+
337
+ Style/Next:
338
+ Enabled: True
339
+
340
+ Style/SingleLineBlockParams:
341
+ Enabled: True
342
+
343
+ Style/SingleLineMethods:
344
+ Enabled: True
345
+
346
+ Style/SpecialGlobalVars:
347
+ Enabled: True
348
+
349
+ Style/TrivialAccessors:
350
+ Enabled: True
351
+
352
+ Style/UnlessElse:
353
+ Enabled: True
354
+
355
+ Style/VariableInterpolation:
356
+ Enabled: True
357
+
358
+ Naming/VariableName:
359
+ Enabled: True
360
+
361
+ Style/WhileUntilDo:
362
+ Enabled: True
363
+
364
+ Style/EvenOdd:
365
+ Enabled: True
366
+
367
+ Naming/FileName:
368
+ Enabled: True
369
+
370
+ Style/For:
371
+ Enabled: True
372
+
373
+ Style/Lambda:
374
+ Enabled: True
375
+
376
+ Naming/MethodName:
377
+ Enabled: True
378
+
379
+ Style/MultilineTernaryOperator:
380
+ Enabled: True
381
+
382
+ Style/NestedTernaryOperator:
383
+ Enabled: True
384
+
385
+ Style/NilComparison:
386
+ Enabled: True
387
+
388
+ Style/FormatString:
389
+ Enabled: True
390
+
391
+ Style/MultilineBlockChain:
392
+ Enabled: True
393
+
394
+ Style/Semicolon:
395
+ Enabled: True
396
+
397
+ Style/SignalException:
398
+ Enabled: True
399
+
400
+ Style/NonNilCheck:
401
+ Enabled: True
402
+
403
+ Style/Not:
404
+ Enabled: True
405
+
406
+ Style/NumericLiterals:
407
+ Enabled: True
408
+
409
+ Style/OneLineConditional:
410
+ Enabled: True
411
+
412
+ Naming/BinaryOperatorParameterName:
413
+ Enabled: True
414
+
415
+ Style/ParenthesesAroundCondition:
416
+ Enabled: True
417
+
418
+ Style/PercentLiteralDelimiters:
419
+ Enabled: True
420
+
421
+ Style/PerlBackrefs:
422
+ Enabled: True
423
+
424
+ Naming/PredicateName:
425
+ Enabled: True
426
+
427
+ Style/RedundantException:
428
+ Enabled: True
429
+
430
+ Style/SelfAssignment:
431
+ Enabled: True
432
+
433
+ Style/Proc:
434
+ Enabled: True
435
+
436
+ Style/RaiseArgs:
437
+ Enabled: True
438
+
439
+ Style/RedundantBegin:
440
+ Enabled: True
441
+
442
+ Style/RescueModifier:
443
+ Enabled: True
444
+
445
+ # based on https://github.com/voxpupuli/modulesync_config/issues/168
446
+ Style/RegexpLiteral:
447
+ EnforcedStyle: percent_r
448
+ Enabled: True
449
+
450
+ Lint/UnderscorePrefixedVariableName:
451
+ Enabled: True
452
+
453
+ Metrics/ParameterLists:
454
+ Enabled: False
455
+
456
+ Lint/RequireParentheses:
457
+ Enabled: True
458
+
459
+ Style/ModuleFunction:
460
+ Enabled: True
461
+
462
+ Lint/Debugger:
463
+ Enabled: True
464
+
465
+ Style/IfWithSemicolon:
466
+ Enabled: True
467
+
468
+ Style/Encoding:
469
+ Enabled: True
470
+
471
+ Style/BlockDelimiters:
472
+ Enabled: True
473
+
474
+ Layout/MultilineBlockLayout:
475
+ Enabled: True
476
+
477
+ # 'Complexity' is very relative
478
+ Metrics/AbcSize:
479
+ Enabled: False
480
+
481
+ # 'Complexity' is very relative
482
+ Metrics/PerceivedComplexity:
483
+ Enabled: False
484
+
485
+ Lint/UselessAssignment:
486
+ Enabled: True
487
+
488
+ Layout/ClosingParenthesisIndentation:
489
+ Enabled: True
data/.travis.yml ADDED
@@ -0,0 +1,27 @@
1
+ ---
2
+ sudo: false
3
+ language: ruby
4
+ cache: bundler
5
+ dist: trusty
6
+ script: 'bundle exec rake test'
7
+ rvm:
8
+ - 2.4.6
9
+ notifications:
10
+ email: false
11
+ irc:
12
+ on_success: always
13
+ on_failure: always
14
+ channels:
15
+ - "chat.freenode.org#voxpupuli-notifications"
16
+ branches:
17
+ only:
18
+ - master
19
+ - /^v\d/
20
+ deploy:
21
+ provider: rubygems
22
+ api_key:
23
+ secure: 'kGpuGiJSgWXwKoLXXCy7JPBEbDhumaLxQiAn7H74tAN5qYZHE9kVP1aIOet1z5utLLKSu+97ZxH0s/ZL9DoSk/S2ENapIsnsZBPu+nnaN9xW/zWsF/h1xVxbaPhE5QJOqNH8fbIq4HwNoEAgzf/uPK29e75qgChNZyDaaQRTLF1ZFdyLvryEAq9ezEV0GVvIYG4pLxykimKIaR6DOv/4YhtpoFOPADlEIv38r4gqfnPEZm7gXq3yoSLGxDmKzs0NvzAlL2OKwurVArAt042G/y5ZtSe1hP+oJGKFZ/fcL4rcMcU3YTl9sgb12R9q2iCC1MPftZLv4qIC8NrcDUkQ/IxEFMzaJs6KQNIHiFYClS1HL9zYlRH/Aek6wq+N2J2e7SCRvf9TAQb1BmV6vNsDcnAfVaUw6On6E0BIM8boUow1e4sTYSX2bdqO2tWq6PN/eWAXsTfCGNNyec9zPEXDOeiWnQ/x21AcPV7X0ESNhjNQQmmsq/owuBrlrpei9r6moY3IoMCt3JRdzyaMfFia6KuZqvQamd29rK0tqxY/PiCy+QtkxAnH7yAgDCykCGagUn7NrJdmTdc4MXvfJIi3EF2laiQebOn9V85WKIWmjwZkjgBnGWGFHEf9Df8WHyAElp9cghmXZSI/ZeaM6lhn/AnSrdOfyTuSaUQwkCSRAG8='
24
+ gem: hiera-eyaml-gpg
25
+ on:
26
+ tags: true
27
+ repo: voxpupuli/hiera-eyaml-gpg
data/CHANGELOG.md ADDED
@@ -0,0 +1,88 @@
1
+ # Changelog
2
+
3
+ All notable changes to this project will be documented in this file.
4
+
5
+ ## [v0.7.1](https://github.com/voxpupuli/hiera-eyaml-gpg/tree/v0.7.1) (2019-04-24)
6
+
7
+ [Full Changelog](https://github.com/voxpupuli/hiera-eyaml-gpg/compare/v0.7.0...v0.7.1)
8
+
9
+ **Merged pull requests:**
10
+
11
+ - Use correct travis-ci.com secret [\#61](https://github.com/voxpupuli/hiera-eyaml-gpg/pull/61) ([alexjfisher](https://github.com/alexjfisher))
12
+
13
+ ## [v0.7.0](https://github.com/voxpupuli/hiera-eyaml-gpg/tree/v0.7.0) (2019-04-24)
14
+
15
+ [Full Changelog](https://github.com/voxpupuli/hiera-eyaml-gpg/compare/vp_migration...v0.7.0)
16
+
17
+ This is the first release of `hiera-eyaml-gpg` since the project was migrated to [Vox Pupuli](https://voxpupuli.org/). We're pleased to announce that this project should now work with Puppet 6 (jruby 9k puppetserver). Special thanks to [seanmil](https://github.com/seanmil) for his work on this.
18
+
19
+ From this point onwards, all releases made to rubygems will have corresponding tags in the github project and a changelog will be maintained with [GitHub Changelog Generator](https://github.com/github-changelog-generator/github-changelog-generator). The project will use [semantic versioning](https://semver.org/).
20
+
21
+ **Implemented enhancements:**
22
+
23
+ - Expose plugin version [\#58](https://github.com/voxpupuli/hiera-eyaml-gpg/pull/58) ([alexjfisher](https://github.com/alexjfisher))
24
+ - Use Puppet::Util::Execution for RubyGpg [\#48](https://github.com/voxpupuli/hiera-eyaml-gpg/pull/48) ([seanmil](https://github.com/seanmil))
25
+ - Allow gnupghome to be set from an environment variable [\#46](https://github.com/voxpupuli/hiera-eyaml-gpg/pull/46) ([seanmil](https://github.com/seanmil))
26
+
27
+ **Fixed bugs:**
28
+
29
+ - blank lines in a recipients file results in the first key in the being used to encrypt the secrets [\#37](https://github.com/voxpupuli/hiera-eyaml-gpg/issues/37)
30
+ - Fix `uninitialized constant Puppet \(NameError\)` [\#55](https://github.com/voxpupuli/hiera-eyaml-gpg/pull/55) ([alexjfisher](https://github.com/alexjfisher))
31
+ - Make the list of keys to encrypt with accurate [\#38](https://github.com/voxpupuli/hiera-eyaml-gpg/pull/38) ([grahamhar](https://github.com/grahamhar))
32
+
33
+ **Merged pull requests:**
34
+
35
+ - Refactoring and fixing of remaining rubocop violations [\#57](https://github.com/voxpupuli/hiera-eyaml-gpg/pull/57) ([alexjfisher](https://github.com/alexjfisher))
36
+ - Fix `\<module:Encryptors\>: Gpg is not a class \(TypeError\)` [\#56](https://github.com/voxpupuli/hiera-eyaml-gpg/pull/56) ([alexjfisher](https://github.com/alexjfisher))
37
+ - Document installation of gems on puppetserver [\#53](https://github.com/voxpupuli/hiera-eyaml-gpg/pull/53) ([ghoneycutt](https://github.com/ghoneycutt))
38
+ - Document usage with Hiera 5 [\#51](https://github.com/voxpupuli/hiera-eyaml-gpg/pull/51) ([ghoneycutt](https://github.com/ghoneycutt))
39
+ - Document which versions of Puppet this should work with [\#50](https://github.com/voxpupuli/hiera-eyaml-gpg/pull/50) ([ghoneycutt](https://github.com/ghoneycutt))
40
+
41
+ ## v0.6 (2015-09-10)
42
+
43
+ **Implemented enhancements:**
44
+
45
+ - Improve GPG home handling [\#30](https://github.com/voxpupuli/hiera-eyaml-gpg/pull/30) ([sihil](https://github.com/sihil))
46
+ - Add support for comments in hiera-eyaml-gpg.recipients file [\#29](https://github.com/voxpupuli/hiera-eyaml-gpg/pull/29) ([tampakrap](https://github.com/tampakrap))
47
+
48
+ **Fixed bugs:**
49
+
50
+ - Add missing curly brace. [\#31](https://github.com/voxpupuli/hiera-eyaml-gpg/pull/31) ([danny-cheung](https://github.com/danny-cheung))
51
+
52
+ ## v0.5 (2015-03-21)
53
+
54
+ **Implemented enhancements:**
55
+
56
+ - Adapt code for Puppetserver [\#24](https://github.com/voxpupuli/hiera-eyaml-gpg/pull/24) ([raphink](https://github.com/raphink))
57
+ - Set GPG home directory without an environment variable [\#19](https://github.com/voxpupuli/hiera-eyaml-gpg/pull/19) ([mattbostock](https://github.com/mattbostock))
58
+
59
+ **Closed issues:**
60
+
61
+ - Support for puppetserver \(jruby\) [\#23](https://github.com/voxpupuli/hiera-eyaml-gpg/issues/23)
62
+
63
+ ## [v0.4](https://github.com/voxpupuli/hiera-eyaml-gpg/tree/v0.4) (2013-11-26)
64
+
65
+ [Full Changelog](https://github.com/voxpupuli/hiera-eyaml-gpg/compare/v0.3...v0.4)
66
+
67
+ **Closed issues:**
68
+
69
+ - Encryption should fail if don't have hiera-gpg key on my keyring [\#7](https://github.com/voxpupuli/hiera-eyaml-gpg/issues/7)
70
+
71
+ **Merged pull requests:**
72
+
73
+ - \[FIX\] keys map not being set correctly [\#9](https://github.com/voxpupuli/hiera-eyaml-gpg/pull/9) ([rooprob](https://github.com/rooprob))
74
+
75
+ ## [v0.3](https://github.com/voxpupuli/hiera-eyaml-gpg/tree/v0.3) (2013-11-22)
76
+
77
+ [Full Changelog](https://github.com/voxpupuli/hiera-eyaml-gpg/compare/709b12bcd637a18672847946c410701d32096e0c...v0.3)
78
+
79
+ **Implemented enhancements:**
80
+
81
+ - Use gpg-agent when using the edit option [\#2](https://github.com/voxpupuli/hiera-eyaml-gpg/issues/2)
82
+
83
+ **Merged pull requests:**
84
+
85
+ - Fix typo. [\#5](https://github.com/voxpupuli/hiera-eyaml-gpg/pull/5) ([javins](https://github.com/javins))
86
+
87
+
88
+ \* *This Changelog was automatically generated by [github_changelog_generator](https://github.com/github-changelog-generator/github-changelog-generator)*
data/Gemfile CHANGED
@@ -1,7 +1,8 @@
1
- source 'https://rubygems.org/'
1
+ source ENV['GEM_SOURCE'] || 'https://rubygems.org'
2
2
 
3
- gem 'hiera-eyaml', ">=1.3.8"
3
+ gemspec
4
4
 
5
5
  group :development do
6
- gem "aruba"
6
+ gem 'github_changelog_generator', require: false, git: 'https://github.com/github-changelog-generator/github-changelog-generator'
7
+ gem 'rubocop', '~> 0.50.0'
7
8
  end
data/HISTORY.md ADDED
@@ -0,0 +1,45 @@
1
+ ## v0.6 (2015-09-10)
2
+
3
+ **Implemented enhancements:**
4
+
5
+ - Improve GPG home handling [\#30](https://github.com/voxpupuli/hiera-eyaml-gpg/pull/30) ([sihil](https://github.com/sihil))
6
+ - Add support for comments in hiera-eyaml-gpg.recipients file [\#29](https://github.com/voxpupuli/hiera-eyaml-gpg/pull/29) ([tampakrap](https://github.com/tampakrap))
7
+
8
+ **Fixed bugs:**
9
+
10
+ - Add missing curly brace. [\#31](https://github.com/voxpupuli/hiera-eyaml-gpg/pull/31) ([danny-cheung](https://github.com/danny-cheung))
11
+
12
+ ## v0.5 (2015-03-21)
13
+
14
+ **Implemented enhancements:**
15
+
16
+ - Adapt code for Puppetserver [\#24](https://github.com/voxpupuli/hiera-eyaml-gpg/pull/24) ([raphink](https://github.com/raphink))
17
+ - Set GPG home directory without an environment variable [\#19](https://github.com/voxpupuli/hiera-eyaml-gpg/pull/19) ([mattbostock](https://github.com/mattbostock))
18
+
19
+ **Closed issues:**
20
+
21
+ - Support for puppetserver \(jruby\) [\#23](https://github.com/voxpupuli/hiera-eyaml-gpg/issues/23)
22
+
23
+ ## [v0.4](https://github.com/voxpupuli/hiera-eyaml-gpg/tree/v0.4) (2013-11-26)
24
+
25
+ [Full Changelog](https://github.com/voxpupuli/hiera-eyaml-gpg/compare/v0.3...v0.4)
26
+
27
+ **Closed issues:**
28
+
29
+ - Encryption should fail if don't have hiera-gpg key on my keyring [\#7](https://github.com/voxpupuli/hiera-eyaml-gpg/issues/7)
30
+
31
+ **Merged pull requests:**
32
+
33
+ - \[FIX\] keys map not being set correctly [\#9](https://github.com/voxpupuli/hiera-eyaml-gpg/pull/9) ([rooprob](https://github.com/rooprob))
34
+
35
+ ## [v0.3](https://github.com/voxpupuli/hiera-eyaml-gpg/tree/v0.3) (2013-11-22)
36
+
37
+ [Full Changelog](https://github.com/voxpupuli/hiera-eyaml-gpg/compare/709b12bcd637a18672847946c410701d32096e0c...v0.3)
38
+
39
+ **Implemented enhancements:**
40
+
41
+ - Use gpg-agent when using the edit option [\#2](https://github.com/voxpupuli/hiera-eyaml-gpg/issues/2)
42
+
43
+ **Merged pull requests:**
44
+
45
+ - Fix typo. [\#5](https://github.com/voxpupuli/hiera-eyaml-gpg/pull/5) ([javins](https://github.com/javins))
data/README.md CHANGED
@@ -1,7 +1,10 @@
1
1
  hiera-eyaml-gpg
2
2
  ===============
3
3
 
4
- GPG encryption backend for the [hiera-eyaml](https://github.com/TomPoulton/hiera-eyaml) module.
4
+ [![Gem Version](https://img.shields.io/gem/v/hiera-eyaml-gpg.svg)](https://rubygems.org/gems/hiera-eyaml-gpg)
5
+ [![Gem Downloads](https://img.shields.io/gem/dt/hiera-eyaml-gpg.svg)](https://rubygems.org/gems/hiera-eyaml-gpg)
6
+
7
+ GPG encryption backend for the [hiera-eyaml](https://github.com/voxpupuli/hiera-eyaml) module.
5
8
 
6
9
  Motivation
7
10
  ----------
@@ -37,11 +40,26 @@ Note: you will need to use `ruby_gpg` with the Puppet server as it uses JRuby wh
37
40
  make use of native extensions such as `gpgme`.
38
41
 
39
42
  If you haven't already installed it, this requires and will install the hiera-eyaml gem, which you
40
- should probably acquint yourself with at https://github.com/TomPoulton/hiera-eyaml.
43
+ should probably acquaint yourself with at https://github.com/TomPoulton/hiera-eyaml.
41
44
 
42
45
  Note that in order to install the gpgme gem you'll need to have the ruby development package installed
43
46
  for your distribution.
44
47
 
48
+ For use on puppetserver
49
+ ---
50
+
51
+ As root
52
+
53
+ ```sh
54
+ /opt/puppetlabs/puppet/bin/gem install hiera-eyaml-gpg ruby_gpg
55
+ /opt/puppetlabs/server/bin/puppetserver gem install hiera-eyaml-gpg ruby_gpg
56
+ ```
57
+
58
+ Puppet versions
59
+ ---------------
60
+
61
+ This project supports Puppet 5.5.8 and later.
62
+
45
63
  How to use
46
64
  ----------
47
65
 
@@ -68,16 +86,52 @@ Use `eyaml --help` for more details or look at the hiera-eyaml docs.
68
86
 
69
87
  ### Configuring hiera
70
88
 
71
- Assuming you have a working `hiera` and `hiera-eyaml` then the only option you need to add is to
72
- configure `:gpg_gnupghome:` in your hiera.yaml (under the `:eyaml:` section). This should be the
73
- directory that contains the keyring etc for the user that can to decrypt the hiera data. Please note
74
- that the private GPG key must not have a passphrase.
89
+ This assumes you have a working `hiera` and `hiera-eyaml`. Please note that the private GPG key must not
90
+ have a passphrase.
91
+
92
+ Each level of the hierarchy must specify the `gpg_gnupghome` option with the path to the keyring as well
93
+ as specifying `lookup_key` with the value `eyaml_lookup_key`. The following example shows a simple hierarchy.
94
+
95
+ ```yaml
96
+ ---
97
+ version: 5
98
+ defaults:
99
+ hierarchy:
100
+ - name: "Per-node data (yaml version)"
101
+ lookup_key: eyaml_lookup_key
102
+ options:
103
+ gpg_gnupghome: /opt/puppetlabs/server/data/puppetserver/.gnupg
104
+ path: "nodes/%{::trusted.certname}.yaml"
105
+ - name: "Role data"
106
+ lookup_key: eyaml_lookup_key
107
+ options:
108
+ gpg_gnupghome: /opt/puppetlabs/server/data/puppetserver/.gnupg
109
+ paths:
110
+ - "role/%{facts.role}.yaml"
111
+ - name: "Per platform data"
112
+ lookup_key: eyaml_lookup_key
113
+ options:
114
+ gpg_gnupghome: /opt/puppetlabs/server/data/puppetserver/.gnupg
115
+ paths:
116
+ - "kernel/%{::kernel}.yaml"
117
+ - "osfamily/%{::osfamily}.yaml"
118
+ - "osfamily/%{::osfamily}-%{::operatingsystemmajrelease}.yaml"
119
+ - name: "Default"
120
+ lookup_key: eyaml_lookup_key
121
+ options:
122
+ gpg_gnupghome: /opt/puppetlabs/server/data/puppetserver/.gnupg
123
+ paths:
124
+ - "common.yaml"
125
+ ```
126
+
127
+ For command line uses such as `puppet lookup` where the `gpg_gnupghome` setting in the `hiera.yaml`
128
+ configuration does not match a directory the user has access to, you can override the `gpg_gnupghome`
129
+ setting by setting the path in the environment variable `HIERA_EYAML_GPG_GNUPGHOME` and, if set, that
130
+ will be used instead of `gpg_gnupghome`.
131
+
132
+ $ HIERA_EYAML_GPG_GNUPGHOME=~/.gnupg puppet lookup my_key
75
133
 
76
134
  Authors
77
135
  -------
78
136
 
79
- - Simon Hildrew - Initial code
80
- - Geoff Meakins - Created hiera-eyaml plugin framework that made this possible
81
-
82
- ### Contributors
83
- - Walt Javins - Bug fixes
137
+ Thanks to Simon Hildrew for the inital code. Other contributors can be seen at [https://github.com/voxpupuli/hiera-eyaml-gpg/graphs/contributors](https://github.com/voxpupuli/hiera-eyaml-gpg/graphs/contributors)
data/Rakefile CHANGED
@@ -1 +1,20 @@
1
- require "bundler/gem_tasks"
1
+ require 'bundler/gem_tasks'
2
+ require 'rubocop/rake_task'
3
+ require 'github_changelog_generator/task'
4
+
5
+ desc 'Run RuboCop on the lib directory'
6
+ RuboCop::RakeTask.new(:rubocop) do |task|
7
+ task.patterns = ['lib/**/*.rb']
8
+ end
9
+
10
+ task test: %w[clean rubocop]
11
+
12
+ GitHubChangelogGenerator::RakeTask.new :changelog do |config|
13
+ version = Hiera::Backend::Eyaml::Encryptors::GpgVersion::VERSION
14
+ config.future_release = "v#{version}" if version =~ %r{^\d+\.\d+.\d+$}
15
+ config.header = "# Changelog\n\nAll notable changes to this project will be documented in this file."
16
+ config.exclude_labels = %w[duplicate question invalid wontfix wont-fix skip-changelog]
17
+ config.user = 'voxpupuli'
18
+ config.project = 'hiera-eyaml-gpg'
19
+ config.since_tag = 'vp_migration'
20
+ end
@@ -1,21 +1,21 @@
1
- # -*- encoding: utf-8 -*-
2
1
  lib = File.expand_path('../lib', __FILE__)
3
2
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
3
  require 'hiera/backend/eyaml/encryptors/gpg/version'
5
4
 
6
5
  Gem::Specification.new do |gem|
7
- gem.name = "hiera-eyaml-gpg"
8
- gem.version = Hiera::Backend::Eyaml::Encryptors::Gpg::VERSION
9
- gem.description = "GPG encryptor for use with hiera-eyaml"
10
- gem.summary = "Encryption plugin for hiera-eyaml backend for Hiera"
11
- gem.author = "Simon Hildrew"
12
- gem.license = "MIT"
6
+ gem.name = 'hiera-eyaml-gpg'
7
+ gem.version = Hiera::Backend::Eyaml::Encryptors::GpgVersion::VERSION
8
+ gem.description = 'GPG encryptor for use with hiera-eyaml'
9
+ gem.summary = 'Encryption plugin for hiera-eyaml backend for Hiera'
10
+ gem.author = 'Simon Hildrew'
11
+ gem.license = 'MIT'
13
12
 
14
- gem.homepage = "http://github.com/sihil/hiera-eyaml-gpg"
15
- gem.files = `git ls-files`.split($/)
16
- gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
13
+ gem.homepage = 'http://github.com/sihil/hiera-eyaml-gpg'
14
+ gem.files = `git ls-files`.split($INPUT_RECORD_SEPARATOR)
15
+ gem.executables = gem.files.grep(%r{^bin/}).map { |f| File.basename(f) }
17
16
  gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
18
- gem.require_paths = ["lib"]
17
+ gem.require_paths = ['lib']
19
18
 
20
19
  gem.add_dependency('hiera-eyaml', '>=1.3.8')
20
+ gem.add_dependency('puppet', '>=5.5.8')
21
21
  end
@@ -4,8 +4,9 @@ rescue LoadError
4
4
  begin
5
5
  require 'ruby_gpg'
6
6
  rescue LoadError
7
- fail "hiera-eyaml-gpg requires either the 'gpgme' or 'ruby_gpg' gem"
7
+ raise "hiera-eyaml-gpg requires either the 'gpgme' or 'ruby_gpg' gem"
8
8
  end
9
+ require 'hiera/backend/eyaml/encryptors/gpg/puppet_gpg'
9
10
  end
10
11
 
11
12
  require 'base64'
@@ -18,51 +19,52 @@ class Hiera
18
19
  module Backend
19
20
  module Eyaml
20
21
  module Encryptors
21
-
22
22
  class Gpg < Encryptor
23
-
24
- self.tag = "GPG"
23
+ VERSION = Hiera::Backend::Eyaml::Encryptors::GpgVersion::VERSION
24
+ self.tag = 'GPG'
25
25
 
26
26
  self.options = {
27
- :gnupghome => { :desc => "Location of your GNUPGHOME directory",
28
- :type => :string,
29
- :default => "#{["HOME", "HOMEPATH"].reject { |h| ENV[h].nil? }.map { |h| ENV[h]+"/.gnupg" }.first || ""}"},
30
- :always_trust => { :desc => "Assume that used keys are fully trusted",
31
- :type => :boolean,
32
- :default => false },
33
- :recipients => { :desc => "List of recipients (comma separated)",
34
- :type => :string },
35
- :recipients_file => { :desc => "File containing a list of recipients (one on each line)",
36
- :type => :string }
27
+ gnupghome: { desc: 'Location of your GNUPGHOME directory',
28
+ type: :string,
29
+ default: (%w[HOME HOMEPATH].reject { |h| ENV[h].nil? }.map { |h| ENV[h] + '/.gnupg' }.first || '').to_s },
30
+ always_trust: { desc: 'Assume that used keys are fully trusted',
31
+ type: :boolean,
32
+ default: false },
33
+ recipients: { desc: 'List of recipients (comma separated)',
34
+ type: :string },
35
+ recipients_file: { desc: 'File containing a list of recipients (one on each line)',
36
+ type: :string }
37
37
  }
38
38
 
39
- @@passphrase_cache = Hash.new
39
+ @passphrase_cache = {}
40
40
 
41
- def self.passfunc(hook, uid_hint, passphrase_info, prev_was_bad, fd)
42
- begin
43
- system('stty -echo')
41
+ def self.passfunc(_hook, uid_hint, _passphrase_info, _prev_was_bad, fd)
42
+ system('stty -echo')
44
43
 
45
- unless @@passphrase_cache.has_key?(uid_hint)
46
- @@passphrase_cache[uid_hint] = ask("Enter passphrase for #{uid_hint}: ") { |q| q.echo = '' }
47
- $stderr.puts
48
- end
49
- passphrase = @@passphrase_cache[uid_hint]
50
-
51
- io = IO.for_fd(fd, 'w')
52
- io.puts(passphrase)
53
- io.flush
54
- ensure
55
- (0 ... $_.length).each do |i| $_[i] = ?0 end if $_
56
- system('stty echo')
57
- end
44
+ unless @passphrase_cache.key?(uid_hint)
45
+ @passphrase_cache[uid_hint] = ask("Enter passphrase for #{uid_hint}: ") { |q| q.echo = '' }
46
+ $stderr.puts
47
+ end
48
+ passphrase = @passphrase_cache[uid_hint]
49
+
50
+ io = IO.for_fd(fd, 'w')
51
+ io.puts(passphrase)
52
+ io.flush
53
+ ensure
54
+ (0...$LAST_READ_LINE.length).each { |i| $LAST_READ_LINE[i] = '0' } if $LAST_READ_LINE
55
+ system('stty echo')
58
56
  end
59
57
 
60
58
  def self.gnupghome
61
- gnupghome = self.option :gnupghome
59
+ gnupghome = if ENV['HIERA_EYAML_GPG_GNUPGHOME'].nil?
60
+ option :gnupghome
61
+ else
62
+ ENV['HIERA_EYAML_GPG_GNUPGHOME']
63
+ end
62
64
  debug("GNUPGHOME is #{gnupghome}")
63
65
  if gnupghome.nil? || gnupghome.empty?
64
- warn("No GPG home directory configured, check gpg_gnupghome configuration value is correct")
65
- raise ArgumentError, "No GPG home directory configured, check gpg_gnupghome configuration value is correct"
66
+ warn('No GPG home directory configured, check gpg_gnupghome configuration value is correct')
67
+ raise ArgumentError, 'No GPG home directory configured, check gpg_gnupghome configuration value is correct'
66
68
  elsif !File.directory?(gnupghome)
67
69
  warn("Configured GPG home directory #{gnupghome} doesn't exist, check gpg_gnupghome configuration value is correct")
68
70
  raise ArgumentError, "Configured GPG home directory #{gnupghome} doesn't exist, check gpg_gnupghome configuration value is correct"
@@ -71,76 +73,30 @@ class Hiera
71
73
  end
72
74
  end
73
75
 
74
- def self.find_recipients
75
- recipient_option = self.option :recipients
76
- recipients = if !recipient_option.nil?
77
- debug("Using --recipients option")
78
- recipient_option.split(",")
79
- else
80
- recipient_file_option = self.option :recipients_file
81
- recipient_file = if !recipient_file_option.nil?
82
- debug("Using --recipients-file option")
83
- Pathname.new(recipient_file_option)
84
- else
85
- debug("Searching for any hiera-eyaml-gpg.recipients files in path")
86
- # if we are editing a file, look for a hiera-eyaml-gpg.recipients file
87
- filename = case Eyaml::Options[:source]
88
- when :file
89
- Eyaml::Options[:file]
90
- when :eyaml
91
- Eyaml::Options[:eyaml]
92
- else
93
- nil
94
- end
95
-
96
- if filename.nil?
97
- nil
98
- else
99
- path = Pathname.new(filename).realpath.dirname
100
- selected_file = nil
101
- path.descend{|path| path
102
- potential_file = path.join('hiera-eyaml-gpg.recipients')
103
- selected_file = potential_file if potential_file.exist?
104
- }
105
- debug("Using file at #{selected_file}")
106
- selected_file
107
- end
108
- end
109
-
110
- unless recipient_file.nil?
111
- recipient_file.readlines.map{ |line|
112
- line.strip unless line.start_with? '#' or line.strip.empty?
113
- }.compact
114
- else
115
- []
116
- end
117
- end
118
- end
119
-
120
- def self.encrypt plaintext
76
+ def self.encrypt(plaintext)
121
77
  unless defined?(GPGME)
122
78
  raise RecoverableError, "Encryption is only supported when using the 'gpgme' gem"
123
79
  end
124
80
 
125
- GPGME::Engine.home_dir = self.gnupghome
81
+ GPGME::Engine.home_dir = gnupghome
126
82
 
127
83
  ctx = GPGME::Ctx.new
128
84
 
129
- recipients = self.find_recipients
85
+ recipients = find_recipients
130
86
  debug("Recipents are #{recipients}")
131
87
 
132
88
  raise RecoverableError, 'No recipients provided, don\'t know who to encrypt to' if recipients.empty?
133
89
 
134
- keys = recipients.map {|r|
90
+ keys = recipients.map do |r|
135
91
  key_to_use = ctx.keys(r).first
136
92
  if key_to_use.nil?
137
93
  raise RecoverableError, "No key found on keyring for #{r}"
138
94
  end
139
95
  key_to_use
140
- }
96
+ end
141
97
  debug("Keys: #{keys}")
142
98
 
143
- always_trust = self.option(:always_trust)
99
+ always_trust = option(:always_trust)
144
100
  unless always_trust
145
101
  # check validity of recipients (this is possibly naive, but better than the unhelpful
146
102
  # error that it would spit out otherwise)
@@ -152,28 +108,29 @@ class Hiera
152
108
  end
153
109
 
154
110
  data = GPGME::Data.from_str(plaintext)
155
- crypto = GPGME::Crypto.new(:always_trust => always_trust)
111
+ crypto = GPGME::Crypto.new(always_trust: always_trust)
156
112
 
157
- ciphertext = crypto.encrypt(data, :recipients => keys)
113
+ ciphertext = crypto.encrypt(data, recipients: keys)
158
114
  ciphertext.seek 0
159
115
  ciphertext.read
160
116
  end
161
117
 
162
- def self.decrypt ciphertext
118
+ def self.decrypt(ciphertext)
163
119
  gnupghome = self.gnupghome
164
120
 
165
121
  unless defined?(GPGME)
166
- RubyGpg.config.homedir = gnupghome if gnupghome
167
- return RubyGpg.decrypt_string(ciphertext)
122
+ gpg = Hiera::Backend::Eyaml::GpgPuppetserver
123
+ gpg.config.homedir = gnupghome if gnupghome
124
+ return gpg.decrypt_string(ciphertext)
168
125
  end
169
126
 
170
127
  GPGME::Engine.home_dir = gnupghome
171
128
 
172
129
  ctx = if hiera?
173
- GPGME::Ctx.new
174
- else
175
- GPGME::Ctx.new(:passphrase_callback => method(:passfunc))
176
- end
130
+ GPGME::Ctx.new
131
+ else
132
+ GPGME::Ctx.new(passphrase_callback: method(:passfunc))
133
+ end
177
134
 
178
135
  if !ctx.keys.empty?
179
136
  raw = GPGME::Data.new(ciphertext)
@@ -182,10 +139,10 @@ class Hiera
182
139
  begin
183
140
  txt = ctx.decrypt(raw)
184
141
  rescue GPGME::Error::DecryptFailed => e
185
- warn("Fatal: Failed to decrypt ciphertext (check settings and that you are a recipient)")
142
+ warn('Fatal: Failed to decrypt ciphertext (check settings and that you are a recipient)')
186
143
  raise e
187
- rescue Exception => e
188
- warn("Warning: General exception decrypting GPG file")
144
+ rescue StandardError => e
145
+ warn('Warning: General exception decrypting GPG file')
189
146
  raise e
190
147
  end
191
148
 
@@ -198,11 +155,58 @@ class Hiera
198
155
  end
199
156
 
200
157
  def self.create_keys
201
- STDERR.puts "The GPG encryptor does not support creation of keys, use the GPG command lines tools instead"
158
+ STDERR.puts 'The GPG encryptor does not support creation of keys, use the GPG command lines tools instead'
202
159
  end
203
160
 
204
- end
161
+ class << self
162
+ private
163
+
164
+ def find_recipients
165
+ recipient_option = option :recipients
166
+
167
+ unless recipient_option.nil?
168
+ debug('Using --recipients option')
169
+ return recipient_option.split(',')
170
+ end
171
+
172
+ recipient_file_option = option :recipients_file
173
+ recipient_file = if recipient_file_option.nil?
174
+ debug('Searching for any hiera-eyaml-gpg.recipients files in path')
175
+ find_recipient_file
176
+ else
177
+ debug('Using --recipients-file option')
178
+ Pathname.new(recipient_file_option)
179
+ end
205
180
 
181
+ return [] if recipient_file.nil?
182
+
183
+ recipient_file.readlines.map do |line|
184
+ line.strip unless line.start_with?('#') || line.strip.empty?
185
+ end.compact
186
+ end
187
+
188
+ def find_recipient_file
189
+ # if we are editing a file, look for a hiera-eyaml-gpg.recipients file
190
+ filename = case Eyaml::Options[:source]
191
+ when :file
192
+ Eyaml::Options[:file]
193
+ when :eyaml
194
+ Eyaml::Options[:eyaml]
195
+ end
196
+
197
+ return if filename.nil?
198
+
199
+ root = Pathname.new(filename).realpath.dirname
200
+ selected_file = nil
201
+ root.descend do |path|
202
+ potential_file = path.join('hiera-eyaml-gpg.recipients')
203
+ selected_file = potential_file if potential_file.exist?
204
+ end
205
+ debug("Using file at #{selected_file}")
206
+ selected_file
207
+ end
208
+ end
209
+ end
206
210
  end
207
211
  end
208
212
  end
@@ -1,3 +1,3 @@
1
1
  require 'hiera/backend/eyaml/encryptors/gpg'
2
2
 
3
- Hiera::Backend::Eyaml::Encryptors::Gpg.register
3
+ Hiera::Backend::Eyaml::Encryptors::Gpg.register
@@ -0,0 +1,30 @@
1
+ require 'puppet'
2
+ require 'puppet/util/execution'
3
+ require 'puppet/file_system/uniquefile'
4
+
5
+ class Hiera
6
+ module Backend
7
+ module Eyaml
8
+ module GpgPuppetserver
9
+ extend RubyGpg
10
+
11
+ def self.run_command(command, input = nil)
12
+ tmpfile = Puppet::FileSystem::Uniquefile.new('puppet-eyaml-hiera-gpg-input', modes: File::WRONLY | File::BINARY)
13
+ tmpfile.write(input)
14
+ tmpfile.close
15
+
16
+ real_command = "#{command} #{tmpfile.path}"
17
+
18
+ output = Puppet::Util::Execution.execute(real_command)
19
+ tmpfile.unlink
20
+
21
+ if output.exitstatus != 0
22
+ raise "GPG command (#{real_command}) failed with status #{output.exitstatus}: '#{output}'"
23
+ end
24
+
25
+ output
26
+ end
27
+ end
28
+ end
29
+ end
30
+ end
@@ -2,8 +2,8 @@ class Hiera
2
2
  module Backend
3
3
  module Eyaml
4
4
  module Encryptors
5
- module Gpg
6
- VERSION = "0.7.rc1"
5
+ module GpgVersion
6
+ VERSION = '0.7.1'.freeze
7
7
  end
8
8
  end
9
9
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hiera-eyaml-gpg
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.rc1
4
+ version: 0.7.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Simon Hildrew
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-03-01 00:00:00.000000000 Z
11
+ date: 2019-04-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: hiera-eyaml
@@ -24,6 +24,20 @@ dependencies:
24
24
  - - ">="
25
25
  - !ruby/object:Gem::Version
26
26
  version: 1.3.8
27
+ - !ruby/object:Gem::Dependency
28
+ name: puppet
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: 5.5.8
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: 5.5.8
27
41
  description: GPG encryptor for use with hiera-eyaml
28
42
  email:
29
43
  executables: []
@@ -31,13 +45,18 @@ extensions: []
31
45
  extra_rdoc_files: []
32
46
  files:
33
47
  - ".gitignore"
48
+ - ".rubocop.yml"
49
+ - ".travis.yml"
50
+ - CHANGELOG.md
34
51
  - Gemfile
52
+ - HISTORY.md
35
53
  - LICENSE
36
54
  - README.md
37
55
  - Rakefile
38
56
  - hiera-eyaml-gpg.gemspec
39
57
  - lib/hiera/backend/eyaml/encryptors/gpg.rb
40
58
  - lib/hiera/backend/eyaml/encryptors/gpg/eyaml_init.rb
59
+ - lib/hiera/backend/eyaml/encryptors/gpg/puppet_gpg.rb
41
60
  - lib/hiera/backend/eyaml/encryptors/gpg/version.rb
42
61
  - tools/regem.sh
43
62
  homepage: http://github.com/sihil/hiera-eyaml-gpg
@@ -55,12 +74,12 @@ required_ruby_version: !ruby/object:Gem::Requirement
55
74
  version: '0'
56
75
  required_rubygems_version: !ruby/object:Gem::Requirement
57
76
  requirements:
58
- - - ">"
77
+ - - ">="
59
78
  - !ruby/object:Gem::Version
60
- version: 1.3.1
79
+ version: '0'
61
80
  requirements: []
62
81
  rubyforge_project:
63
- rubygems_version: 2.2.2
82
+ rubygems_version: 2.6.14.4
64
83
  signing_key:
65
84
  specification_version: 4
66
85
  summary: Encryption plugin for hiera-eyaml backend for Hiera