chef-sugar-ng 5.0.2 → 5.1.11

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
2
  SHA256:
3
- metadata.gz: fdae87d2e69fb4009ed24d40f26826f24257777832a5e5b6d1de73af3e803718
4
- data.tar.gz: 75f4699115e707e427066907a4b91a6741faac07b171cc4b50e6ecaa06b47cf6
3
+ metadata.gz: 6f3a0d73198f6a95304bffb888e71b8a1cd8624deda4b8d26d72fc8a471d5b0c
4
+ data.tar.gz: ab5ec28695feaeabb309a0512b8abc9ba2040373466a24f8bd586baa1afb9cb1
5
5
  SHA512:
6
- metadata.gz: 330f5adfbf5d476f4f7afe141bb9a38419e7e17a3430a95f02cf6f8f5076018ddb568f3f61238816f424c3d0da3201a9f84af3419b67b5d3705a5e99a6e21cb3
7
- data.tar.gz: ebc06325792ddfed441512dc5fbd1ddf190e3480b0f50a2c60bb71d8a23d435b7d9eb8c9ae851846e517e8f937e84fb40827ecb94205690d46b51724a4e0fc3c
6
+ metadata.gz: 0f43ba45941a1656b841bc262593d62a42a8b9171de825b20fc299f2e03d5ecc358b7406ccb021bf00e60904704df264c5c1a9c750d0dc7411135aae1486f2ae
7
+ data.tar.gz: 1f5f043631164b7c7b68d30c0fa4b41a39281e8dcb75e44cd668af608245a2d8ad44f51e2401184dfb131f26d9572d34da512c140b02c71f5ceb44970856b52e
@@ -19,153 +19,158 @@ class Chef
19
19
  module Architecture
20
20
  extend self
21
21
 
22
- #
23
- # Determine if the current architecture is 64-bit
24
- #
25
- # @return [Boolean]
26
- #
27
- def _64_bit?(node)
28
- %w(amd64 x86_64 ppc64 ppc64le s390x ia64 sparc64 aarch64 arch64 arm64 sun4v sun4u s390x)
29
- .include?(node['kernel']['machine']) || ( node['kernel']['bits'] == '64' )
30
- end
31
-
32
- #
33
- # Determine if the current architecture is 32-bit
34
- #
35
- # @todo Make this more than "not 64-bit"
36
- #
37
- # @return [Boolean]
38
- #
39
- def _32_bit?(node)
40
- !_64_bit?(node)
41
- end
42
-
43
- #
44
- # Determine if the current architecture is i386
45
- #
46
- # @return [Boolean]
47
- #
48
- def i386?(node)
49
- _32_bit?(node) && intel?(node)
50
- end
51
-
52
- #
53
- # Determine if the current architecture is Intel.
54
- #
55
- # @return [Boolean]
56
- #
57
- def intel?(node)
58
- %w(i86pc i386 x86_64 amd64 i686)
59
- .include?(node['kernel']['machine'])
60
- end
61
-
62
- #
63
- # Determine if the current architecture is SPARC.
64
- #
65
- # @return [Boolean]
66
- #
67
- def sparc?(node)
68
- %w(sun4u sun4v)
69
- .include?(node['kernel']['machine'])
70
- end
71
-
72
- #
73
- # Determine if the current architecture is Powerpc64 Big Endian
74
- #
75
- # @return [Boolean]
76
- #
77
- def ppc64?(node)
78
- %w(ppc64)
79
- .include?(node['kernel']['machine'])
80
- end
81
-
82
- #
83
- # Determine if the current architecture is Powerpc64 Little Endian
84
- #
85
- # @return [Boolean]
86
- #
87
- def ppc64le?(node)
88
- %w(ppc64le)
89
- .include?(node['kernel']['machine'])
90
- end
91
-
92
- #
93
- # Determine if the current architecture is PowerPC
94
- #
95
- # @return [Boolean]
96
- #
97
- def powerpc?(node)
98
- %w(powerpc)
99
- .include?(node['kernel']['machine'])
100
- end
101
-
102
- #
103
- # Determine if the current architecture is ARM with Hard Float
104
- #
105
- # @return [Boolean]
106
- #
107
- def armhf?(node)
108
- # Add more arm variants as needed here
109
- %w(armv6l armv7l)
110
- .include?(node['kernel']['machine'])
111
- end
112
-
113
- #
114
- # Determine if the current architecture is AArch64
115
- #
116
- # @return [Boolean]
117
- #
118
- def aarch64?(node)
119
- # Add more arm variants as needed here
120
- %w(aarch64)
121
- .include?(node['kernel']['machine'])
122
- end
123
-
124
- #
125
- # Determine if the current architecture is s390x
126
- #
127
- # @return [Boolean]
128
- #
129
- def s390x?(node)
130
- %w(s390x)
131
- .include?(node['kernel']['machine'])
22
+ # these helpers have been moved to core-chef
23
+ if !defined?(Chef::VERSION) || Gem::Requirement.new("< 15.4.70").satisfied_by?(Gem::Version.new(Chef::VERSION))
24
+ #
25
+ # Determine if the current architecture is 64-bit
26
+ #
27
+ # @return [Boolean]
28
+ #
29
+ def _64_bit?(node)
30
+ %w(amd64 x86_64 ppc64 ppc64le s390x ia64 sparc64 aarch64 arch64 arm64 sun4v sun4u s390x)
31
+ .include?(node['kernel']['machine']) || ( node['kernel']['bits'] == '64' )
32
+ end
33
+
34
+ #
35
+ # Determine if the current architecture is 32-bit
36
+ #
37
+ # @todo Make this more than "not 64-bit"
38
+ #
39
+ # @return [Boolean]
40
+ #
41
+ def _32_bit?(node)
42
+ !_64_bit?(node)
43
+ end
44
+
45
+ #
46
+ # Determine if the current architecture is i386
47
+ #
48
+ # @return [Boolean]
49
+ #
50
+ def i386?(node)
51
+ _32_bit?(node) && intel?(node)
52
+ end
53
+
54
+ #
55
+ # Determine if the current architecture is Intel.
56
+ #
57
+ # @return [Boolean]
58
+ #
59
+ def intel?(node)
60
+ %w(i86pc i386 x86_64 amd64 i686)
61
+ .include?(node['kernel']['machine'])
62
+ end
63
+
64
+ #
65
+ # Determine if the current architecture is SPARC.
66
+ #
67
+ # @return [Boolean]
68
+ #
69
+ def sparc?(node)
70
+ %w(sun4u sun4v)
71
+ .include?(node['kernel']['machine'])
72
+ end
73
+
74
+ #
75
+ # Determine if the current architecture is Powerpc64 Big Endian
76
+ #
77
+ # @return [Boolean]
78
+ #
79
+ def ppc64?(node)
80
+ %w(ppc64)
81
+ .include?(node['kernel']['machine'])
82
+ end
83
+
84
+ #
85
+ # Determine if the current architecture is Powerpc64 Little Endian
86
+ #
87
+ # @return [Boolean]
88
+ #
89
+ def ppc64le?(node)
90
+ %w(ppc64le)
91
+ .include?(node['kernel']['machine'])
92
+ end
93
+
94
+ #
95
+ # Determine if the current architecture is PowerPC
96
+ #
97
+ # @return [Boolean]
98
+ #
99
+ def powerpc?(node)
100
+ %w(powerpc)
101
+ .include?(node['kernel']['machine'])
102
+ end
103
+
104
+ #
105
+ # Determine if the current architecture is ARM with Hard Float
106
+ #
107
+ # @return [Boolean]
108
+ #
109
+ def armhf?(node)
110
+ # Add more arm variants as needed here
111
+ %w(armv6l armv7l)
112
+ .include?(node['kernel']['machine'])
113
+ end
114
+
115
+ #
116
+ # Determine if the current architecture is AArch64
117
+ #
118
+ # @return [Boolean]
119
+ #
120
+ def aarch64?(node)
121
+ # Add more arm variants as needed here
122
+ %w(aarch64)
123
+ .include?(node['kernel']['machine'])
124
+ end
125
+
126
+ #
127
+ # Determine if the current architecture is s390x
128
+ #
129
+ # @return [Boolean]
130
+ #
131
+ def s390x?(node)
132
+ %w(s390x)
133
+ .include?(node['kernel']['machine'])
134
+ end
132
135
  end
