chef-cli 3.0.14 → 3.0.27

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: 32790ab3b088b47eecb22d5be42cb45915584d117687f6133f689fa7ae40b9b4
4
- data.tar.gz: 3225502afa9009b0fb4d7cec8d0e1c5a2de851c8bcc982ef26a985e1e6e2aed1
3
+ metadata.gz: 577fd81ddfd9035362ceca91e8657bf85601baa80a3b810bb3a537fb1c138f55
4
+ data.tar.gz: f54bf84b3b02697a25a0b6df304255322a31baa22c8fff25dcdd3b917daac99f
5
5
  SHA512:
6
- metadata.gz: 79d8e068694829682f02159f01ab4aeb38930ce9a1f967fb90dc89958a0870c0ad4b804f1a75da6dcc36174dafae0d18569ca3a20cb4448a1f55db23bc83baee
7
- data.tar.gz: 7a708060fc06c798514384e6ac4f8367a138d0d37aae8cda9ccb5cecabff6c0a953880801f808e12774b6210c18d3c4dde761fe98b5a8a7c18a4d07f8b8864bb
6
+ metadata.gz: fa616d709e416e96c148010b895e5d7e95c440544d66e9e39f2768242443f3aecaafe0fbcc3c3fa6715fbe5426bf7b55ec939db0b31338943b1a84f6bdbb04bf
7
+ data.tar.gz: 691fd1a5d1cde311bbe3c6bb8678704857733261a1b19e83f2f418ac10d2af22e3fa09c5de26a4a5599bb50733d9deca2a4f70d937b63270ad747b405db31094
data/Gemfile CHANGED
@@ -13,7 +13,7 @@ group :test do
13
13
  gem "rspec", "~> 3.8"
14
14
  gem "rspec-expectations", "~> 3.8"
15
15
  gem "rspec-mocks", "~> 3.8"
16
- gem "cookstyle", "6.13.3" # this forces dependabot PRs to open which triggers cookstyle CI on the chef generate command
16
+ gem "cookstyle", "6.14.7" # this forces dependabot PRs to open which triggers cookstyle CI on the chef generate command
17
17
  gem "chefstyle", "1.2.0"
18
18
  gem "test-kitchen", "> 2.5"
19
19
  if Gem::Version.new(RUBY_VERSION) < Gem::Version.new("2.6")
@@ -28,3 +28,9 @@ group :development do
28
28
  gem "pry-stack_explorer", "~> 0.4.0"
29
29
  gem "rb-readline"
30
30
  end
31
+
32
+ group :profile do
33
+ gem "stackprof"
34
+ gem "stackprof-webnav"
35
+ gem "memory_profiler"
36
+ end
@@ -48,6 +48,6 @@ Gem::Specification.new do |gem|
48
48
  gem.add_dependency "addressable", ">= 2.3.5", "< 2.8"
49
49
  gem.add_dependency "cookbook-omnifetch", "~> 0.5"
50
50
  gem.add_dependency "diff-lcs", ">= 1.0", "< 1.4" # 1.4 changes the output
51
- gem.add_dependency "paint", ">= 1", "< 3"
52
- gem.add_dependency "license-acceptance", "~> 1.0", ">= 1.0.11"
51
+ gem.add_dependency "pastel", "~> 0.7" # used for policyfile differ
52
+ gem.add_dependency "license-acceptance", ">= 1.0.11", "< 3"
53
53
  end
@@ -59,7 +59,7 @@ module ChefCLI
59
59
  end
60
60
 
61
61
  def run(enforce_license: false)
62
- sanity_check!
62
+ path_check!
63
63
 
64
64
  subcommand_name, *subcommand_params = argv
65
65
 
@@ -99,42 +99,21 @@ module ChefCLI
99
99
  if omnibus_install?
100
100
  show_version_via_version_manifest
101
101
  else
102
- show_version_via_shell_out
102
+ msg("#{ChefCLI::Dist::CLI_PRODUCT} version: #{ChefCLI::VERSION}")
103
103
  end
104
104
  end
105
105
 
106
106
  def show_version_via_version_manifest
