chef-sugar 3.6.0 → 4.0.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: '09a4806c8e6896ab3ab09faf047ce442aa01dc56'
4
- data.tar.gz: 149b614267fa4f7ce0872c8aa229cfd57996872a
2
+ SHA256:
3
+ metadata.gz: dd1b41f119b41a34d47609f912c519e23685e7b5eca55f478a5ddfea4451ae6f
4
+ data.tar.gz: 752a3dbe7c9a053a3601898e3573e55fa014a2d51939de993d0cd82d8ada7826
5
5
  SHA512:
6
- metadata.gz: a1598f00e0c1153e2aac52cc7ff3c6f0e1bb966f4fc8a801292ac7f65049563cf935d18fb95aa57d1775096be02cd92c470e65c6fc04655b4614bd97eced6312
7
- data.tar.gz: 8f2a0b21bfced7369184e87fd90ff059f5061eb45bcade2d97b6ba9c86c8b8526e9e728cfecbc9a3618bb457703ea1f40c35e6f1270bb980120ac6d1917545b9
6
+ metadata.gz: 2790325f88839809491ab60f7f269cf61e58789281bd6598b29d753b338ced290daf437e196c25250adb3fa23e92c425e393a8308c939cabee1dc06f18078cae
7
+ data.tar.gz: a9369e0cab82f26db49b63fd80f521323520aa1acbccf30a26d3328970f9623c7ccb1e871fc3d7479d105531748b7562ca09439e2dd3809e575d7cb151be38fa
@@ -6,8 +6,8 @@ provisioner:
6
6
  deprecations_as_errors: true
7
7
 
8
8
  platforms:
9
- - name: centos-6.8
10
- - name: centos-7.3
9
+ - name: centos-6
10
+ - name: centos-7
11
11
  - name: ubuntu-14.04
12
12
  - name: ubuntu-16.04
13
13
 
@@ -1,10 +1,10 @@
1
1
  sudo: false
2
2
 
3
3
  rvm:
4
- - 2.1.9
5
- - 2.2.6
6
- - 2.3.1
7
- - 2.4.0
4
+ - 2.2.9
5
+ - 2.3.6
6
+ - 2.4.3
7
+ - 2.5.0
8
8
 
9
9
  branches:
10
10
  only:
@@ -2,6 +2,13 @@
2
2
 
3
3
  This file is used to list changes made in each version of the chef-sugar cookbook and gem.
4
4
 
5
+ ## v4.0.0 (2018-01-26)
6
+
7
+ - Require Ruby 2.2 or later and Chef 12.10 or later
8
+ - Cookbook now installs the chef-sugar gem via a metadata installation so chef-sugar::default on your runlist is no longer needed
9
+ - Added additional metadata to the cookbook: supports, issue_url, source_url, chef_version.
10
+ - Requirements improved in the readme
11
+
5
12
  ## v3.6.0 (2017-10-26)
6
13
 
7
14
  - Add Ubuntu zesty and debian stretch detection
data/README.md CHANGED
@@ -1,16 +1,27 @@
1
- Chef Sugar
2
- ==========
3
- [![Gem Version](http://img.shields.io/gem/v/chef-sugar.svg?style=flat-square)][gem]
4
- [![Build Status](http://img.shields.io/travis/sethvargo/chef-sugar.svg?style=flat-square)][travis]
1
+ # Chef Sugar
5
2
 
6
- [gem]: https://rubygems.org/gems/chef-sugar
7
- [travis]: http://travis-ci.org/sethvargo/chef-sugar
3
+ [![Gem Version](http://img.shields.io/gem/v/chef-sugar.svg?style=flat-square)][gem] [![Build Status](http://img.shields.io/travis/sethvargo/chef-sugar.svg?style=flat-square)][travis]
8
4
 
9
5
  Chef Sugar is a Gem & Chef Recipe that includes series of helpful syntactic sugars on top of the Chef core and other resources to make a cleaner, more lean recipe DSL, enforce DRY principles, and make writing Chef recipes an awesome and fun experience!
10
6
 
11
- Installation
12
- ------------
13
- If you want to develop/hack on chef-sugar, please see the Contributing.md.
7
+ ## Requirements
8
+
9
+ ### Platforms
10
+
11
+ - any platform
12
+
13
+
14
+ ### Chef
15
+
16
+ - Chef 12.10+
17
+
18
+ ### Cookbooks
19
+
20
+ - none
21
+
22
+ ## Installation
23
+
24
+ If you want to develop/hack on chef-sugar, please see the CONTRIBUTING.md.
14
25
 
15
26
  If you are using Berkshelf, add `chef-sugar` to your `Berksfile`:
16
27
 
@@ -24,20 +35,14 @@ Otherwise, you can use `knife` or download the tarball directly from the communi
24
35
  knife cookbook site install chef-sugar
25
36
  ```
26
37
 
38
+ ## Usage
27
39
 
28
- Usage
29
- -----
30
- In order to use Chef Sugar in your Chef Recipes, you'll first need to include it:
31
-
32
- ```ruby
33
- include_recipe 'chef-sugar::default'
34
- ```
35
-
36
- Alternatively you can put it in a base role or recipe and it will be included subsequently.
40
+ Simply depend on this cookbook in the metadata of your cookbook and the gem will be installed and required..
37
41
 
38
42
  Requiring the Chef Sugar Gem will automatically extend the Recipe DSL, `Chef::Resource`, and `Chef::Provider` with helpful convenience methods.
39
43
 
40
44
  ### Module Method
45
+
41
46
  If you are working outside of the Recipe DSL, you can use the module methods instead of the Recipe DSL. In general, the module methods have the same name as their Recipe-DSL counterparts, but require the node object as a parameter. For example:
42
47
 
43
48
  In a Recipe:
@@ -67,12 +72,12 @@ def only_on_windows(&block)
67
72
  end
68
73
  ```
69
74
 
75
+ ## API
70
76
 
71
- API
72
- ---
73
77
  **Note:** For the most extensive API documentation, please see the YARD documentation.
74
78
 
75
79
  ### Architecture
80
+
76
81
  **Note:** Some of the architecture commands begin with an underscore (`_`) because Ruby does not permit methods to start with a numeric.
77
82
 
78
83
  - `_64_bit?`
@@ -84,6 +89,7 @@ API
84
89
  - `powerpc?`
85
90
 
86
91
  #### Examples
92
+
87
93
  ```ruby
88
94
  execute 'build[my binary]' do
89
95
  command '...'
@@ -92,6 +98,7 @@ end
92
98
  ```
93
99
 
94
100
  ### Cloud
101
+
95
102
  - `azure?`
96
103
  - `cloud?`
97
104
  - `digitalocean?`
@@ -105,6 +112,7 @@ end
105
112
  - `softlayer?`
106
113
 
107
114
  #### Examples
115
+
108
116
  ```ruby
109
117
  template '/tmp/config' do
110
118
  variables(
@@ -115,6 +123,7 @@ end
115
123
  ```
116
124
 
117
125
  ### Core Extensions
126
+
118
127
  **Note:** Core extensions are **not** included by default. You must require the `chef/sugar/core_extensions` module manually to gain access to these APIs:
119
128
 
120
129
  ```ruby
@@ -127,6 +136,7 @@ require 'chef/sugar/core_extensions'
127
136
  - `Object#blank?`
128
137
 
129
138
  #### Examples
139
+
130
140
  ```ruby
131
141
  # Checking version constraints
132
142
  '1.0.0'.satisfies?('~> 1.0') #=> true
@@ -140,11 +150,13 @@ require 'chef/sugar/core_extensions'
140
150
  ```
141
151
 
142
152
  ### Data Bag
153
+
143
154
  - `encrypted_data_bag_item` - a handy DSL method for loading encrypted data bag items the same way you load a regular data bag item; this requires `Chef::Config[:encrypted_data_bag_secret]` is set!
144
155
  - `encrypted_data_bag_item_for_environment` - find the encrypted data bag entry for the current node's Chef environment.
145
156
  - `data_bag_item_for_environment` - find the data bag entry for the current node's Chef environment.
146
157
 
147
158
  #### Examples
159
+
148
160
  ```ruby
149
161
  encrypted_data_bag_item('accounts', 'hipchat')
150
162
  ```
@@ -158,11 +170,13 @@ data_bag_item_for_environment('accounts', 'github')
158
170
  ```
159
171
 
160
172
  ### Docker
173
+
161
174
  Chef Sugar looks for hints to see if the node being converged is a Docker container. When [Ohai supports checking other nodes](https://github.com/opscode/ohai/pull/428), Chef Sugar will automatically pick up the information.
162
175
 
163
176
  - `docker?`
164
177
 
165
178
  #### Examples
179
+
166
180
  ```ruby
167
181
  template '/runme' do
168
182
  only_if { docker?(node) }
@@ -170,6 +184,7 @@ end
170
184
  ```
171
185
 
172
186
  ### Attributes
187
+
173
188
  Chef Sugar adds more Chef-like DSL to attribute definitions. Instead of using the Ruby hash syntax, you can define attributes using nested namespaces. This DSL may be more friendly to non-Ruby developers. It can safely be mixed-and-matched with the standard syntax.
174
189
 
175
190
  ```ruby
@@ -198,11 +213,13 @@ end
198
213
  ```
199
214
 
200
215
  ### Constraints
216
+
201
217
  - `constraints` - create a new constraint (or requirement) that can be used to test version validations.
202
218
  - `chef_version` - (DSL only) a wrapper for `version(Chef::VERSION)`
203
219
  - `version` - create a new version that can be used to test constraint validation.
204
220
 
205
221
  #### Examples
222
+
206
223
  ```ruby
207
224
  # Check if a version is satisfied by a constraint
208
225
  version('1.2.3').satisfies?('~> 1.2.0')
@@ -227,14 +244,18 @@ end
227
244
  ```
228
245
 
229
246
  ### Kernel
247
+
230
248
  - `require_chef_gem` - "safely" require a gem. Loading a gem with Chef is sometimes difficult and confusing. The errors that Chef produces are also sometimes not very intuitive. In the event you require a gem to exist on the system, you can use `require_chef_gem`, which will attempt to require the gem and then produce helpful output if the gem is not installed:
231
249
 
232
- Chef could not load the gem `#{name}'! You may need to install the gem
233
- manually with `gem install #{name}', or include a recipe before you can
234
- use this resource. Please consult the documentation for this cookbook
235
- for proper usage.
250
+ ```
251
+ Chef could not load the gem `#{name}'! You may need to install the gem
252
+ manually with `gem install #{name}', or include a recipe before you can
253
+ use this resource. Please consult the documentation for this cookbook
254
+ for proper usage.
255
+ ```
236
256
 
237
257
  #### Examples
258
+
238
259
  ```ruby
239
260
  # LWRP
240
261
  require_chef_gem 'pry'
@@ -251,11 +272,13 @@ end
251
272
  ```
252
273
 
253
274
  ### Init
275
+
254
276
  - `systemd?` - detect if init system is systemd
255
277
  - `upstart?` - detect if init system is upstart
256
278
  - `runit?` - detect if init system is runit
257
279
 
258
280
  #### Examples
281
+
259
282
  ```ruby
260
283
  systemd_service 'my-service' do
261
284
  description 'My Service'
@@ -276,9 +299,11 @@ end
276
299
  ```
277
300
 
278
301
  ### IP
302
+
279
303
  - `best_ip_for` - determine the best IP address for the given "other" node, preferring local IP addresses over public ones.
280
304
 
281
305
  #### Examples
306
+
282
307
  ```ruby
283
308
  redis = search('node', 'role:redis').first
284
309
 
@@ -298,6 +323,7 @@ Additional methods for the `node` object
298
323
  - `in?` - determine if the node is in the given Chef environment.
299
324
 
300
325
  #### Examples
326
+
301
327
  ```ruby
302
328
  credentials = if node.in?('production')
303
329
  Chef::EncryptedDataBag.new('...')
@@ -311,6 +337,7 @@ node.deep_fetch('apache2', 'config', 'root') => node['apache2']['config']['root'
311
337
  ```
312
338
 
313
339
  ### Platform
340
+
314
341
  - `amazon_linux?`
315
342
  - `centos?`
316
343
  - `linux_mint?`
@@ -326,7 +353,7 @@ node.deep_fetch('apache2', 'config', 'root') => node['apache2']['config']['root'
326
353
  - `nexus?`
327
354
  - `ios_xr?`
328
355
 
329
- There are also a series of dynamically defined matchers that map named operating system release versions and comparison operators in the form "#{platform}\_#{operator}\_#{name}?". For example:
356
+ There are also a series of dynamically defined matchers that map named operating system release versions and comparison operators in the form "#{platform}_#{operator}_#{name}?". For example:
330
357
 
331
358
  - `debian_after_squeeze?`
332
359
  - `linuxmint_after_or_at_olivia?`
@@ -344,6 +371,7 @@ puts Chef::Sugar::Platform.instance_methods
344
371
  ```
345
372
 
346
373
  #### Examples
374
+
347
375
  ```ruby
348
376
  if ubuntu?
349
377
  execute 'apt-get update'
@@ -351,6 +379,7 @@ end
351
379
  ```
352
380
 
353
381
  ### Platform Family
382
+
354
383
  - `arch_linux?`
355
384
  - `debian?`
356
385
  - `fedora?`
@@ -366,6 +395,7 @@ end
366
395
  - `wrlinux?`
367
396
 
368
397
  #### Examples
398
+
369
399
  ```ruby
370
400
  node['attribute'] = if windows?
371
401
  'C:\Foo\BarDrive'
@@ -375,17 +405,20 @@ node['attribute'] = if windows?
375
405
  ```
376
406
 
377
407
  ### Ruby
408
+
378
409
  **Note:** The applies to the Ruby found at `node['languages']['ruby']`.
379
410
 
380
411
  - `ruby_20?`
381
412
  - `ruby_19?`
382
413
 
383
414
  #### Examples
415
+
384
416
  ```ruby
385
417
  log 'This has been known to fail on Ruby 2.0' if ruby_20?
386
418
  ```
387
419
 
388
420
  ### Run Context
421
+
389
422
  - `includes_recipe?` - determines if the current run context includes the recipe
390
423
 
391
424
  ```ruby
@@ -397,6 +430,7 @@ end
397
430
  ```
398
431
 
399
432
  ### Shell
433
+
400
434
  - `which`
401
435
  - `dev_null`
402
436
  - `installed?`
@@ -404,6 +438,7 @@ end
404
438
  - `version_for`
405
439
 
406
440
  #### Examples
441
+
407
442
  ```ruby
408
443
  log "Using `mongo` at `#{which('mongo')}`"
409
444
 
@@ -420,9 +455,11 @@ log "Skipping git install, version is at #{version_for('mongo', '-v')}"
420
455
  ```
421
456
 
422
457
  ### Vagrant
458
+
423
459
  - `vagrant?`
424
460
 
425
461
  #### Examples
462
+
426
463
  ```ruby
427
464
  http_request 'http://...' do
428
465
  not_if { vagrant? }
@@ -430,6 +467,7 @@ end
430
467
  ```
431
468
 
432
469
  ### Virtualization
470
+
433
471
  - `kvm?`
434
472
  - `lxc?`
435
473
  - `virtualbox?`
@@ -437,6 +475,7 @@ end
437
475
  - `openvz?`
438
476
 
439
477
  #### Examples
478
+
440
479
  ```ruby
441
480
  service 'ntpd' do
442
481
  action [:enable, :start]
@@ -445,11 +484,13 @@ end
445
484
  ```
446
485
 
447
486
  ### Filters
487
+
448
488
  - `at_compile_time` - accepts a block of resources to run at compile time
449
489
  - `before` - insert resource in the collection before the given resource
450
490
  - `after` - insert resource in the collection after the given resource
451
491
 
452
492
  #### Examples
493
+
453
494
  ```ruby
454
495
  at_compile_time do
455
496
  package 'apache2'
@@ -473,9 +514,8 @@ after 'service[apache2]' do
473
514
  end
474
515
  ```
475
516
 
517
+ ## License & Authors
476
518
 
477
- License & Authors
478
- -----------------
479
519
  - Author: Seth Vargo (sethvargo@gmail.com)
480
520
 
481
521
  ```text
@@ -493,3 +533,6 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
493
533
  See the License for the specific language governing permissions and
494
534
  limitations under the License.
495
535
  ```
536
+
537
+ [gem]: https://rubygems.org/gems/chef-sugar
538
+ [travis]: http://travis-ci.org/sethvargo/chef-sugar
@@ -17,7 +17,7 @@ Gem::Specification.new do |spec|
17
17
  spec.homepage = 'https://github.com/sethvargo/chef-sugar'
18
18
  spec.license = 'Apache 2.0'
19
19
 
20
- spec.required_ruby_version = '>= 2.1'
20
+ spec.required_ruby_version = '>= 2.2.2'
21
21
 
22
22
  spec.files = `git ls-files`.split($/)
23
23
  spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
@@ -25,10 +25,9 @@ Gem::Specification.new do |spec|
25
25
  spec.require_paths = ['lib']
26
26
 
27
27
  spec.add_development_dependency 'bundler', '~> 1.3'
28
- spec.add_development_dependency 'rack', '~> 1.6'
29
28
  spec.add_development_dependency 'rake'
30
29
 
31
- spec.add_development_dependency 'chefspec', '~> 4.2'
32
- spec.add_development_dependency 'test-kitchen', '~> 1.3'
33
- spec.add_development_dependency 'kitchen-vagrant', '~> 0.15'
30
+ spec.add_development_dependency 'chefspec'
31
+ spec.add_development_dependency 'test-kitchen'
32
+ spec.add_development_dependency 'kitchen-vagrant'
34
33
  end
@@ -16,6 +16,6 @@
16
16
 
17
17
  class Chef
18
18
  module Sugar
19
- VERSION = '3.6.0'
19
+ VERSION = '4.0.0'
20
20
  end
21
21
  end
@@ -1 +1 @@
1
- require "chef-sugar" if Gem::Requirement.new(">= 12.10.48").satisfied_by?(Gem::Version.new(Chef::VERSION))
1
+ require "chef/sugar"
@@ -1,7 +1,7 @@
1
1
  name 'chef-sugar'
2
2
  maintainer 'Seth Vargo'
3
3
  maintainer_email 'sethvargo@gmail.com'
4
- license 'Apache 2.0'
4
+ license 'Apache-2.0'
5
5
  description 'Installs chef-sugar. Please see the chef-sugar ' \
6
6
  'Ruby gem for more information.'
7
7
  long_description <<-EOH
@@ -17,4 +17,8 @@ EOH
17
17
  require File.expand_path('../lib/chef/sugar/version', __FILE__)
18
18
  version Chef::Sugar::VERSION
19
19
 
20
- gem "chef-sugar" if Gem::Requirement.new(">= 12.10.48").satisfied_by?(Gem::Version.new(Chef::VERSION))
20
+ supports 'any'
21
+ issues_url 'https://github.com/sethvargo/chef-sugar/issues'
22
+ source_url 'https://github.com/sethvargo/chef-sugar'
23
+ chef_version '>= 12.10.48' if respond_to?(:chef_version)
24
+ gem 'chef-sugar'
@@ -17,18 +17,4 @@
17
17
  # limitations under the License.
18
18
  #
19
19
 
20
- gem_version = run_context.cookbook_collection[cookbook_name].metadata.version
21
-
22
- if Chef::Resource::ChefGem.instance_methods(false).include?(:compile_time)
23
- chef_gem 'chef-sugar' do
24
- version gem_version
25
- compile_time true
26
- end
27
- else
28
- chef_gem 'chef-sugar' do
29
- version gem_version
30
- action :nothing
31
- end.run_action(:install)
32
- end
33
-
34
- require 'chef/sugar'
20
+ Chef::Log.warn('chef-sugar::default no longer needs to be included in your runlist. Instead simply depend on the chef-sugar cookbook and the gem will be intalled and loaded automatically.')
@@ -1,10 +1,9 @@
1
1
  require 'spec_helper'
2
2
 
3
3
  describe 'chef-sugar::default' do
4
- let(:chef_run) { ChefSpec::SoloRunner.converge(described_recipe) }
4
+ let(:chef_run) { ChefSpec::SoloRunner.new(platform: 'ubuntu', version: '16.04').converge(described_recipe) }
5
5
 
6
- it 'installs the chef gem' do
7
- expect(chef_run).to install_chef_gem('chef-sugar')
8
- .with(version: Chef::Sugar::VERSION)
6
+ it 'converges successfully' do
7
+ expect { :chef_run }.to_not raise_error
9
8
  end
10
9
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: chef-sugar
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.6.0
4
+ version: 4.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Seth Vargo
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-10-26 00:00:00.000000000 Z
11
+ date: 2018-01-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -24,20 +24,6 @@ dependencies:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
26
  version: '1.3'
27
- - !ruby/object:Gem::Dependency
28
- name: rack
29
- requirement: !ruby/object:Gem::Requirement
30
- requirements:
31
- - - "~>"
32
- - !ruby/object:Gem::Version
33
- version: '1.6'
34
- type: :development
35
- prerelease: false
36
- version_requirements: !ruby/object:Gem::Requirement
37
- requirements:
38
- - - "~>"
39
- - !ruby/object:Gem::Version
40
- version: '1.6'
41
27
  - !ruby/object:Gem::Dependency
42
28
  name: rake
43
29
  requirement: !ruby/object:Gem::Requirement
@@ -56,44 +42,44 @@ dependencies:
56
42
  name: chefspec
57
43
  requirement: !ruby/object:Gem::Requirement
58
44
  requirements:
59
- - - "~>"
45
+ - - ">="
60
46
  - !ruby/object:Gem::Version
61
- version: '4.2'
47
+ version: '0'
62
48
  type: :development
63
49
  prerelease: false
64
50
  version_requirements: !ruby/object:Gem::Requirement
65
51
  requirements:
66
- - - "~>"
52
+ - - ">="
67
53
  - !ruby/object:Gem::Version
68
- version: '4.2'
54
+ version: '0'
69
55
  - !ruby/object:Gem::Dependency
70
56
  name: test-kitchen
71
57
  requirement: !ruby/object:Gem::Requirement
72
58
  requirements:
73
- - - "~>"
59
+ - - ">="
74
60
  - !ruby/object:Gem::Version
75
- version: '1.3'
61
+ version: '0'
76
62
  type: :development
77
63
  prerelease: false
78
64
  version_requirements: !ruby/object:Gem::Requirement
79
65
  requirements:
80
- - - "~>"
66
+ - - ">="
81
67
  - !ruby/object:Gem::Version
82
- version: '1.3'
68
+ version: '0'
83
69
  - !ruby/object:Gem::Dependency
84
70
  name: kitchen-vagrant
85
71
  requirement: !ruby/object:Gem::Requirement
86
72
  requirements:
87
- - - "~>"
73
+ - - ">="
88
74
  - !ruby/object:Gem::Version
89
- version: '0.15'
75
+ version: '0'
90
76
  type: :development
91
77
  prerelease: false
92
78
  version_requirements: !ruby/object:Gem::Requirement
93
79
  requirements:
94
- - - "~>"
80
+ - - ">="
95
81
  - !ruby/object:Gem::Version
96
- version: '0.15'
82
+ version: '0'
97
83
  description: A series of helpful sugar of the Chef core and other resources to make
98
84
  a cleaner, more lean recipe DSL, enforce DRY principles, and make writing Chef recipes
99
85
  an awesome experience!
@@ -176,7 +162,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
176
162
  requirements:
177
163
  - - ">="
178
164
  - !ruby/object:Gem::Version
179
- version: '2.1'
165
+ version: 2.2.2
180
166
  required_rubygems_version: !ruby/object:Gem::Requirement
181
167
  requirements:
182
168
  - - ">="
@@ -184,7 +170,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
184
170
  version: '0'
185
171
  requirements: []
186
172
  rubyforge_project:
187
- rubygems_version: 2.6.13
173
+ rubygems_version: 2.7.4
188
174
  signing_key:
189
175
  specification_version: 4
190
176
  summary: A collection of helper methods and modules that make working with Chef recipes