133
136
  end
134
137
 
135
138
  module DSL
136
- # @see Chef::Sugar::Architecture#_64_bit?
137
- def _64_bit?; Chef::Sugar::Architecture._64_bit?(node); end
139
+ if !defined?(Chef::VERSION) || Gem::Requirement.new("< 15.4.70").satisfied_by?(Gem::Version.new(Chef::VERSION))
140
+ # @see Chef::Sugar::Architecture#_64_bit?
141
+ def _64_bit?; Chef::Sugar::Architecture._64_bit?(node); end
138
142
 
139
- # @see Chef::Sugar::Architecture#_32_bit?
140
- def _32_bit?; Chef::Sugar::Architecture._32_bit?(node); end
143
+ # @see Chef::Sugar::Architecture#_32_bit?
144
+ def _32_bit?; Chef::Sugar::Architecture._32_bit?(node); end
141
145
 
142
- # @see Chef::Sugar::Architecture#intel?
143
- def i386?; Chef::Sugar::Architecture.i386?(node); end
146
+ # @see Chef::Sugar::Architecture#intel?
147
+ def i386?; Chef::Sugar::Architecture.i386?(node); end
144
148
 
145
- # @see Chef::Sugar::Architecture#intel?
146
- def intel?; Chef::Sugar::Architecture.intel?(node); end
149
+ # @see Chef::Sugar::Architecture#intel?
150
+ def intel?; Chef::Sugar::Architecture.intel?(node); end
147
151
 
148
- # @see Chef::Sugar::Architecture#sparc?
149
- def sparc?; Chef::Sugar::Architecture.sparc?(node); end
152
+ # @see Chef::Sugar::Architecture#sparc?
153
+ def sparc?; Chef::Sugar::Architecture.sparc?(node); end
150
154
 
151
- # @see Chef::Sugar::Architecture#ppc64?
152
- def ppc64?; Chef::Sugar::Architecture.ppc64?(node); end
155
+ # @see Chef::Sugar::Architecture#ppc64?
156
+ def ppc64?; Chef::Sugar::Architecture.ppc64?(node); end
153
157
 