107
- msg("#{ChefCLI::Dist::PRODUCT} version: #{manifest_field("build_version")}")
108
- { "#{ChefCLI::Dist::INFRA_CLIENT_PRODUCT}": "#{ChefCLI::Dist::INFRA_CLIENT_GEM}",
109
- "#{ChefCLI::Dist::INSPEC_PRODUCT}": "#{ChefCLI::Dist::INSPEC_CLI}",
110
- "#{ChefCLI::Dist::CLI_PRODUCT}": "#{ChefCLI::Dist::CLI_GEM}",
107
+ msg("#{ChefCLI::Dist::PRODUCT} version: #{component_version("build_version")}")
108
+
109
+ { "#{ChefCLI::Dist::INFRA_CLIENT_PRODUCT}": ChefCLI::Dist::INFRA_CLIENT_GEM,
110
+ "#{ChefCLI::Dist::INSPEC_PRODUCT}": ChefCLI::Dist::INSPEC_CLI,
111
+ "#{ChefCLI::Dist::CLI_PRODUCT}": ChefCLI::Dist::CLI_GEM,
112
+ "#{ChefCLI::Dist::HAB_PRODUCT}": ChefCLI::Dist::HAB_SOFTWARE_NAME,
111
113
  "Test Kitchen": "test-kitchen",
112
114
  "Cookstyle": "cookstyle",
113
- }.each do |name, gem|
114
- msg("#{name} version: #{gem_version(gem)}")
115
- end
116
- end
117
-
118
- def show_version_via_shell_out
119
- msg("#{ChefCLI::Dist::PRODUCT} version: #{ChefCLI::VERSION}")
120
- { "#{ChefCLI::Dist::INFRA_CLIENT_PRODUCT}": "#{ChefCLI::Dist::INFRA_CLIENT_CLI}",
121
- "#{ChefCLI::Dist::INSPEC_PRODUCT}": "#{ChefCLI::Dist::INSPEC_CLI}",
122
- "Test Kitchen": "kitchen",
123
- "Cookstyle": "cookstyle",
124
- }.each do |name, cli|
125
- # @todo when Ruby 2.5/2.6 support goes away this if statement can go away
126
- if Gem::Version.new(Bundler::VERSION) >= Gem::Version.new("2")
127
- result = Bundler.with_unbundled_env { shell_out("#{cli} --version") }
128
- else
129
- result = Bundler.with_clean_env { shell_out("#{cli} --version") }
130
- end
131
-
132
- if result.exitstatus != 0
133
- msg("#{name} version: ERROR")
134
- else
135
- version = result.stdout.lines.first.scan(/(?:master\s)?[\d+\.\(\)]+\S+/).join("\s")
136
- msg("#{name} version: #{version}")
137
- end
115
+ }.each do |prod_name, component|
116
+ msg("#{prod_name} version: #{component_version(component)}")
138
117
  end
139
118
  end
140
119
 
@@ -170,8 +149,15 @@ module ChefCLI
170
149
  commands_map.command_specs
171
150
  end
172
151
 
152
+ #
153
+ # Is a passed parameter actually an option aka does it start with '-'
154
+ #
155
+ # @param [String] param The passed parameter to check
156
+ #
157
+ # @return [Boolean]
158
+ #
173
159
  def option?(param)
174
- param =~ /^-/
160
+ param[0] == "-"
175
161
  end
176
162
 
177
163
  def instantiate_subcommand(name)
@@ -188,21 +174,23 @@ module ChefCLI
188
174
  end
189
175
  end
190
176
 
191
- def gem_version(name)
177
+ def component_version(name)
192
178
  if gem_manifest_hash[name].is_a?(Array)
193
179
  gem_manifest_hash[name].first
180
+ elsif manifest_hash.key? name
181
+ manifest_field(name)
194
182
  else
195
- "unknown"
183
+ manifest_hash.dig("software", name, "locked_version") || "unknown"
196
184
  end
197
185
  end
198
186
 
199
187
  def manifest_hash
200
- require "json"
188
+ require "json" unless defined?(JSON)
201
189
  @manifest_hash ||= JSON.parse(read_version_manifest_json)
202
190
  end
203
191
 
204
192
  def gem_manifest_hash
205
- require "json"
193
+ require "json" unless defined?(JSON)
206
194
  @gem_manifest_hash ||= JSON.parse(read_gem_version_manifest_json)
207
195
  end
208
196
 
@@ -243,7 +231,7 @@ module ChefCLI
243
231
  # catch the cases where users setup only the embedded_bin_dir in their path, or
244
232
  # when they have the embedded_bin_dir before the omnibus_bin_dir -- both of which will
245
233
  # defeat appbundler and interact very badly with our intent.
246
- def sanity_check!
234
+ def path_check!
247
235
  # When installed outside of omnibus, trust the user to configure their PATH
