chef 16.7.61 → 16.9.20

Sign up to get free protection for your applications and to get access to all the features.
Files changed (112) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +3 -5
  3. data/README.md +2 -2
  4. data/chef.gemspec +12 -2
  5. data/lib/chef/application/base.rb +1 -1
  6. data/lib/chef/client.rb +3 -0
  7. data/lib/chef/compliance/default_attributes.rb +93 -0
  8. data/lib/chef/compliance/fetcher/automate.rb +69 -0
  9. data/lib/chef/compliance/fetcher/chef_server.rb +134 -0
  10. data/lib/chef/compliance/reporter/automate.rb +201 -0
  11. data/lib/chef/compliance/reporter/chef_server_automate.rb +94 -0
  12. data/lib/chef/compliance/reporter/compliance_enforcer.rb +20 -0
  13. data/lib/chef/compliance/reporter/json_file.rb +19 -0
  14. data/lib/chef/compliance/runner.rb +262 -0
  15. data/lib/chef/cookbook_manifest.rb +1 -0
  16. data/lib/chef/encrypted_data_bag_item/assertions.rb +1 -1
  17. data/lib/chef/exceptions.rb +4 -0
  18. data/lib/chef/http/ssl_policies.rb +33 -14
  19. data/lib/chef/knife/bootstrap/train_connector.rb +1 -1
  20. data/lib/chef/knife/core/formatting_options.rb +49 -0
  21. data/lib/chef/knife/core/node_presenter.rb +0 -25
  22. data/lib/chef/knife/core/status_presenter.rb +1 -26
  23. data/lib/chef/knife/core/ui.rb +4 -1
  24. data/lib/chef/knife/core/windows_bootstrap_context.rb +1 -1
  25. data/lib/chef/knife/node_show.rb +2 -1
  26. data/lib/chef/knife/search.rb +2 -1
  27. data/lib/chef/knife/ssh.rb +3 -1
  28. data/lib/chef/knife/status.rb +8 -11
  29. data/lib/chef/mixin/powershell_exec.rb +3 -1
  30. data/lib/chef/platform/query_helpers.rb +4 -4
  31. data/lib/chef/policy_builder/policyfile.rb +1 -1
  32. data/lib/chef/powershell.rb +2 -0
  33. data/lib/chef/provider/dsc_resource.rb +12 -24
  34. data/lib/chef/provider/dsc_script.rb +16 -20
  35. data/lib/chef/provider/git.rb +5 -5
  36. data/lib/chef/provider/package.rb +53 -19
  37. data/lib/chef/provider/package/dnf.rb +39 -12
  38. data/lib/chef/provider/package/dnf/dnf_helper.py +18 -5
  39. data/lib/chef/provider/package/dnf/python_helper.rb +6 -6
  40. data/lib/chef/provider/package/freebsd/pkgng.rb +3 -1
  41. data/lib/chef/provider/yum_repository.rb +2 -2
  42. data/lib/chef/resource/chef_client_config.rb +1 -1
  43. data/lib/chef/resource/chef_gem.rb +2 -2
  44. data/lib/chef/resource/cron/cron_d.rb +1 -0
  45. data/lib/chef/resource/dsc_script.rb +8 -1
  46. data/lib/chef/resource/file.rb +1 -1
  47. data/lib/chef/resource/gem_package.rb +2 -2
  48. data/lib/chef/resource/homebrew_cask.rb +3 -3
  49. data/lib/chef/resource/hostname.rb +3 -3
  50. data/lib/chef/resource/http_request.rb +1 -1
  51. data/lib/chef/resource/locale.rb +1 -1
  52. data/lib/chef/resource/mdadm.rb +2 -2
  53. data/lib/chef/resource/osx_profile.rb +7 -7
  54. data/lib/chef/resource/remote_directory.rb +1 -1
  55. data/lib/chef/resource/ruby.rb +1 -5
  56. data/lib/chef/resource/ruby_block.rb +1 -1
  57. data/lib/chef/resource/template.rb +2 -2
  58. data/lib/chef/resource/user/windows_user.rb +5 -0
  59. data/lib/chef/resource/windows_certificate.rb +9 -13
  60. data/lib/chef/resource/yum_repository.rb +5 -0
  61. data/lib/chef/resource_collection/resource_set.rb +1 -1
  62. data/lib/chef/util/dsc/configuration_generator.rb +52 -11
  63. data/lib/chef/util/dsc/lcm_output_parser.rb +3 -4
  64. data/lib/chef/util/dsc/local_configuration_manager.rb +17 -14
  65. data/lib/chef/util/dsc/resource_store.rb +5 -11
  66. data/lib/chef/version.rb +1 -1
  67. data/lib/chef/win32/api/file.rb +4 -0
  68. data/spec/data/rubygems.org/latest_specs.4.8.gz +0 -0
  69. data/spec/data/rubygems.org/nonexistent_gem +0 -0
  70. data/spec/data/rubygems.org/sexp_processor +0 -0
  71. data/spec/data/rubygems.org/sexp_processor-4.15.1.gemspec.rz +0 -0
  72. data/spec/data/ssl/binary/chef-rspec-der.cert +0 -0
  73. data/spec/data/ssl/binary/chef-rspec-der.key +0 -0
  74. data/spec/functional/resource/dnf_package_spec.rb +319 -16
  75. data/spec/functional/resource/dsc_script_spec.rb +3 -6
  76. data/spec/functional/resource/windows_certificate_spec.rb +204 -384
  77. data/spec/integration/client/client_spec.rb +2 -1
  78. data/spec/integration/compliance/compliance_spec.rb +81 -0
  79. data/spec/integration/recipes/recipe_dsl_spec.rb +1 -0
  80. data/spec/spec_helper.rb +1 -1
  81. data/spec/unit/client_spec.rb +1 -0
  82. data/spec/unit/compliance/fetcher/automate_spec.rb +134 -0
  83. data/spec/unit/compliance/fetcher/chef_server_spec.rb +93 -0
  84. data/spec/unit/compliance/reporter/automate_spec.rb +427 -0
  85. data/spec/unit/compliance/reporter/chef_server_automate_spec.rb +177 -0
  86. data/spec/unit/compliance/reporter/compliance_enforcer_spec.rb +48 -0
  87. data/spec/unit/compliance/runner_spec.rb +167 -0
  88. data/spec/unit/http/ssl_policies_spec.rb +107 -68
  89. data/spec/unit/knife/bootstrap_spec.rb +5 -17
  90. data/spec/unit/knife/core/node_editor_spec.rb +1 -1
  91. data/spec/unit/knife/core/status_presenter_spec.rb +54 -0
  92. data/spec/unit/mixin/openssl_helper_spec.rb +0 -7
  93. data/spec/unit/mixin/powershell_exec_spec.rb +1 -1
  94. data/spec/unit/platform/query_helpers_spec.rb +11 -12
  95. data/spec/unit/provider/dsc_resource_spec.rb +10 -27
  96. data/spec/unit/provider/dsc_script_spec.rb +1 -1
  97. data/spec/unit/provider/mount/windows_spec.rb +1 -0
  98. data/spec/unit/provider/package/freebsd/pkgng_spec.rb +1 -1
  99. data/spec/unit/provider/package/rubygems_spec.rb +39 -7
  100. data/spec/unit/provider/systemd_unit_spec.rb +1 -1
  101. data/spec/unit/resource/user/windows_user_spec.rb +36 -0
  102. data/spec/unit/resource/windows_certificate_spec.rb +12 -0
  103. data/spec/unit/util/dsc/configuration_generator_spec.rb +79 -0
  104. data/spec/unit/util/dsc/local_configuration_manager_spec.rb +27 -35
  105. metadata +55 -18
  106. data/lib/chef/util/powershell/cmdlet.rb +0 -169
  107. data/lib/chef/util/powershell/cmdlet_result.rb +0 -61
  108. data/spec/data/trusted_certs_empty/.gitkeep +0 -0
  109. data/spec/data/trusted_certs_empty/README.md +0 -1
  110. data/spec/functional/util/powershell/cmdlet_spec.rb +0 -111
  111. data/spec/scripts/ssl-serve.rb +0 -47
  112. data/spec/unit/util/powershell/cmdlet_spec.rb +0 -106