154
- # @see Chef::Sugar::Architecture#ppc64le?
155
- def ppc64le?; Chef::Sugar::Architecture.ppc64le?(node); end
158
+ # @see Chef::Sugar::Architecture#ppc64le?
159
+ def ppc64le?; Chef::Sugar::Architecture.ppc64le?(node); end
156
160
 
157
- # @see Chef::Sugar::Architecture#powerpc?
158
- def powerpc?; Chef::Sugar::Architecture.powerpc?(node); end
161
+ # @see Chef::Sugar::Architecture#powerpc?
162
+ def powerpc?; Chef::Sugar::Architecture.powerpc?(node); end
159
163
 
160
- # @see Chef::Sugar::Architecture#arm?
161
- def armhf?; Chef::Sugar::Architecture.armhf?(node); end
164
+ # @see Chef::Sugar::Architecture#arm?
165
+ def armhf?; Chef::Sugar::Architecture.armhf?(node); end
162
166
 
163
- # @see Chef::Sugar::Architecture#aarch64?
164
- def aarch64?; Chef::Sugar::Architecture.aarch64?(node); end
167
+ # @see Chef::Sugar::Architecture#aarch64?
168
+ def aarch64?; Chef::Sugar::Architecture.aarch64?(node); end
165
169
 
166
- # @see Chef::Sugar::Architecture#s390x?
167
- def s390x?; Chef::Sugar::Architecture.s390x?(node); end
170
+ # @see Chef::Sugar::Architecture#s390x?
171
+ def s390x?; Chef::Sugar::Architecture.s390x?(node); end
168
172
 
173
+ end
169
174
  end
170
175
  end
171
176
  end
@@ -0,0 +1,45 @@
1
+ #
2
+ # Licensed under the Apache License, Version 2.0 (the "License");
3
+ # you may not use this file except in compliance with the License.
4
+ # You may obtain a copy of the License at
5
+ #
6
+ # http://www.apache.org/licenses/LICENSE-2.0
7
+ #
8
+ # Unless required by applicable law or agreed to in writing, software
9
+ # distributed under the License is distributed on an "AS IS" BASIS,
10
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11
+ # See the License for the specific language governing permissions and
12
+ # limitations under the License.
13
+ #
14
+
15
+ if defined?(Chef::Deprecated::Base)
16
+ class Chef
17
+ class Deprecated
18
+ class ChefSugar < Base
19
+ def id
20
+ 28
21
+ end
22
+ def target
23
+ "chef_sugar.html"
24
+ end
25
+ end
26
+ end
27
+ end
28
+ end
29
+
30
+ class Chef
31
+ module Sugar
32
+ module Deprecation
33
+ if defined?(Chef::Deprecated::Base)
34
+ def deprecated(message)
35
+ Chef.deprecated(:chef_sugar, message)
36
+ end
37
+ else
38
+ def deprecated(message)
39
+ Chef::Log.warn(message)
40
+ end
41
+ end
42
+ extend self
43
+ end
44
+ end
45
+ end
@@ -19,22 +19,27 @@ class Chef
19
19
  module Docker
20
20
  extend self
21
21
 
22
- #
23
- # Returns true if the current node is a docker container.
24
- #
25
- # @param [Chef::Node] node
26
- # the node to check
27
- #
28
- # @return [Boolean]
29
- #
30
- def docker?(node)
31
- File.exist?('/.dockerinit') || File.exist?('/.dockerenv')
22
+ # these helpers have been moved to core chef
23
+ if !defined?(Chef::VERSION) || Gem::Requirement.new("< 15.4.70").satisfied_by?(Gem::Version.new(Chef::VERSION))
24
+ #
25
+ # Returns true if the current node is a docker container.
26
+ #
27
+ # @param [Chef::Node] node
28
+ # the node to check
29
+ #
30
+ # @return [Boolean]
31
+ #
32
+ def docker?(node)
33
+ File.exist?('/.dockerinit') || File.exist?('/.dockerenv')
34
+ end
32
35
  end
33
36
  end
34
37
 
35
38
  module DSL
36
- # @see Chef::Sugar::Docker#docker?
37
- def docker?; Chef::Sugar::Docker.docker?(node); end
39
+ if !defined?(Chef::VERSION) || Gem::Requirement.new("< 15.4.70").satisfied_by?(Gem::Version.new(Chef::VERSION))
40
+ # @see Chef::Sugar::Docker#docker?
41
+ def docker?; Chef::Sugar::Docker.docker?(node); end
42
+ end
38
43
  end
39
44
  end
40
45
  end
@@ -19,22 +19,27 @@ class Chef
19
19
  module Kitchen
20
20
  extend self
21
21
 
22
- #
23
- # Returns true if the current node is provisioned by Test Kitchen.
24
- #
25
- # @param [Chef::Node] node
26
- # the node to check
27
- #
28
- # @return [Boolean]
29
- #
30
- def kitchen?(node)
31
- !ENV['TEST_KITCHEN'].nil?
22
+ # these helpers have been moved to core-chef
23
+ if !defined?(Chef::VERSION) || Gem::Requirement.new("< 15.4.70").satisfied_by?(Gem::Version.new(Chef::VERSION))
24
+ #
25
+ # Returns true if the current node is provisioned by Test Kitchen.
26
+ #
27
+ # @param [Chef::Node] node
28
+ # the node to check
29
+ #
30
+ # @return [Boolean]
31
+ #
32
+ def kitchen?(node)
33
+ !ENV['TEST_KITCHEN'].nil?
34
+ end
32
35
  end
33
36
  end
34
37
 
35
38
  module DSL
36
- # @see Chef::Sugar::Kitchen#kitchen?
37
- def kitchen?; Chef::Sugar::Kitchen.kitchen?(node); end
39
+ if !defined?(Chef::VERSION) || Gem::Requirement.new("< 15.4.70").satisfied_by?(Gem::Version.new(Chef::VERSION))
40
+ # @see Chef::Sugar::Kitchen#kitchen?
41
+ def kitchen?; Chef::Sugar::Kitchen.kitchen?(node); end
42
+ end
38
43
  end
39
44
  end
40
45
  end
@@ -14,6 +14,8 @@
14
14
  # limitations under the License.
15
15
  #
16
16
 
17
+ require_relative "deprecation"
18
+
17
19
  class Chef
18
20
  class Node
19
21
  class AttributeDoesNotExistError < StandardError
@@ -36,6 +38,7 @@ EOH
36
38
  # @return [Boolean]
37
39
  #
38
40
  def in?(environment)
41
+ Chef::Sugar::Deprecation.deprecated "the chef-sugar node.in? method is deprecated"
39
42
  environment === chef_environment
40
43
  end
41
44
 
@@ -49,6 +52,7 @@ EOH
49
52
  # @see [Node#deep_fetch!]
50
53
  #
51
54
  def deep_fetch(*keys)
55
+ Chef::Sugar::Deprecation.deprecated "the chef-sugar deep_fetch method is deprecated and should be replaced by node.read"
52
56
  deep_fetch!(*keys)
53
57
  rescue NoMethodError, AttributeDoesNotExistError
54
58
  nil
@@ -71,6 +75,7 @@ EOH
71
75
  # @return [Object]
72
76
  #
73
77
  def deep_fetch!(*keys)
78
+ Chef::Sugar::Deprecation.deprecated "the chef-sugar deep_fetch method is deprecated and should be replaced by node.read!"
74
79
  keys.map!(&:to_s)
75
80
 
76
81
  keys.inject(attributes.to_hash) do |hash, key|
@@ -133,6 +138,7 @@ EOH
133
138
  # to prevent accidential method chaining if the block isn't closed
134
139
  #
135
140
  def namespace(*args, &block)
141
+ Chef::Sugar::Deprecation.deprecated "the chef-sugar attribute namespace setting is deprecated, please use traditional chef attribute notation"
136
142
  @namespace_options = namespace_options.merge(args.last.is_a?(Hash) ? args.pop : {})
137
143
 
138
144
  keys = args.map(&:to_s)
@@ -121,186 +121,190 @@ class Chef
121
121
  end
122
122
  end
123
123
 
124
- #
125
- # Determine if the current node is linux mint.
126
- #
127
- # @param [Chef::Node] node
128
- #
129
- # @return [Boolean]
130
- #
131
- def linux_mint?(node)
132
- node['platform'] == 'linuxmint'
133
- end
134
- alias_method :mint?, :linux_mint?
124
+ # these helpers have been moved to core chef
125
+ if !defined?(Chef::VERSION) || Gem::Requirement.new("< 15.4.70").satisfied_by?(Gem::Version.new(Chef::VERSION))
126
+ #
127
+ # Determine if the current node is linux mint.
128
+ #
129
+ # @param [Chef::Node] node
130
+ #
131
+ # @return [Boolean]
132
+ #
133
+ def linux_mint?(node)
134
+ node['platform'] == 'linuxmint'
135
+ end
136
+ alias_method :mint?, :linux_mint?
135
137
 
136
- #
137
- # Determine if the current node is ubuntu.
138
- #
139
- # @param [Chef::Node] node
140
- #
141
- # @return [Boolean]
142
- #
143
- def ubuntu?(node)
144
- node['platform'] == 'ubuntu'
145
- end
138
+ #
139
+ # Determine if the current node is ubuntu.
140
+ #
141
+ # @param [Chef::Node] node
142
+ #
143
+ # @return [Boolean]
144
+ #
145
+ def ubuntu?(node)
146
+ node['platform'] == 'ubuntu'
147
+ end
146
148
 
147
- #
148
- # Determine if the current node is debian (platform, not platform_family).
149
- #
150
- # @param [Chef::Node] node
151
- #
152
- # @return [Boolean]
153
- #
154
- def debian_platform?(node)
155
- node['platform'] == 'debian'
156
- end
149
+ #
150
+ # Determine if the current node is debian (platform, not platform_family).
151
+ #
152
+ # @param [Chef::Node] node
153
+ #
154
+ # @return [Boolean]
155
+ #
156
+ def debian_platform?(node)
157
+ node['platform'] == 'debian'
158
+ end
157
159
 
158
- #
159
- # Determine if the current node is amazon linux.
160
- #
161
- # @param [Chef::Node] node
162
- #
163
- # @return [Boolean]
164
- #
165
- def amazon_linux?(node)
166
- node['platform'] == 'amazon'
167
- end
168
- alias_method :amazon?, :amazon_linux?
160
+ #
161
+ # Determine if the current node is amazon linux.
162
+ #
163
+ # @param [Chef::Node] node
164
+ #
165
+ # @return [Boolean]
166
+ #
167
+ def amazon_linux?(node)
168
+ node['platform'] == 'amazon'
169
+ end
170
+ alias_method :amazon?, :amazon_linux?
169
171
 
170
- #
171
- # Determine if the current node is centos.
172
- #
173
- # @param [Chef::Node] node
174
- #
175
- # @return [Boolean]
176
- #
177
- def centos?(node)
178
- node['platform'] == 'centos'
179
- end
172
+ #
173
+ # Determine if the current node is centos.
174
+ #
175
+ # @param [Chef::Node] node
176
+ #
177
+ # @return [Boolean]
178
+ #
179
+ def centos?(node)
180
+ node['platform'] == 'centos'
181
+ end
180
182
 
181
- #
182
- # Determine if the current node is oracle linux.
183
- #
184
- # @param [Chef::Node] node
185
- #
186
- # @return [Boolean]
187
- #
188
- def oracle_linux?(node)
189
- node['platform'] == 'oracle'
190
- end
191
- alias_method :oracle?, :oracle_linux?
183
+ #
184
+ # Determine if the current node is oracle linux.
185
+ #
186
+ # @param [Chef::Node] node
187
+ #
188
+ # @return [Boolean]
189
+ #
190
+ def oracle_linux?(node)
191
+ node['platform'] == 'oracle'
192
+ end
193
+ alias_method :oracle?, :oracle_linux?
192
194
 
193
- #
194
- # Determine if the current node is scientific linux.
195
- #
196
- # @param [Chef::Node] node
197
- #
198
- # @return [Boolean]
199
- #
200
- def scientific_linux?(node)
201
- node['platform'] == 'scientific'
202
- end
203
- alias_method :scientific?, :scientific_linux?
195
+ #
196
+ # Determine if the current node is scientific linux.
197
+ #
198
+ # @param [Chef::Node] node
199
+ #
200
+ # @return [Boolean]
201
+ #
202
+ def scientific_linux?(node)
203
+ node['platform'] == 'scientific'
204
+ end
205
+ alias_method :scientific?, :scientific_linux?
204
206
 
205
- #
206
- # Determine if the current node is redhat enterprise.
207
- #
208
- # @param [Chef::Node] node
209
- #
210
- # @return [Boolean]
211
- #
212
- def redhat_enterprise_linux?(node)
213
- node['platform'] == 'redhat'
214
- end
215
- alias_method :redhat_enterprise?, :redhat_enterprise_linux?
207
+ #
208
+ # Determine if the current node is redhat enterprise.
209
+ #
210
+ # @param [Chef::Node] node
211
+ #
212
+ # @return [Boolean]
213
+ #
214
+ def redhat_enterprise_linux?(node)
215
+ node['platform'] == 'redhat'
216
+ end
217
+ alias_method :redhat_enterprise?, :redhat_enterprise_linux?
216
218
 
217
- #
218
- # Determine if the current node is fedora (platform, not platform_family).
219
- #
220
- # @param [Chef::Node] node
221
- #
222
- # @return [Boolean]
223
- #
224
- def fedora_platform?(node)
225
- node['platform'] == 'fedora'
226
- end
219
+ #
220
+ # Determine if the current node is fedora (platform, not platform_family).
221
+ #
222
+ # @param [Chef::Node] node
223
+ #
224
+ # @return [Boolean]
225
+ #
226
+ def fedora_platform?(node)
227
+ node['platform'] == 'fedora'
228
+ end
227
229
 
228
- #
229
- # Determine if the current node is solaris2
230
- #
231
- # @param [Chef::Node] node
232
- #
233
- # @return [Boolean]
234
- #
235
- def solaris2?(node)
236
- node['platform'] == 'solaris2'
237
- end
238
- alias_method :solaris?, :solaris2?
230
+ #
231
+ # Determine if the current node is solaris2
232
+ #
233
+ # @param [Chef::Node] node
234
+ #
235
+ # @return [Boolean]
236
+ #
237
+ def solaris2?(node)
238
+ node['platform'] == 'solaris2'
239
+ end
240
+ alias_method :solaris?, :solaris2?
239
241
 
240
- #
241
- # Determine if the current node is aix
242
- #
243
- # @param [Chef::Node] node
244
- #
245
- # @return [Boolean]
246
- #
247
- def aix?(node)
248
- node['platform'] == 'aix'
249
- end
242
+ #
243
+ # Determine if the current node is aix
244
+ #
245
+ # @param [Chef::Node] node
246
+ #
247
+ # @return [Boolean]
248
+ #
249
+ def aix?(node)
250
+ node['platform'] == 'aix'
251
+ end
250
252
 
251
- #
252
- # Determine if the current node is smartos
253
- #
254
- # @param [Chef::Node] node
255
- #
256
- # @return [Boolean]
257
- #
258
- def smartos?(node)
259
- node['platform'] == 'smartos'
260
- end
253
+ #
254
+ # Determine if the current node is smartos
255
+ #
256
+ # @param [Chef::Node] node
257
+ #
258
+ # @return [Boolean]
259
+ #
260
+ def smartos?(node)
261
+ node['platform'] == 'smartos'
262
+ end
261
263
 
262
- #
263
- # Determine if the current node is omnios
264
- #
265
- # @param [Chef::Node] node
266
- #
267
- # @return [Boolean]
268
- #
269
- def omnios?(node)
270
- node['platform'] == 'omnios'
271
- end
264
+ #
265
+ # Determine if the current node is omnios
266
+ #
267
+ # @param [Chef::Node] node
268
+ #
269
+ # @return [Boolean]
270
+ #
271
+ def omnios?(node)
272
+ node['platform'] == 'omnios'
273
+ end
272
274
 
273
- #
274
- # Determine if the current node is raspbian
275
- #
276
- # @param [Chef::Node] node
277
- #
278
- # @return [Boolean]
279
- #
280
- def raspbian?(node)
281
- node['platform'] == 'raspbian'
282
- end
275
+ #
276
+ # Determine if the current node is raspbian
277
+ #
278
+ # @param [Chef::Node] node
279
+ #
280
+ # @return [Boolean]
281
+ #
282
+ def raspbian?(node)
283
+ node['platform'] == 'raspbian'
284
+ end
283
285
 
284
- #
285
- # Determine if the current node is a Cisco nexus device
286
- #
287
- # @param [Chef::Node] node
288
- #
289
- # @return [Boolean]
290
- #
291
- def nexus?(node)
292
- node['platform'] == 'nexus'
293
- end
286
+ #
287
+ # Determine if the current node is a Cisco nexus device
288
+ #
289
+ # @param [Chef::Node] node
290
+ #
291
+ # @return [Boolean]
292
+ #
293
+ def nexus?(node)
294
+ node['platform'] == 'nexus'
295
+ end
296
+
297
+ #
298
+ # Determine if the current node is a Cisco IOS-XR device
299
+ #
300
+ # @param [Chef::Node] node
301
+ #
302
+ # @return [Boolean]
303
+ #
304
+ def ios_xr?(node)
305
+ node['platform'] == 'ios_xr'
306
+ end
294
307
 
295
- #
296
- # Determine if the current node is a Cisco IOS-XR device
297
- #
298
- # @param [Chef::Node] node
299
- #
300
- # @return [Boolean]
301
- #
302
- def ios_xr?(node)
303
- node['platform'] == 'ios_xr'
304
308
  end
305
309
 
306
310
  #
@@ -19,152 +19,157 @@ class Chef
19
19
  module PlatformFamily
20
20
  extend self
21
21
 
22
- #
23
- # Determine if the current node is a member of the arch family.
24
- #
25
- # @param [Chef::Node] node
26
- #
27
- # @return [Boolean]
28
- #
29
- def arch_linux?(node)
30
- node['platform_family'] == 'arch'
31
- end
32
- alias_method :arch?, :arch_linux?
33
-
34
- #
35
- # Determine if the current node is a member of the debian family.
36
- #
37
- # @param [Chef::Node] node
38
- #
39
- # @return [Boolean]
40
- #
41
- def debian?(node)
42
- node['platform_family'] == 'debian'
43
- end
22
+ # these helpers have been moved to core chef
23
+ if !defined?(Chef::VERSION) || Gem::Requirement.new("< 15.4.70").satisfied_by?(Gem::Version.new(Chef::VERSION))
44
24
 
45
- #
46
- # Determine if the current node is a member of the fedora family.
47
- #
48
- # @param [Chef::Node] node
49
- #
50
- # @return [Boolean]
51
- #
52
- def fedora?(node)
53
- node['platform_family'] == 'fedora'
54
- end
25
+ #
26
+ # Determine if the current node is a member of the arch family.
27
+ #
28
+ # @param [Chef::Node] node
29
+ #
30
+ # @return [Boolean]
31
+ #
32
+ def arch_linux?(node)
33
+ node['platform_family'] == 'arch'
34
+ end
35
+ alias_method :arch?, :arch_linux?
55
36
 
56
- #
57
- # Determine if the current node is a member of the freebsd family.
58
- #
59
- # @param [Chef::Node] node
60
- #
61
- # @return [Boolean]
62
- #
63
- def freebsd?(node)
64
- node['platform_family'] == 'freebsd'
65
- end
37
+ #
38
+ # Determine if the current node is a member of the debian family.
39
+ #
40
+ # @param [Chef::Node] node
41
+ #
42
+ # @return [Boolean]
43
+ #
44
+ def debian?(node)
45
+ node['platform_family'] == 'debian'
46
+ end
66
47
 
67
- #
68
- # Determine if the current node is a member of the arch family.
69
- #
70
- # @param [Chef::Node] node
71
- #
72
- # @return [Boolean]
73
- #
74
- def gentoo?(node)
75
- node['platform_family'] == 'gentoo'
76
- end
48
+ #
49
+ # Determine if the current node is a member of the fedora family.
50
+ #
51
+ # @param [Chef::Node] node
52
+ #
53
+ # @return [Boolean]
54
+ #
55
+ def fedora?(node)
56
+ node['platform_family'] == 'fedora'
57
+ end
77
58
 
78
- #
79
- # Determine if the current node is a member of the OSX family.
80
- #
81
- # @param [Chef::Node] node
82
- #
83
- # @return [Boolean]
84
- #
85
- def mac_os_x?(node)
86
- node['platform_family'] == 'mac_os_x'
87
- end
88
- alias_method :osx?, :mac_os_x?
89
- alias_method :mac?, :mac_os_x?
90
-
91
- #
92
- # Determine if the current node is a member of the openbsd family.
93
- #
94
- # @param [Chef::Node] node
95
- #
96
- # @return [Boolean]
97
- #
98
- def openbsd?(node)
99
- node['platform_family'] == 'openbsd'
100
- end
59
+ #
60
+ # Determine if the current node is a member of the freebsd family.
61
+ #
62
+ # @param [Chef::Node] node
63
+ #
64
+ # @return [Boolean]
65
+ #
66
+ def freebsd?(node)
67
+ node['platform_family'] == 'freebsd'
68
+ end
101
69
 
102
- #
103
- # Determine if the current node is a member of the redhat family.
104
- #
105
- # @param [Chef::Node] node
106
- #
107
- # @return [Boolean]
108
- #
109
- def rhel?(node)
110
- node['platform_family'] == 'rhel'
111
- end
112
- alias_method :redhat?, :rhel?
113
- alias_method :el?, :rhel?
114
-
115
- #
116
- # Determine if the current node is a member of the slackware family.
117
- #
118
- # @param [Chef::Node] node
119
- #
120
- # @return [Boolean]
121
- #
122
- def slackware?(node)
123
- node['platform_family'] == 'slackware'
124
- end
70
+ #
71
+ # Determine if the current node is a member of the arch family.
72
+ #
73
+ # @param [Chef::Node] node
74
+ #
75
+ # @return [Boolean]
76
+ #
77
+ def gentoo?(node)
78
+ node['platform_family'] == 'gentoo'
79
+ end
125
80
 
126
- #
127
- # Determine if the current node is a member of the suse family.
128
- #
129
- # @param [Chef::Node] node
130
- #
131
- # @return [Boolean]
132
- #
133
- def suse?(node)
134
- node['platform_family'] == 'suse'
135
- end
81
+ #
82
+ # Determine if the current node is a member of the OSX family.
83
+ #
84
+ # @param [Chef::Node] node
85
+ #
86
+ # @return [Boolean]
87
+ #
88
+ def mac_os_x?(node)
89
+ node['platform_family'] == 'mac_os_x'
90
+ end
91
+ alias_method :osx?, :mac_os_x?
92
+ alias_method :mac?, :mac_os_x?
136
93
 
137
- #
138
- # Determine if the current node is a member of the windows family.
139
- #
140
- # @param [Chef::Node] node
141
- #
142
- # @return [Boolean]
143
- #
144
- def windows?(node)
145
- node['platform_family'] == 'windows'
146
- end
94
+ #
95
+ # Determine if the current node is a member of the openbsd family.
96
+ #
97
+ # @param [Chef::Node] node
98
+ #
99
+ # @return [Boolean]
100
+ #
101
+ def openbsd?(node)
102
+ node['platform_family'] == 'openbsd'
103
+ end
147
104
 
148
- #
149
- # Determine if the current node is a member of the wrlinux family.
150
- #
151
- # @param [Chef::Node] node
152
- #
153
- # @return [Boolean]
154
- #
155
- def wrlinux?(node)
156
- node['platform_family'] == 'wrlinux'
157
- end
105
+ #
106
+ # Determine if the current node is a member of the redhat family.
107
+ #
108
+ # @param [Chef::Node] node
109
+ #
110
+ # @return [Boolean]
111
+ #
112
+ def rhel?(node)
113
+ node['platform_family'] == 'rhel'
114
+ end
115
+ alias_method :redhat?, :rhel?
116
+ alias_method :el?, :rhel?
117
+
118
+ #
119
+ # Determine if the current node is a member of the slackware family.
120
+ #
121
+ # @param [Chef::Node] node
122
+ #
123
+ # @return [Boolean]
124
+ #
125
+ def slackware?(node)
126
+ node['platform_family'] == 'slackware'
127
+ end
128
+
129
+ #
130
+ # Determine if the current node is a member of the suse family.
131
+ #
132
+ # @param [Chef::Node] node
133
+ #
134
+ # @return [Boolean]
135
+ #
136
+ def suse?(node)
137
+ node['platform_family'] == 'suse'
138
+ end
139
+
140
+ #
141
+ # Determine if the current node is a member of the windows family.
142
+ #
143
+ # @param [Chef::Node] node
144
+ #
145
+ # @return [Boolean]
146
+ #
147
+ def windows?(node)
148
+ node['platform_family'] == 'windows'
149
+ end
150
+
151
+ #
152
+ # Determine if the current node is a member of the wrlinux family.
153
+ #
154
+ # @param [Chef::Node] node
155
+ #
156
+ # @return [Boolean]
157
+ #
158
+ def wrlinux?(node)
159
+ node['platform_family'] == 'wrlinux'
160
+ end
161
+
162
+ #
163
+ # Determine if the current system is a linux derivative
164
+ #
165
+ # @param [Chef::Node] node
166
+ #
167
+ # @return [Boolean]
168
+ #
169
+ def linux?(node)
170
+ node['os'] == 'linux'
171
+ end
158
172
 
159
- #
160
- # Determine if the current system is a linux derivative
161
- #
162
- # @param [Chef::Node] node
163
- #
164
- # @return [Boolean]
165
- #
166
- def linux?(node)
167
- node['os'] == 'linux'
168
173
  end
169
174
  end
170
175
 
@@ -14,8 +14,8 @@
14
14
  # limitations under the License.
15
15
  #
16
16
 
17
- require 'mixlib/shellout'
18
- require 'pathname'
17
+ require 'mixlib/shellout' unless defined?(Mixlib::ShellOut)
18
+ require 'pathname' unless defined?(Pathname)
19
19
 
20
20
  class Chef
21
21
  module Sugar
@@ -51,7 +51,11 @@ class Chef
51
51
  # @return [String]
52
52
  #
53
53
  def dev_null(node)
54
- Chef::Sugar::PlatformFamily.windows?(node) ? 'NUL' : '/dev/null'
54
+ if defined?(ChefUtils)
55
+ ChefUtils.windows?(node) ? 'NUL' : '/dev/null'
56
+ else
57
+ Chef::Sugar::PlatformFamily.windows?(node) ? 'NUL' : '/dev/null'
58
+ end
55
59
  end
56
60
 
57
61
  #
@@ -16,6 +16,6 @@
16
16
 
17
17
  class Chef
18
18
  module Sugar
19
- VERSION = '5.0.2'
19
+ VERSION = "5.1.11"
20
20
  end
21
21
  end
metadata CHANGED
@@ -1,85 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: chef-sugar-ng
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.0.2
4
+ version: 5.1.11
5
5
  platform: ruby
6
6
  authors:
7
- - Chef Software, Inc.
7
+ - Seth Vargo
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-09-19 00:00:00.000000000 Z
12
- dependencies:
13
- - !ruby/object:Gem::Dependency
14
- name: bundler
15
- requirement: !ruby/object:Gem::Requirement
16
- requirements:
17
- - - ">="
18
- - !ruby/object:Gem::Version
19
- version: '0'
20
- type: :development
21
- prerelease: false
22
- version_requirements: !ruby/object:Gem::Requirement
23
- requirements:
24
- - - ">="
25
- - !ruby/object:Gem::Version
26
- version: '0'
27
- - !ruby/object:Gem::Dependency
28
- name: rake
29
- requirement: !ruby/object:Gem::Requirement
30
- requirements:
31
- - - ">="
32
- - !ruby/object:Gem::Version
33
- version: '0'
34
- type: :development
35
- prerelease: false
36
- version_requirements: !ruby/object:Gem::Requirement
37
- requirements:
38
- - - ">="
39
- - !ruby/object:Gem::Version
40
- version: '0'
41
- - !ruby/object:Gem::Dependency
42
- name: chefspec
43
- requirement: !ruby/object:Gem::Requirement
44
- requirements:
45
- - - ">="
46
- - !ruby/object:Gem::Version
47
- version: '0'
48
- type: :development
49
- prerelease: false
50
- version_requirements: !ruby/object:Gem::Requirement
51
- requirements:
52
- - - ">="
53
- - !ruby/object:Gem::Version
54
- version: '0'
55
- - !ruby/object:Gem::Dependency
56
- name: test-kitchen
57
- requirement: !ruby/object:Gem::Requirement
58
- requirements:
59
- - - ">="
60
- - !ruby/object:Gem::Version
61
- version: '0'
62
- type: :development
63
- prerelease: false
64
- version_requirements: !ruby/object:Gem::Requirement
65
- requirements:
66
- - - ">="
67
- - !ruby/object:Gem::Version
68
- version: '0'
69
- - !ruby/object:Gem::Dependency
70
- name: kitchen-vagrant
71
- requirement: !ruby/object:Gem::Requirement
72
- requirements:
73
- - - ">="
74
- - !ruby/object:Gem::Version
75
- version: '0'
76
- type: :development
77
- prerelease: false
78
- version_requirements: !ruby/object:Gem::Requirement
79
- requirements:
80
- - - ">="
81
- - !ruby/object:Gem::Version
82
- version: '0'
11
+ date: 2020-08-14 00:00:00.000000000 Z
12
+ dependencies: []
83
13
  description: A series of helpful sugar of the Chef core and other resources to make
84
14
  a cleaner, more lean recipe DSL, enforce DRY principles, and make writing Chef recipes
85
15
  an awesome experience!
@@ -100,6 +30,7 @@ files:
100
30
  - lib/chef/sugar/core_extensions/object.rb
101
31
  - lib/chef/sugar/core_extensions/string.rb
102
32
  - lib/chef/sugar/data_bag.rb
33
+ - lib/chef/sugar/deprecation.rb
103
34
  - lib/chef/sugar/docker.rb
104
35
  - lib/chef/sugar/filters.rb
105
36
  - lib/chef/sugar/init.rb
@@ -115,9 +46,9 @@ files:
115
46
  - lib/chef/sugar/vagrant.rb
116
47
  - lib/chef/sugar/version.rb
117
48
  - lib/chef/sugar/virtualization.rb
118
- homepage: https://github.com/sethvargo/chef-sugar
49
+ homepage: https://github.com/chef/chef-sugar
119
50
  licenses:
120
- - Apache 2.0
51
+ - Apache-2.0
121
52
  metadata: {}
122
53
  post_install_message:
123
54
  rdoc_options: []
@@ -127,7 +58,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
127
58
  requirements:
128
59
  - - ">="
129
60
  - !ruby/object:Gem::Version
130
- version: 2.2.2
61
+ version: '2.3'
131
62
  required_rubygems_version: !ruby/object:Gem::Requirement
132
63
  requirements:
133
64
  - - ">="