248
236
  return true unless omnibus_install?
249
237
 
@@ -21,7 +21,7 @@ require_relative "../ui"
21
21
  require_relative "../version"
22
22
  require_relative "../dist"
23
23
  require "mixlib/shellout" unless defined?(Mixlib::ShellOut)
24
- require "yaml"
24
+ require "yaml" unless defined?(YAML)
25
25
 
26
26
  module ChefCLI
27
27
  module Command
@@ -20,7 +20,6 @@ require_relative "../dist"
20
20
  require "rubygems" unless defined?(Gem)
21
21
  require "rubygems/gem_runner"
22
22
  require "rubygems/exceptions"
23
- require "pp" unless defined?(PP)
24
23
 
25
24
  module ChefCLI
26
25
  module Command
@@ -16,7 +16,6 @@
16
16
  #
17
17
 
18
18
  require "mixlib/cli" unless defined?(Mixlib::CLI)
19
- require "rbconfig"
20
19
  require "pathname" unless defined?(Pathname)
21
20
  require_relative "base"
22
21
  require_relative "../chef_runner"
@@ -38,7 +37,7 @@ module ChefCLI
38
37
  long: "--license LICENSE",
39
38
  description: "all_rights, apachev2, mit, gplv2, gplv3 - defaults to all_rights",
40
39
  proc: Proc.new { |l|
41
- l =~ /apache2/ ? "apachev2" : l
40
+ /apache2/.match?(l) ? "apachev2" : l
42
41
  },
43
42
  default: nil
44
43
 
@@ -187,27 +187,17 @@ module ChefCLI
187
187
  @verbose
188
188
  end
189
189
 
190
+ #
191
+ # Is there a .delivery/cli.toml in the current dir or any of the parent dirs
192
+ #
193
+ # @return [Boolean]
194
+ #
190
195
  def have_delivery_config?
191
196
  # delivery-cli's logic is to look recursively upward for
192
197
  # .delivery/cli.toml starting from pwd:
193
198
  # https://github.com/chef/delivery-cli/blob/22cbef3987ebd0aee98405b7e161a100edc87e49/src/delivery/config/mod.rs#L225-L247
194
199
 
195
- path_to_check = File.expand_path(Dir.pwd)
196
- result = false
197
-
198
- Pathname.new(path_to_check).ascend do |path|
199
- if contains_delivery_cli_toml?(path)
200
- result = true
201
- break
202
- end
203
- end
204
-
205
- result
206
- end
207
-
208
- def contains_delivery_cli_toml?(path)
209
- delivery_cli_path = path.join(".delivery/cli.toml")
210
- delivery_cli_path.exist?
200
+ Pathname.pwd.ascend.any? { |path| path.join(".delivery/cli.toml").exist? }
211
201
  end
212
202
 
213
203
  def read_and_validate_params
@@ -215,7 +205,7 @@ module ChefCLI
215
205
  @cookbook_name_or_path = arguments[0]
216
206
  if !@cookbook_name_or_path
217
207
  @params_valid = false
218
- elsif /-/ =~ File.basename(@cookbook_name_or_path)
208
+ elsif File.basename(@cookbook_name_or_path).include?("-")
219
209
  msg("Hyphens are discouraged in cookbook names as they may cause problems with custom resources. See https://docs.chef.io/ctl_chef/#chef-generate-cookbook for more information.")
220
210
  end
221
211
 
@@ -15,8 +15,6 @@
15
15
  # limitations under the License.
16
16
  #
17
17
 
18
- require "ostruct"
19
-
20
18
  require_relative "base"
21
19
  require_relative "../chef_runner"
22
20
  require_relative "../dist"
@@ -15,7 +15,7 @@
15
15
  # limitations under the License.
16
16
  #
17
17
 
18
- require "erb"
18
+ require "erb" unless defined?(ERB)
19
19
 
20
20
  require_relative "../commands_map"
21
21
  require_relative "../builtin_commands"
@@ -35,5 +35,10 @@ module ChefCLI
35
35
 
36
36
  # Chef-Zero's product name
37
37
  ZERO_PRODUCT = "Chef Infra Zero".freeze
38
+
39
+ HAB_PRODUCT = "Chef Habitat".freeze
40
+ HAB_SOFTWARE_NAME = "habitat".freeze
41
+
42
+ HAB_CLI = "hab".freeze
38
43
  end
39
44
  end
@@ -15,11 +15,11 @@
15
15
  # limitations under the License.
16
16
  #
17
17
 
18
- require "json"
18
+ require "json" unless defined?(JSON)
19
19
  require_relative "../cookbook_omnifetch"
20
20
  require_relative "source_uri"
21
21
  require_relative "../exceptions"
22
- require "chef/http/simple"
22
+ require "chef/http/simple" unless defined?(Chef::HTTP::Simple)
23
23
 
24
24
  module ChefCLI
25
25
  module Policyfile
@@ -15,7 +15,7 @@
15
15
  # limitations under the License.
16
16
  #
17
17
 
18
- require "chef/mash"
18
+ require "chef/mash" unless defined?(Mash)
19
19
 
20
20
  module ChefCLI
21
21
  module Policyfile
@@ -15,7 +15,7 @@
15
15
  # limitations under the License.
16
16
  #
17
17
 
18
- require "json"
18
+ require "json" unless defined?(JSON)
19
19
  require_relative "../cookbook_omnifetch"
20
20
  require_relative "../exceptions"
21
21
  require "chef/http/simple"
@@ -15,7 +15,7 @@
15
15
  # limitations under the License.
16
16
  #
17
17
 
18
- require "semverse"
18
+ require "semverse" unless defined?(Semverse)
19
19
  require_relative "../cookbook_omnifetch"
20
20
  require_relative "storage_config"
21
21
 
@@ -16,9 +16,7 @@
16
16
  #
17
17
 
18
18
  require "forwardable" unless defined?(Forwardable)
19
-
20
- require "semverse"
21
-
19
+ require "semverse" unless defined?(Semverse)
22
20
  require_relative "community_cookbook_source"
23
21
 
24
22
  module ChefCLI
@@ -17,7 +17,7 @@
17
17
 
18
18
  require "diff/lcs"
19
19
  require "diff/lcs/hunk"
20
- require "paint"
20
+ require "pastel"
21
21
  require "ffi_yajl" unless defined?(FFI_Yajl)
22
22
 
23
23
  module ChefCLI
@@ -215,9 +215,15 @@ module ChefCLI
215
215
  ui.print("\n")
216
216
  end
217
217
 
218
+ def pastel
219
+ @pastel ||= Pastel.new
220
+ end
221
+
218
222
  def print_color_diff(hunk)
219
223
  hunk.to_s.each_line do |line|
220
- ui.print(Paint[line, color_for_line(line)])
224
+ line_color = color_for_line(line)
225
+ line = pastel.decorate(line, line_color) unless line_color.nil?
226
+ ui.print(line)
221
227
  end
222
228
  end
223
229
 
@@ -233,7 +233,7 @@ module ChefCLI
233
233
  message = "#{run_list_desc} has invalid cookbook name '#{cookbook}'.\nCookbook names can only contain alphanumerics, hyphens, and underscores."
234
234
 
235
235
  # Special case when there's only one colon instead of two:
236
- if cookbook =~ /[^:]:[^:]/
236
+ if /[^:]:[^:]/.match?(cookbook)
237
237
  message << "\nDid you mean '#{item.sub(":", "::")}'?"
238
238
  end
239
239
 
@@ -1,7 +1,7 @@
1
1
  # InSpec test for recipe <%= cookbook_name %>::<%= recipe_name %>
2
2
 
3
3
  # The InSpec reference, with examples and extensive documentation, can be
4
- # found at https://www.inspec.io/docs/reference/resources/
4
+ # found at https://docs.chef.io/inspec/resources/
5
5
 
6
6
  unless os.windows?
7
7
  # This is an example test, replace with your own test.
@@ -16,5 +16,5 @@
16
16
  #
17
17
 
18
18
  module ChefCLI
19
- VERSION = "3.0.14".freeze
19
+ VERSION = "3.0.27".freeze
20
20
  end
@@ -15,7 +15,7 @@
15
15
  # See the License for the specific language governing permissions and
16
16
  # limitations under the License.
17
17
 
18
- require "json"
18
+ require "json" unless defined?(JSON)
19
19
  require "kitchen"
20
20
  require "kitchen/provisioner/base"
21
21
  require "kitchen/provisioner/chef_zero"
@@ -53,11 +53,9 @@ describe ChefCLI::CLI do
53
53
  E
54
54
  end
55
55
 
56
- let(:version_message) { "#{ChefCLI::Dist::PRODUCT} version: #{ChefCLI::VERSION}\n" }
57
-
58
56
  def run_cli(expected_exit_code)
59
57
  expect(cli).to receive(:exit).with(expected_exit_code)
60
- expect(cli).to receive(:sanity_check!)
58
+ expect(cli).to receive(:path_check!)
61
59
  cli.run
62
60
  end
63
61
 
@@ -66,16 +64,6 @@ describe ChefCLI::CLI do
66
64
  cli.run
67
65
  end
68
66
 
69
- def run_cli_and_validate_tool_versions
70
- full_version_message = version_message
71
- tools.each do |name, details|
72
- expect(cli).to receive(:shell_out).with("#{details["command"]} --version").and_return(mock_shell_out(0, "#{details["version_output"]}", ""))
73
- full_version_message += "#{name} version: #{details["expected_version"]}\n"
74
- end
75
- run_cli(0)
76
- expect(stdout).to eq(full_version_message)
77
- end
78
-
79
67
  def mock_shell_out(exitstatus, stdout, stderr)
80
68
  shell_out = double("mixlib_shell_out")
81
69
  allow(shell_out).to receive(:exitstatus).and_return(exitstatus)
@@ -121,12 +109,17 @@ describe ChefCLI::CLI do
121
109
  context "given -v" do
122
110
  let(:argv) { %w{-v} }
123
111
 
124
- context "#via_version_manifest" do
112
+ context "when installed via omnibus" do
125
113
  let(:mocked_version_manifest_json) do
126
114
  <<~E
127
115
  {
128
116
  "manifest_format": 2,
129
- "build_version": "d.e.v"
117
+ "build_version": "d.e.v",
118
+ "software": {
119
+ "habitat": {
120
+ "locked_version": "1.2.3"
121
+ }
122
+ }
130
123
  }
131
124
  E
132
125
  end
@@ -160,6 +153,7 @@ describe ChefCLI::CLI do
160
153
  Chef Infra Client version: 0.0.2
161
154
  Chef InSpec version: 0.0.3
162
155
  Chef CLI version: 0.0.1
156
+ Chef Habitat version: 1.2.3
163
157
  Test Kitchen version: 0.0.4
164
158
  Cookstyle version: 0.0.6
165
159
  E
@@ -171,6 +165,7 @@ describe ChefCLI::CLI do
171
165
  Chef Infra Client version: unknown
172
166
  Chef InSpec version: unknown
173
167
  Chef CLI version: unknown
168
+ Chef Habitat version: unknown
174
169
  Test Kitchen version: unknown
175
170
  Cookstyle version: unknown
176
171
  E
@@ -195,49 +190,15 @@ describe ChefCLI::CLI do
195
190
  end
196
191
  end
197
192
 
198
- context "#via_shell_out" do
199
- let(:tools) do
200
- {
201
- "Chef Infra Client" => {
202
- "command" => "chef-client",
203
- "version_output" => "Chef Infra Client: 15.0.300",
204
- "expected_version" => "15.0.300",
205
- },
206
- "Chef InSpec" => {
207
- "command" => "inspec",
208
- "version_output" => "4.6.2\n\nYour version of InSpec is out of date! The latest version is 4.6.4.",
209
- "expected_version" => "4.6.2",
210
- },
211
- "Test Kitchen" => {
212
- "command" => "kitchen",
213
- "version_output" => "Test Kitchen version 2.2.5",
214
- "expected_version" => "2.2.5",
215
- },
216
- "Cookstyle" => {
217
- "command" => "cookstyle",
218
- "version_output" => "Cookstyle 4.0.0\n * RuboCop 0.62.0",
219
- "expected_version" => "4.0.0",
220
- },
221
- }
222
- end
223
-
224
- it "does not print versions of tools with missing or errored tools" do
225
- full_version_message = version_message
226
- tools.each do |name, details|
227
- if name == "inspec"
228
- expect(cli).to receive(:shell_out).with("#{details["command"]} --version").and_return(mock_shell_out(1, "#{details["version_output"]}", ""))
229
- full_version_message += "#{name} version: ERROR\n"
230
- else
231
- expect(cli).to receive(:shell_out).with("#{details["command"]} --version").and_return(mock_shell_out(0, "#{details["version_output"]}", ""))
232
- full_version_message += "#{name} version: #{details["expected_version"]}\n"
233
- end
234
- end
235
- run_cli(0)
236
- expect(stdout).to eq(full_version_message)
193
+ context "when installed as a gem" do
194
+ let(:gem_version_message) { "#{ChefCLI::Dist::CLI_PRODUCT} version: #{ChefCLI::VERSION}\n" }
195
+ before do
196
+ allow(cli).to receive(:omnibus_install?).and_return false
237
197
  end
238
198
 
239
199
  it "prints the version and versions of chef-cli tools" do
240
- run_cli_and_validate_tool_versions
200
+ run_cli(0)
201
+ expect(stdout).to eq(gem_version_message)
241
202
  end
242
203
  end
243
204
  end
@@ -295,7 +256,7 @@ describe ChefCLI::CLI do
295
256
  end
296
257
  end
297
258
 
298
- context "sanity_check!" do
259
+ context "path_check!" do
299
260
 
300
261
  before do
301
262
  allow(Gem).to receive(:ruby).and_return(ruby_path)
@@ -16,7 +16,7 @@
16
16
  #
17
17
 
18
18
  require "spec_helper"
19
- require "yaml"
19
+ require "yaml" unless defined?(YAML)
20
20
  require "chef-cli/command/env"
21
21
 
22
22
  describe ChefCLI::Command::Env do
@@ -1,6 +1,6 @@
1
1
  require "openssl"
2
- require "net/https"
3
- require "json"
2
+ require "net/http" unless defined?(Net::HTTP)
3
+ require "json" unless defined?(JSON)
4
4
  require "pp"
5
5
  require "uri"
6
6
 
@@ -243,7 +243,7 @@ describe ChefCLI::Policyfile::Differ do
243
243
 
244
244
  def output
245
245
  # ANSI codes make the tests harder to read
246
- Paint.unpaint(ui.output)
246
+ Pastel.new.strip(ui.output)
247
247
  end
248
248
 
249
249
  subject(:differ) do
@@ -16,7 +16,7 @@
16
16
  #
17
17
 
18
18
  require "spec_helper"
19
- require "net/http"
19
+ require "net/http" unless defined?(Net::HTTP)
20
20
  require "chef/monkey_patches/net_http"
21
21
  require "chef-cli/service_exception_inspectors/http"
22
22
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: chef-cli
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.14
4
+ version: 3.0.27
5
5
  platform: ruby
6
6
  authors:
7
7
  - Chef Software, Inc.
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-07-28 00:00:00.000000000 Z
11
+ date: 2020-08-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: mixlib-cli
@@ -173,45 +173,39 @@ dependencies:
173
173
  - !ruby/object:Gem::Version
174
174
  version: '1.4'
175
175
  - !ruby/object:Gem::Dependency
176
- name: paint
176
+ name: pastel
177
177
  requirement: !ruby/object:Gem::Requirement
178
178
  requirements:
179
- - - ">="
180
- - !ruby/object:Gem::Version
181
- version: '1'
182
- - - "<"
179
+ - - "~>"
183
180
  - !ruby/object:Gem::Version
184
- version: '3'
181
+ version: '0.7'
185
182
  type: :runtime
186
183
  prerelease: false
187
184
  version_requirements: !ruby/object:Gem::Requirement
188
185
  requirements:
189
- - - ">="
190
- - !ruby/object:Gem::Version
191
- version: '1'
192
- - - "<"
186
+ - - "~>"
193
187
  - !ruby/object:Gem::Version
194
- version: '3'
188
+ version: '0.7'
195
189
  - !ruby/object:Gem::Dependency
196
190
  name: license-acceptance
197
191
  requirement: !ruby/object:Gem::Requirement
198
192
  requirements:
199
- - - "~>"
200
- - !ruby/object:Gem::Version
201
- version: '1.0'
202
193
  - - ">="
203
194
  - !ruby/object:Gem::Version
204
195
  version: 1.0.11
196
+ - - "<"
197
+ - !ruby/object:Gem::Version
198
+ version: '3'
205
199
  type: :runtime
206
200
  prerelease: false
207
201
  version_requirements: !ruby/object:Gem::Requirement
208
202
  requirements:
209
- - - "~>"
210
- - !ruby/object:Gem::Version
211
- version: '1.0'
212
203
  - - ">="
213
204
  - !ruby/object:Gem::Version
214
205
  version: 1.0.11
206
+ - - "<"
207
+ - !ruby/object:Gem::Version
208
+ version: '3'
215
209
  description: A streamlined development and deployment workflow for Chef platform.
216
210
  email:
217
211
  - info@chef.io