@@ -25,6 +25,85 @@ describe Chef::Util::DSC::ConfigurationGenerator do
25
25
  Chef::Util::DSC::ConfigurationGenerator.new(node, "tmp")
26
26
  end
27
27
 
28
+ describe "#validate_switch_name!" do
29
+ it "should not raise an error if a name contains all upper case letters" do
30
+ conf_man.send(:validate_switch_name!, "HELLO")
31
+ end
32
+
33
+ it "should not raise an error if the name contains all lower case letters" do
34
+ conf_man.send(:validate_switch_name!, "hello")
35
+ end
36
+
37
+ it "should not raise an error if no special characters are used except _" do
38
+ conf_man.send(:validate_switch_name!, "hello_world")
39
+ end
40
+
41
+ %w{! @ # $ % ^ & * & * ( ) - = + \{ \} . ? < > \\ /}.each do |sym|
42
+ it "raises an ArgumentError if configuration name contains #{sym}" do
43
+ expect do
44
+ conf_man.send(:validate_switch_name!, "Hello#{sym}")
45
+ end.to raise_error(ArgumentError)
46
+ end
47
+ end
48
+ end
49
+
50
+ describe "#escape_parameter_value" do
51
+ # Is this list really complete?
52
+ %w{` " # '}.each do |c|
53
+ it "escapes #{c}" do
54
+ expect(conf_man.send(:escape_parameter_value, "stuff #{c}")).to eql("stuff `#{c}")
55
+ end
56
+ end
57
+
58
+ it "does not do anything to a string without special characters" do
59
+ expect(conf_man.send(:escape_parameter_value, "stuff")).to eql("stuff")
60
+ end
61
+ end
62
+
63
+ describe "#escape_string_parameter_value" do
64
+ it "surrounds a string with ''" do
65
+ expect(conf_man.send(:escape_string_parameter_value, "stuff")).to eql("'stuff'")
66
+ end
67
+ end
68
+
69
+ describe "#command_switches_string" do
70
+ it "raises an ArgumentError if the key is not a symbol" do
71
+ expect do
72
+ conf_man.send(:command_switches_string, { "foo" => "bar" })
73
+ end.to raise_error(ArgumentError)
74
+ end
75
+
76
+ it "does not allow invalid switch names" do
77
+ expect do
78
+ conf_man.send(:command_switches_string, { foo!: "bar" })
79
+ end.to raise_error(ArgumentError)
80
+ end
81
+
82
+ it "ignores switches with a false value" do
83
+ expect(conf_man.send(:command_switches_string, { foo: false })).to eql("")
84
+ end
85
+
86
+ it "should correctly handle a value type of string" do
87
+ expect(conf_man.send(:command_switches_string, { foo: "bar" })).to eql("-foo 'bar'")
88
+ end
89
+
90
+ it "should correctly handle a value type of string even when it is 0 length" do
91
+ expect(conf_man.send(:command_switches_string, { foo: "" })).to eql("-foo ''")
92
+ end
93
+
94
+ it "should not quote integers" do
95
+ expect(conf_man.send(:command_switches_string, { foo: 1 })).to eql("-foo 1")
96
+ end
97
+
98
+ it "should not quote floats" do
99
+ expect(conf_man.send(:command_switches_string, { foo: 1.0 })).to eql("-foo 1.0")
100
+ end
101
+
102
+ it "has just the switch when the value is true" do
103
+ expect(conf_man.send(:command_switches_string, { foo: true })).to eql("-foo")
104
+ end
105
+ end
106
+
28
107
  describe "#validate_configuration_name!" do
29
108
  it "should not raise an error if a name contains all upper case letters" do
30
109
  conf_man.send(:validate_configuration_name!, "HELLO")
@@ -49,23 +49,22 @@ describe Chef::Util::DSC::LocalConfigurationManager do
49
49
  EOH
50
50
  end
51
51
 
52
- let(:lcm_status) do
53
- double("LCM cmdlet status", stderr: lcm_standard_error, return_value: lcm_standard_output, succeeded?: lcm_cmdlet_success)
52
+ let(:powershell) do
53
+ double("Chef::PowerShell", errors: lcm_errors, error?: !lcm_errors.empty?, result: lcm_result)
54
54
  end
55
55
 
56
56
  describe "test_configuration method invocation" do
57
57
  context "when interacting with the LCM using a PowerShell cmdlet" do
58
58
  before(:each) do
59
- allow(lcm).to receive(:run_configuration_cmdlet).and_return(lcm_status)
59
+ allow(lcm).to receive(:run_configuration_cmdlet).and_return(powershell)
60
60
  allow(lcm).to receive(:ps_version_gte_5?).and_return(false)
61
61
  end
62
62
  context "that returns successfully" do
63
- let(:lcm_standard_output) { normal_lcm_output }
64
- let(:lcm_standard_error) { nil }
65
- let(:lcm_cmdlet_success) { true }
63
+ let(:lcm_result) { normal_lcm_output }
64
+ let(:lcm_errors) { [] }
66
65
 
67
66
  it "successfully returns resource information for normally formatted output when cmdlet the cmdlet succeeds" do
68
- test_configuration_result = lcm.test_configuration("config", {})
67
+ test_configuration_result = lcm.test_configuration("config")
69
68
  expect(test_configuration_result.class).to be(Array)
70
69
  expect(test_configuration_result.length).to be > 0
71
70
  expect(Chef::Log).not_to receive(:warn)
@@ -73,13 +72,12 @@ describe Chef::Util::DSC::LocalConfigurationManager do
73
72
  end
74
73
 
75
74
  context "when running on PowerShell version 5" do
76
- let(:lcm_standard_output) { normal_lcm_output }
77
- let(:lcm_standard_error) { nil }
78
- let(:lcm_cmdlet_success) { true }
75
+ let(:lcm_result) { normal_lcm_output }
76
+ let(:lcm_errors) { [] }
79
77
 
80
78
  it "successfully returns resource information for normally formatted output when cmdlet the cmdlet succeeds" do
81
79
  allow(lcm).to receive(:ps_version_gte_5?).and_return(true)
82
- test_configuration_result = lcm.test_configuration("config", {})
80
+ test_configuration_result = lcm.test_configuration("config")
83
81
  expect(test_configuration_result.class).to be(Array)
84
82
  expect(test_configuration_result.length).to be > 0
85
83
  expect(Chef::Log).not_to receive(:warn)
@@ -87,13 +85,12 @@ describe Chef::Util::DSC::LocalConfigurationManager do
87
85
  end
88
86
 
89
87
  context "when running on PowerShell version less than 5" do
90
- let(:lcm_standard_output) { normal_lcm_output }
91
- let(:lcm_standard_error) { nil }
92
- let(:lcm_cmdlet_success) { true }
88
+ let(:lcm_result) { normal_lcm_output }
89
+ let(:lcm_errors) { [] }
93
90
 
94
91
  it "successfully returns resource information for normally formatted output when cmdlet the cmdlet succeeds" do
95
92
  allow(lcm).to receive(:ps_version_gte_5?).and_return(false)
96
- test_configuration_result = lcm.test_configuration("config", {})
93
+ test_configuration_result = lcm.test_configuration("config")
97
94
  expect(test_configuration_result.class).to be(Array)
98
95
  expect(test_configuration_result.length).to be > 0
99
96
  expect(Chef::Log).not_to receive(:warn)
@@ -104,10 +101,9 @@ describe Chef::Util::DSC::LocalConfigurationManager do
104
101
  let(:common_command_prefix) { "$ProgressPreference = 'SilentlyContinue';" }
105
102
  let(:ps4_base_command) { "#{common_command_prefix} Start-DscConfiguration -path tmp -wait -erroraction 'stop' -force" }
106
103
  let(:lcm_command_ps4) { ps4_base_command + " -whatif; if (! $?) { exit 1 }" }
107
- let(:lcm_command_ps5) { "#{common_command_prefix} Test-DscConfiguration -path tmp | format-list" }
108
- let(:lcm_standard_output) { normal_lcm_output }
109
- let(:lcm_standard_error) { nil }
110
- let(:lcm_cmdlet_success) { true }
104
+ let(:lcm_command_ps5) { "#{common_command_prefix} Test-DscConfiguration -path tmp | format-list | Out-String" }
105
+ let(:lcm_result) { normal_lcm_output }
106
+ let(:lcm_errors) { [] }
111
107
 
112
108
  it "successfully returns command when apply_configuration true" do
113
109
  expect(lcm.send(:lcm_command, true)).to eq(ps4_base_command)
@@ -125,9 +121,8 @@ describe Chef::Util::DSC::LocalConfigurationManager do
125
121
  end
126
122
 
127
123
  context "that fails due to missing what-if switch in DSC resource cmdlet implementation" do
128
- let(:lcm_standard_output) { "" }
129
- let(:lcm_standard_error) { no_whatif_lcm_output }
130
- let(:lcm_cmdlet_success) { false }
124
+ let(:lcm_result) { "" }
125
+ let(:lcm_errors) { [no_whatif_lcm_output] }
131
126
 
132
127
  it "returns true when passed to #whatif_not_supported?" do
133
128
  expect(lcm.send(:whatif_not_supported?, no_whatif_lcm_output)).to be_truthy
@@ -137,40 +132,38 @@ describe Chef::Util::DSC::LocalConfigurationManager do
137
132
  expect(Chef::Log).to receive(:warn).at_least(:once)
138
133
  expect(lcm).to receive(:whatif_not_supported?).and_call_original
139
134
  test_configuration_result = nil
140
- expect { test_configuration_result = lcm.test_configuration("config", {}) }.not_to raise_error
135
+ expect { test_configuration_result = lcm.test_configuration("config") }.not_to raise_error
141
136
  expect(test_configuration_result.class).to be(Array)
142
137
  end
143
138
  end
144
139
 
145
140
  context "that fails due to a DSC resource not being imported before StartDSCConfiguration -whatif is executed" do
146
- let(:lcm_standard_output) { "" }
147
- let(:lcm_standard_error) { dsc_resource_import_failure_output }
148
- let(:lcm_cmdlet_success) { false }
141
+ let(:lcm_result) { "" }
142
+ let(:lcm_errors) { [dsc_resource_import_failure_output] }
149
143
 
150
144
  it "logs a warning if the message is formatted as expected when a resource import failure occurs" do
151
145
  expect(Chef::Log).to receive(:warn).at_least(:once)
152
146
  expect(lcm).to receive(:dsc_module_import_failure?).and_call_original
153
147
  test_configuration_result = nil
154
- expect { test_configuration_result = lcm.test_configuration("config", {}) }.not_to raise_error
148
+ expect { test_configuration_result = lcm.test_configuration("config") }.not_to raise_error
155
149
  end
156
150
 
157
151
  it "returns a (possibly empty) array of ResourceInfo instances" do
158
152
  expect(Chef::Log).to receive(:warn).at_least(:once)
159
153
  test_configuration_result = nil
160
- expect { test_configuration_result = lcm.test_configuration("config", {}) }.not_to raise_error
154
+ expect { test_configuration_result = lcm.test_configuration("config") }.not_to raise_error
161
155
  expect(test_configuration_result.class).to be(Array)
162
156
  end
163
157
  end
164
158
 
165
159
  context "that fails due to an unknown PowerShell cmdlet error" do
166
- let(:lcm_standard_output) { "some output" }
167
- let(:lcm_standard_error) { "Abort, Retry, Fail?" }
168
- let(:lcm_cmdlet_success) { false }
160
+ let(:lcm_result) { "some output" }
161
+ let(:lcm_errors) { ["Abort, Retry, Fail?"] }
169
162
 
170
163
  it "logs a warning" do
171
164
  expect(Chef::Log).to receive(:warn).at_least(:once)
172
165
  expect(lcm).to receive(:dsc_module_import_failure?).and_call_original
173
- expect { lcm.test_configuration("config", {}) }.not_to raise_error
166
+ expect { lcm.test_configuration("config") }.not_to raise_error
174
167
  end
175
168
  end
176
169
  end
@@ -188,12 +181,11 @@ describe Chef::Util::DSC::LocalConfigurationManager do
188
181
  end
189
182
  end
190
183
 
191
- describe "#run_configuration_cmdlet" do
184
+ describe "#run_configuration_cmdlet", :windows_powershell_dsc_only do
192
185
  context "when invalid dsc script is given" do
193
186
  it "raises exception" do
194
187
  configuration_document = "invalid-config"
195
- shellout_flags = { cwd: nil, environment: nil, timeout: nil }
196
- expect { lcm.send(:run_configuration_cmdlet, configuration_document, true, shellout_flags) }.to raise_error(Chef::Exceptions::PowershellCmdletException)
188
+ expect { lcm.send(:run_configuration_cmdlet, configuration_document, true) }.to raise_error(Chef::PowerShell::CommandFailed)
197
189
  end
198
190
  end
199
191
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: chef
3
3
  version: !ruby/object:Gem::Version
4
- version: 16.7.61
4
+ version: 16.9.20
5
5
  platform: ruby
6
6
  authors:
7
7
  - Adam Jacob
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-11-25 00:00:00.000000000 Z
11
+ date: 2021-01-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: chef-config
@@ -16,28 +16,28 @@ dependencies:
16
16
  requirements:
17
17
  - - '='
18
18
  - !ruby/object:Gem::Version
19
- version: 16.7.61
19
+ version: 16.9.20
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - '='
25
25
  - !ruby/object:Gem::Version
26
- version: 16.7.61
26
+ version: 16.9.20
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: chef-utils
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - '='
32
32
  - !ruby/object:Gem::Version
33
- version: 16.7.61
33
+ version: 16.9.20
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - '='
39
39
  - !ruby/object:Gem::Version
40
- version: 16.7.61
40
+ version: 16.9.20
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: train-core
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -206,6 +206,20 @@ dependencies:
206
206
  - - "~>"
207
207
  - !ruby/object:Gem::Version
208
208
  version: '16.0'
209
+ - !ruby/object:Gem::Dependency
210
+ name: inspec-core
211
+ requirement: !ruby/object:Gem::Requirement
212
+ requirements:
213
+ - - "~>"
214
+ - !ruby/object:Gem::Version
215
+ version: '4.23'
216
+ type: :runtime
217
+ prerelease: false
218
+ version_requirements: !ruby/object:Gem::Requirement
219
+ requirements:
220
+ - - "~>"
221
+ - !ruby/object:Gem::Version
222
+ version: '4.23'
209
223
  - !ruby/object:Gem::Dependency
210
224
  name: ffi
211
225
  requirement: !ruby/object:Gem::Requirement
@@ -240,7 +254,7 @@ dependencies:
240
254
  requirements:
241
255
  - - ">="
242
256
  - !ruby/object:Gem::Version
243
- version: '4.2'
257
+ version: '5.1'
244
258
  - - "<"
245
259
  - !ruby/object:Gem::Version
246
260
  version: '7'
@@ -250,7 +264,7 @@ dependencies:
250
264
  requirements:
251
265
  - - ">="
252
266
  - !ruby/object:Gem::Version
253
- version: '4.2'
267
+ version: '5.1'
254
268
  - - "<"
255
269
  - !ruby/object:Gem::Version
256
270
  version: '7'
@@ -314,14 +328,14 @@ dependencies:
314
328
  requirements:
315
329
  - - '='
316
330
  - !ruby/object:Gem::Version
317
- version: 1.1.0.rc1
331
+ version: 1.1.0.rc2
318
332
  type: :runtime
319
333
  prerelease: false
320
334
  version_requirements: !ruby/object:Gem::Requirement
321
335
  requirements:
322
336
  - - '='
323
337
  - !ruby/object:Gem::Version
324
- version: 1.1.0.rc1
338
+ version: 1.1.0.rc2
325
339
  - !ruby/object:Gem::Dependency
326
340
  name: highline
327
341
  requirement: !ruby/object:Gem::Requirement
@@ -717,6 +731,14 @@ files:
717
731
  - lib/chef/chef_fs/parallelizer/parallel_enumerable.rb
718
732
  - lib/chef/chef_fs/path_utils.rb
719
733
  - lib/chef/client.rb
734
+ - lib/chef/compliance/default_attributes.rb
735
+ - lib/chef/compliance/fetcher/automate.rb
736
+ - lib/chef/compliance/fetcher/chef_server.rb
737
+ - lib/chef/compliance/reporter/automate.rb
738
+ - lib/chef/compliance/reporter/chef_server_automate.rb
739
+ - lib/chef/compliance/reporter/compliance_enforcer.rb
740
+ - lib/chef/compliance/reporter/json_file.rb
741
+ - lib/chef/compliance/runner.rb
720
742
  - lib/chef/config.rb
721
743
  - lib/chef/config_fetcher.rb
722
744
  - lib/chef/constants.rb
@@ -884,6 +906,7 @@ files:
884
906
  - lib/chef/knife/cookbook_upload.rb
885
907
  - lib/chef/knife/core/bootstrap_context.rb
886
908
  - lib/chef/knife/core/cookbook_scm_repo.rb
909
+ - lib/chef/knife/core/formatting_options.rb
887
910
  - lib/chef/knife/core/gem_glob_loader.rb
888
911
  - lib/chef/knife/core/generic_presenter.rb
889
912
  - lib/chef/knife/core/hashed_command_loader.rb
@@ -1441,8 +1464,6 @@ files:
1441
1464
  - lib/chef/util/editor.rb
1442
1465
  - lib/chef/util/file_edit.rb
1443
1466
  - lib/chef/util/path_helper.rb
1444
- - lib/chef/util/powershell/cmdlet.rb
1445
- - lib/chef/util/powershell/cmdlet_result.rb
1446
1467
  - lib/chef/util/powershell/ps_credential.rb
1447
1468
  - lib/chef/util/selinux.rb
1448
1469
  - lib/chef/util/threaded_job_queue.rb
@@ -1754,6 +1775,10 @@ files:
1754
1775
  - spec/data/root_alias_cookbooks/simple/attributes.rb
1755
1776
  - spec/data/root_alias_cookbooks/simple/metadata.rb
1756
1777
  - spec/data/root_alias_cookbooks/simple/recipe.rb
1778
+ - spec/data/rubygems.org/latest_specs.4.8.gz
1779
+ - spec/data/rubygems.org/nonexistent_gem
1780
+ - spec/data/rubygems.org/sexp_processor
1781
+ - spec/data/rubygems.org/sexp_processor-4.15.1.gemspec.rz
1757
1782
  - spec/data/run_context/cookbooks/circular-dep1/attributes/default.rb
1758
1783
  - spec/data/run_context/cookbooks/circular-dep1/definitions/circular_dep1_res.rb
1759
1784
  - spec/data/run_context/cookbooks/circular-dep1/libraries/lib.rb
@@ -1835,6 +1860,8 @@ files:
1835
1860
  - spec/data/snap_package/get_conf_success.json
1836
1861
  - spec/data/snap_package/result_failure.json
1837
1862
  - spec/data/ssl/5e707473.0
1863
+ - spec/data/ssl/binary/chef-rspec-der.cert
1864
+ - spec/data/ssl/binary/chef-rspec-der.key
1838
1865
  - spec/data/ssl/chef-rspec.cert
1839
1866
  - spec/data/ssl/chef-rspec.key
1840
1867
  - spec/data/ssl/key.pem
@@ -1854,8 +1881,6 @@ files:
1854
1881
  - spec/data/trusted_certs/intermediate.pem
1855
1882
  - spec/data/trusted_certs/opscode.pem
1856
1883
  - spec/data/trusted_certs/root.pem
1857
- - spec/data/trusted_certs_empty/.gitkeep
1858
- - spec/data/trusted_certs_empty/README.md
1859
1884
  - spec/data/windows_certificates/base64_test.cer
1860
1885
  - spec/data/windows_certificates/othertest.cer
1861
1886
  - spec/data/windows_certificates/test.cer
@@ -1989,7 +2014,6 @@ files:
1989
2014
  - spec/functional/shell_spec.rb
1990
2015
  - spec/functional/tiny_server_spec.rb
1991
2016
  - spec/functional/util/path_helper_spec.rb
1992
- - spec/functional/util/powershell/cmdlet_spec.rb
1993
2017
  - spec/functional/version_spec.rb
1994
2018
  - spec/functional/win32/crypto_spec.rb
1995
2019
  - spec/functional/win32/registry_spec.rb
@@ -2001,6 +2025,7 @@ files:
2001
2025
  - spec/integration/client/client_spec.rb
2002
2026
  - spec/integration/client/exit_code_spec.rb
2003
2027
  - spec/integration/client/ipv6_spec.rb
2028
+ - spec/integration/compliance/compliance_spec.rb
2004
2029
  - spec/integration/knife/chef_fs_data_store_spec.rb
2005
2030
  - spec/integration/knife/chef_repo_path_spec.rb
2006
2031
  - spec/integration/knife/chef_repository_file_system_spec.rb
@@ -2080,7 +2105,6 @@ files:
2080
2105
  - spec/integration/recipes/use_partial_spec.rb
2081
2106
  - spec/integration/solo/solo_spec.rb
2082
2107
  - spec/rcov.opts
2083
- - spec/scripts/ssl-serve.rb
2084
2108
  - spec/spec_helper.rb
2085
2109
  - spec/stress/win32/file_spec.rb
2086
2110
  - spec/stress/win32/memory_spec.rb
@@ -2165,6 +2189,12 @@ files:
2165
2189
  - spec/unit/chef_fs/path_util_spec.rb
2166
2190
  - spec/unit/chef_spec.rb
2167
2191
  - spec/unit/client_spec.rb
2192
+ - spec/unit/compliance/fetcher/automate_spec.rb
2193
+ - spec/unit/compliance/fetcher/chef_server_spec.rb
2194
+ - spec/unit/compliance/reporter/automate_spec.rb
2195
+ - spec/unit/compliance/reporter/chef_server_automate_spec.rb
2196
+ - spec/unit/compliance/reporter/compliance_enforcer_spec.rb
2197
+ - spec/unit/compliance/runner_spec.rb
2168
2198
  - spec/unit/config_fetcher_spec.rb
2169
2199
  - spec/unit/config_spec.rb
2170
2200
  - spec/unit/cookbook/chefignore_spec.rb
@@ -2267,6 +2297,7 @@ files:
2267
2297
  - spec/unit/knife/core/hashed_command_loader_spec.rb
2268
2298
  - spec/unit/knife/core/node_editor_spec.rb
2269
2299
  - spec/unit/knife/core/object_loader_spec.rb
2300
+ - spec/unit/knife/core/status_presenter_spec.rb
2270
2301
  - spec/unit/knife/core/subcommand_loader_spec.rb
2271
2302
  - spec/unit/knife/core/ui_spec.rb
2272
2303
  - spec/unit/knife/core/windows_bootstrap_context_spec.rb
@@ -2626,6 +2657,7 @@ files:
2626
2657
  - spec/unit/resource/systemd_unit_spec.rb
2627
2658
  - spec/unit/resource/template_spec.rb
2628
2659
  - spec/unit/resource/timezone_spec.rb
2660
+ - spec/unit/resource/user/windows_user_spec.rb
2629
2661
  - spec/unit/resource/user_spec.rb
2630
2662
  - spec/unit/resource/user_ulimit_spec.rb
2631
2663
  - spec/unit/resource/windows_ad_join_spec.rb
@@ -2700,7 +2732,6 @@ files:
2700
2732
  - spec/unit/util/dsc/resource_store.rb
2701
2733
  - spec/unit/util/editor_spec.rb
2702
2734
  - spec/unit/util/file_edit_spec.rb
2703
- - spec/unit/util/powershell/cmdlet_spec.rb
2704
2735
  - spec/unit/util/powershell/ps_credential_spec.rb
2705
2736
  - spec/unit/util/selinux_spec.rb
2706
2737
  - spec/unit/util/threaded_job_queue_spec.rb
@@ -2719,7 +2750,13 @@ files:
2719
2750
  homepage: https://www.chef.io
2720
2751
  licenses:
2721
2752
  - Apache-2.0
2722
- metadata: {}
2753
+ metadata:
2754
+ bug_tracker_uri: https://github.com/chef/chef/issues
2755
+ changelog_uri: https://github.com/chef/chef/blob/master/CHANGELOG.md
2756
+ documentation_uri: https://docs.chef.io/
2757
+ homepage_uri: https://www.chef.io
2758
+ mailing_list_uri: https://discourse.chef.io/
2759
+ source_code_uri: https://github.com/chef/chef/
2723
2760
  post_install_message:
2724
2761
  rdoc_options: []
2725
2762
  require_paths: