chef 12.6.0-universal-mingw32 → 12.7.2-universal-mingw32

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1452) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +26 -19
  3. data/README.md +26 -23
  4. data/Rakefile +28 -17
  5. data/VERSION +1 -0
  6. data/acceptance/.gitignore +1 -0
  7. data/acceptance/.shared/kitchen_acceptance/.kitchen.digitalocean.yml +27 -0
  8. data/acceptance/.shared/kitchen_acceptance/.kitchen.ec2.yml +281 -0
  9. data/acceptance/.shared/kitchen_acceptance/.kitchen.vagrant.yml +49 -0
  10. data/acceptance/.shared/kitchen_acceptance/libraries/kitchen.rb +46 -0
  11. data/acceptance/.shared/kitchen_acceptance/metadata.rb +1 -0
  12. data/acceptance/Gemfile +11 -0
  13. data/acceptance/README.md +86 -0
  14. data/acceptance/basics/.acceptance/acceptance-cookbook/.gitignore +2 -0
  15. data/acceptance/basics/.acceptance/acceptance-cookbook/metadata.rb +3 -0
  16. data/acceptance/basics/.acceptance/acceptance-cookbook/recipes/destroy.rb +1 -0
  17. data/acceptance/basics/.acceptance/acceptance-cookbook/recipes/provision.rb +1 -0
  18. data/acceptance/basics/.acceptance/acceptance-cookbook/recipes/verify.rb +1 -0
  19. data/acceptance/basics/.kitchen.yml +4 -0
  20. data/acceptance/basics/test/integration/chef-current-install/serverspec/chef_client_spec.rb +19 -0
  21. data/acceptance/basics/test/integration/chef-current-install/serverspec/spec_helper.rb +6 -0
  22. data/acceptance/top-cookbooks/.acceptance/acceptance-cookbook/.gitignore +2 -0
  23. data/acceptance/top-cookbooks/.acceptance/acceptance-cookbook/libraries/cookbook_kitchen.rb +43 -0
  24. data/acceptance/top-cookbooks/.acceptance/acceptance-cookbook/libraries/top_cookbooks.rb +21 -0
  25. data/acceptance/top-cookbooks/.acceptance/acceptance-cookbook/metadata.rb +3 -0
  26. data/acceptance/top-cookbooks/.acceptance/acceptance-cookbook/recipes/destroy.rb +1 -0
  27. data/acceptance/top-cookbooks/.acceptance/acceptance-cookbook/recipes/provision.rb +1 -0
  28. data/acceptance/top-cookbooks/.acceptance/acceptance-cookbook/recipes/verify.rb +1 -0
  29. data/acceptance/top-cookbooks/.gitignore +1 -0
  30. data/acceptance/top-cookbooks/.kitchen.git.yml +10 -0
  31. data/acceptance/top-cookbooks/.kitchen.learn-the-basics-rhel.yml +4 -0
  32. data/acceptance/top-cookbooks/.kitchen.learn-the-basics-ubuntu.yml +4 -0
  33. data/acceptance/top-cookbooks/.kitchen.learn-the-basics-windows.yml +4 -0
  34. data/acceptance/trivial/.acceptance/acceptance-cookbook/.gitignore +2 -0
  35. data/acceptance/trivial/.acceptance/acceptance-cookbook/metadata.rb +2 -0
  36. data/acceptance/trivial/.acceptance/acceptance-cookbook/recipes/destroy.rb +1 -0
  37. data/acceptance/trivial/.acceptance/acceptance-cookbook/recipes/provision.rb +1 -0
  38. data/acceptance/trivial/.acceptance/acceptance-cookbook/recipes/verify.rb +1 -0
  39. data/acceptance/trivial/.kitchen.yml +7 -0
  40. data/acceptance/trivial/test/integration/chef-current-install/inspec/chef_client_spec.rb +5 -0
  41. data/acceptance/windows-service/.acceptance/acceptance-cookbook/.gitignore +2 -0
  42. data/acceptance/windows-service/.acceptance/acceptance-cookbook/metadata.rb +2 -0
  43. data/acceptance/windows-service/.acceptance/acceptance-cookbook/recipes/destroy.rb +1 -0
  44. data/acceptance/windows-service/.acceptance/acceptance-cookbook/recipes/provision.rb +1 -0
  45. data/acceptance/windows-service/.acceptance/acceptance-cookbook/recipes/verify.rb +1 -0
  46. data/acceptance/windows-service/.kitchen.yml +7 -0
  47. data/acceptance/windows-service/test/integration/chef-windows-service/inspec/chef_windows_service_spec.rb +58 -0
  48. data/bin/chef-apply +3 -3
  49. data/bin/chef-client +5 -5
  50. data/bin/chef-service-manager +7 -7
  51. data/bin/chef-shell +1 -1
  52. data/bin/chef-solo +4 -4
  53. data/bin/chef-windows-service +5 -5
  54. data/bin/knife +4 -5
  55. data/chef-windows.gemspec +5 -2
  56. data/chef.gemspec +13 -13
  57. data/distro/common/html/_static/basic.css +1 -1
  58. data/distro/common/html/_static/doctools.js +1 -1
  59. data/distro/common/html/_static/searchtools.js +1 -1
  60. data/distro/common/html/_static/websupport.js +1 -1
  61. data/ext/win32-eventlog/Rakefile +13 -14
  62. data/lib-backcompat/chef/chef_fs/file_system/acl_entry.rb +5 -0
  63. data/lib-backcompat/chef/chef_fs/file_system/chef_repository_file_system_root_dir.rb +5 -0
  64. data/lib-backcompat/chef/chef_fs/file_system/chef_server_root_dir.rb +5 -0
  65. data/lib/chef.rb +17 -17
  66. data/lib/chef/api_client.rb +31 -30
  67. data/lib/chef/api_client/registration.rb +34 -10
  68. data/lib/chef/api_client_v1.rb +36 -36
  69. data/lib/chef/application.rb +32 -23
  70. data/lib/chef/application/apply.rb +20 -20
  71. data/lib/chef/application/client.rb +63 -43
  72. data/lib/chef/application/knife.rb +21 -15
  73. data/lib/chef/application/solo.rb +52 -41
  74. data/lib/chef/application/windows_service.rb +25 -25
  75. data/lib/chef/application/windows_service_manager.rb +22 -22
  76. data/lib/chef/applications.rb +4 -4
  77. data/lib/chef/audit/audit_event_proxy.rb +3 -3
  78. data/lib/chef/audit/audit_reporter.rb +8 -10
  79. data/lib/chef/audit/control_group_data.rb +9 -10
  80. data/lib/chef/audit/logger.rb +3 -3
  81. data/lib/chef/audit/rspec_formatter.rb +2 -2
  82. data/lib/chef/audit/runner.rb +15 -14
  83. data/lib/chef/chef_class.rb +10 -7
  84. data/lib/chef/chef_fs.rb +51 -1
  85. data/lib/chef/chef_fs/chef_fs_data_store.rb +320 -125
  86. data/lib/chef/chef_fs/command_line.rb +8 -8
  87. data/lib/chef/chef_fs/config.rb +52 -23
  88. data/lib/chef/chef_fs/data_handler/acl_data_handler.rb +10 -10
  89. data/lib/chef/chef_fs/data_handler/client_data_handler.rb +12 -12
  90. data/lib/chef/chef_fs/data_handler/container_data_handler.rb +6 -6
  91. data/lib/chef/chef_fs/data_handler/cookbook_data_handler.rb +15 -15
  92. data/lib/chef/chef_fs/data_handler/data_bag_item_data_handler.rb +11 -11
  93. data/lib/chef/chef_fs/data_handler/data_handler_base.rb +8 -8
  94. data/lib/chef/chef_fs/data_handler/environment_data_handler.rb +14 -14
  95. data/lib/chef/chef_fs/data_handler/group_data_handler.rb +18 -18
  96. data/lib/chef/chef_fs/data_handler/node_data_handler.rb +14 -14
  97. data/lib/chef/chef_fs/data_handler/organization_data_handler.rb +9 -9
  98. data/lib/chef/chef_fs/data_handler/organization_invites_data_handler.rb +2 -2
  99. data/lib/chef/chef_fs/data_handler/organization_members_data_handler.rb +2 -2
  100. data/lib/chef/chef_fs/data_handler/policy_data_handler.rb +30 -3
  101. data/lib/chef/chef_fs/data_handler/policy_group_data_handler.rb +27 -0
  102. data/lib/chef/chef_fs/data_handler/role_data_handler.rb +16 -16
  103. data/lib/chef/chef_fs/data_handler/user_data_handler.rb +12 -12
  104. data/lib/chef/chef_fs/file_pattern.rb +25 -25
  105. data/lib/chef/chef_fs/file_system.rb +10 -10
  106. data/lib/chef/chef_fs/file_system/already_exists_error.rb +3 -6
  107. data/lib/chef/chef_fs/file_system/base_fs_dir.rb +4 -4
  108. data/lib/chef/chef_fs/file_system/base_fs_object.rb +8 -8
  109. data/lib/chef/chef_fs/file_system/chef_server/acl_dir.rb +65 -0
  110. data/lib/chef/chef_fs/file_system/chef_server/acl_entry.rb +60 -0
  111. data/lib/chef/chef_fs/file_system/chef_server/acls_dir.rb +75 -0
  112. data/lib/chef/chef_fs/file_system/chef_server/chef_server_root_dir.rb +196 -0
  113. data/lib/chef/chef_fs/file_system/{chef_repository_file_system_acls_dir.rb → chef_server/cookbook_artifact_dir.rb} +13 -12
  114. data/lib/chef/chef_fs/file_system/chef_server/cookbook_artifacts_dir.rb +102 -0
  115. data/lib/chef/chef_fs/file_system/chef_server/cookbook_dir.rb +222 -0
  116. data/lib/chef/chef_fs/file_system/chef_server/cookbook_file.rb +84 -0
  117. data/lib/chef/chef_fs/file_system/chef_server/cookbook_subdir.rb +61 -0
  118. data/lib/chef/chef_fs/file_system/chef_server/cookbooks_acl_dir.rb +42 -0
  119. data/lib/chef/chef_fs/file_system/chef_server/cookbooks_dir.rb +102 -0
  120. data/lib/chef/chef_fs/file_system/chef_server/data_bag_dir.rb +71 -0
  121. data/lib/chef/chef_fs/file_system/chef_server/data_bags_dir.rb +69 -0
  122. data/lib/chef/chef_fs/file_system/chef_server/environments_dir.rb +57 -0
  123. data/lib/chef/chef_fs/file_system/chef_server/nodes_dir.rb +53 -0
  124. data/lib/chef/chef_fs/file_system/chef_server/org_entry.rb +31 -0
  125. data/lib/chef/chef_fs/file_system/chef_server/organization_invites_entry.rb +61 -0
  126. data/lib/chef/chef_fs/file_system/chef_server/organization_members_entry.rb +60 -0
  127. data/lib/chef/chef_fs/file_system/chef_server/policies_acl_dir.rb +41 -0
  128. data/lib/chef/chef_fs/file_system/chef_server/policies_dir.rb +160 -0
  129. data/lib/chef/chef_fs/file_system/chef_server/policy_group_entry.rb +137 -0
  130. data/lib/chef/chef_fs/file_system/chef_server/policy_groups_dir.rb +43 -0
  131. data/lib/chef/chef_fs/file_system/chef_server/policy_revision_entry.rb +34 -0
  132. data/lib/chef/chef_fs/file_system/chef_server/rest_list_dir.rb +178 -0
  133. data/lib/chef/chef_fs/file_system/chef_server/rest_list_entry.rb +187 -0
  134. data/lib/chef/chef_fs/file_system/chef_server/versioned_cookbook_dir.rb +45 -0
  135. data/lib/chef/chef_fs/file_system/chef_server/versioned_cookbooks_dir.rb +107 -0
  136. data/lib/chef/chef_fs/file_system/cookbook_frozen_error.rb +3 -6
  137. data/lib/chef/chef_fs/file_system/default_environment_cannot_be_modified_error.rb +3 -7
  138. data/lib/chef/chef_fs/file_system/file_system_error.rb +14 -3
  139. data/lib/chef/chef_fs/file_system/memory/memory_dir.rb +53 -0
  140. data/lib/chef/chef_fs/file_system/memory/memory_file.rb +20 -0
  141. data/lib/chef/chef_fs/file_system/memory/memory_root.rb +23 -0
  142. data/lib/chef/chef_fs/file_system/multiplexed_dir.rb +2 -2
  143. data/lib/chef/chef_fs/file_system/must_delete_recursively_error.rb +3 -6
  144. data/lib/chef/chef_fs/file_system/nonexistent_fs_object.rb +4 -4
  145. data/lib/chef/chef_fs/file_system/not_found_error.rb +3 -6
  146. data/lib/chef/chef_fs/file_system/operation_failed_error.rb +5 -5
  147. data/lib/chef/chef_fs/file_system/operation_not_allowed_error.rb +16 -18
  148. data/lib/chef/chef_fs/file_system/repository/chef_repository_file_system_acls_dir.rb +39 -0
  149. data/lib/chef/chef_fs/file_system/repository/chef_repository_file_system_cookbook_artifact_dir.rb +41 -0
  150. data/lib/chef/chef_fs/file_system/{chef_repository_file_system_policies_dir.rb → repository/chef_repository_file_system_cookbook_artifacts_dir.rb} +9 -13
  151. data/lib/chef/chef_fs/file_system/repository/chef_repository_file_system_cookbook_dir.rb +95 -0
  152. data/lib/chef/chef_fs/file_system/repository/chef_repository_file_system_cookbook_entry.rb +82 -0
  153. data/lib/chef/chef_fs/file_system/repository/chef_repository_file_system_cookbooks_dir.rb +84 -0
  154. data/lib/chef/chef_fs/file_system/repository/chef_repository_file_system_data_bags_dir.rb +38 -0
  155. data/lib/chef/chef_fs/file_system/repository/chef_repository_file_system_entry.rb +83 -0
  156. data/lib/chef/chef_fs/file_system/repository/chef_repository_file_system_policies_dir.rb +38 -0
  157. data/lib/chef/chef_fs/file_system/repository/chef_repository_file_system_root_dir.rb +210 -0
  158. data/lib/chef/chef_fs/file_system/repository/chef_repository_file_system_versioned_cookbook_dir.rb +42 -0
  159. data/lib/chef/chef_fs/file_system/{chef_repository_file_system_data_bags_dir.rb → repository/chef_repository_file_system_versioned_cookbooks_dir.rb} +9 -11
  160. data/lib/chef/chef_fs/file_system/repository/file_system_entry.rb +117 -0
  161. data/lib/chef/chef_fs/file_system/{file_system_root_dir.rb → repository/file_system_root_dir.rb} +8 -6
  162. data/lib/chef/chef_fs/knife.rb +16 -16
  163. data/lib/chef/chef_fs/parallelizer.rb +3 -3
  164. data/lib/chef/chef_fs/parallelizer/flatten_enumerable.rb +1 -1
  165. data/lib/chef/chef_fs/parallelizer/parallel_enumerable.rb +3 -3
  166. data/lib/chef/chef_fs/path_utils.rb +11 -10
  167. data/lib/chef/client.rb +80 -71
  168. data/lib/chef/config.rb +10 -10
  169. data/lib/chef/config_fetcher.rb +12 -4
  170. data/lib/chef/constants.rb +2 -1
  171. data/lib/chef/cookbook/chefignore.rb +4 -5
  172. data/lib/chef/cookbook/cookbook_collection.rb +6 -6
  173. data/lib/chef/cookbook/cookbook_version_loader.rb +15 -15
  174. data/lib/chef/cookbook/file_system_file_vendor.rb +4 -4
  175. data/lib/chef/cookbook/file_vendor.rb +3 -4
  176. data/lib/chef/cookbook/metadata.rb +108 -107
  177. data/lib/chef/cookbook/remote_file_vendor.rb +7 -7
  178. data/lib/chef/cookbook/synchronizer.rb +11 -10
  179. data/lib/chef/cookbook/syntax_check.rb +14 -14
  180. data/lib/chef/cookbook_loader.rb +14 -14
  181. data/lib/chef/cookbook_manifest.rb +16 -15
  182. data/lib/chef/cookbook_site_streaming_uploader.rb +22 -22
  183. data/lib/chef/cookbook_uploader.rb +22 -21
  184. data/lib/chef/cookbook_version.rb +87 -87
  185. data/lib/chef/daemon.rb +6 -6
  186. data/lib/chef/data_bag.rb +32 -26
  187. data/lib/chef/data_bag_item.rb +43 -40
  188. data/lib/chef/delayed_evaluator.rb +1 -1
  189. data/lib/chef/deprecation/mixin/template.rb +4 -4
  190. data/lib/chef/deprecation/provider/cookbook_file.rb +2 -3
  191. data/lib/chef/deprecation/provider/file.rb +10 -10
  192. data/lib/chef/deprecation/provider/remote_directory.rb +5 -5
  193. data/lib/chef/deprecation/provider/remote_file.rb +3 -3
  194. data/lib/chef/deprecation/provider/template.rb +3 -3
  195. data/lib/chef/deprecation/warnings.rb +2 -2
  196. data/lib/chef/digester.rb +6 -6
  197. data/lib/chef/dsl.rb +6 -6
  198. data/lib/chef/dsl/audit.rb +4 -4
  199. data/lib/chef/dsl/chef_provisioning.rb +5 -5
  200. data/lib/chef/dsl/cheffish.rb +5 -5
  201. data/lib/chef/dsl/data_query.rb +10 -10
  202. data/lib/chef/dsl/declare_resource.rb +8 -8
  203. data/lib/chef/dsl/definitions.rb +1 -2
  204. data/lib/chef/dsl/include_attribute.rb +4 -6
  205. data/lib/chef/dsl/include_recipe.rb +4 -4
  206. data/lib/chef/dsl/platform_introspection.rb +8 -14
  207. data/lib/chef/dsl/powershell.rb +3 -3
  208. data/lib/chef/dsl/reboot_pending.rb +12 -13
  209. data/lib/chef/dsl/recipe.rb +20 -20
  210. data/lib/chef/dsl/registry_helper.rb +7 -3
  211. data/lib/chef/dsl/resources.rb +6 -5
  212. data/lib/chef/encrypted_data_bag_item.rb +10 -10
  213. data/lib/chef/encrypted_data_bag_item/assertions.rb +4 -4
  214. data/lib/chef/encrypted_data_bag_item/check_encrypted.rb +3 -3
  215. data/lib/chef/encrypted_data_bag_item/decryption_failure.rb +2 -2
  216. data/lib/chef/encrypted_data_bag_item/decryptor.rb +16 -14
  217. data/lib/chef/encrypted_data_bag_item/encrypted_data_bag_item_assertions.rb +1 -1
  218. data/lib/chef/encrypted_data_bag_item/encryption_failure.rb +1 -1
  219. data/lib/chef/encrypted_data_bag_item/encryptor.rb +20 -20
  220. data/lib/chef/encrypted_data_bag_item/unacceptable_encrypted_data_bag_item_format.rb +2 -2
  221. data/lib/chef/encrypted_data_bag_item/unsupported_cipher.rb +2 -2
  222. data/lib/chef/encrypted_data_bag_item/unsupported_encrypted_data_bag_item_format.rb +2 -2
  223. data/lib/chef/environment.rb +41 -34
  224. data/lib/chef/event_dispatch/base.rb +2 -2
  225. data/lib/chef/event_dispatch/dispatcher.rb +2 -2
  226. data/lib/chef/event_dispatch/dsl.rb +6 -5
  227. data/lib/chef/event_loggers/base.rb +3 -3
  228. data/lib/chef/event_loggers/windows_eventlog.rb +11 -11
  229. data/lib/chef/exceptions.rb +23 -34
  230. data/lib/chef/file_access_control.rb +6 -6
  231. data/lib/chef/file_access_control/unix.rb +5 -5
  232. data/lib/chef/file_access_control/windows.rb +5 -5
  233. data/lib/chef/file_cache.rb +21 -21
  234. data/lib/chef/file_content_management/content_base.rb +2 -2
  235. data/lib/chef/file_content_management/deploy.rb +5 -6
  236. data/lib/chef/file_content_management/deploy/cp.rb +2 -2
  237. data/lib/chef/file_content_management/deploy/mv_unix.rb +2 -3
  238. data/lib/chef/file_content_management/deploy/mv_windows.rb +4 -6
  239. data/lib/chef/file_content_management/tempfile.rb +3 -3
  240. data/lib/chef/formatters/base.rb +8 -9
  241. data/lib/chef/formatters/doc.rb +7 -7
  242. data/lib/chef/formatters/error_descriptor.rb +5 -5
  243. data/lib/chef/formatters/error_inspectors.rb +5 -5
  244. data/lib/chef/formatters/error_inspectors/api_error_formatting.rb +50 -15
  245. data/lib/chef/formatters/error_inspectors/compile_error_inspector.rb +11 -11
  246. data/lib/chef/formatters/error_inspectors/cookbook_resolve_error_inspector.rb +8 -8
  247. data/lib/chef/formatters/error_inspectors/cookbook_sync_error_inspector.rb +8 -6
  248. data/lib/chef/formatters/error_inspectors/node_load_error_inspector.rb +14 -13
  249. data/lib/chef/formatters/error_inspectors/registration_error_inspector.rb +19 -17
  250. data/lib/chef/formatters/error_inspectors/resource_failure_inspector.rb +8 -11
  251. data/lib/chef/formatters/error_inspectors/run_list_expansion_error_inspector.rb +15 -14
  252. data/lib/chef/formatters/error_mapper.rb +2 -2
  253. data/lib/chef/formatters/indentable_output_stream.rb +5 -5
  254. data/lib/chef/formatters/minimal.rb +7 -9
  255. data/lib/chef/guard_interpreter.rb +3 -3
  256. data/lib/chef/guard_interpreter/default_guard_interpreter.rb +3 -4
  257. data/lib/chef/guard_interpreter/resource_guard_interpreter.rb +9 -9
  258. data/lib/chef/handler.rb +4 -4
  259. data/lib/chef/handler/error_report.rb +4 -4
  260. data/lib/chef/handler/json_file.rb +5 -5
  261. data/lib/chef/http.rb +32 -35
  262. data/lib/chef/http/auth_credentials.rb +12 -12
  263. data/lib/chef/http/authenticator.rb +17 -12
  264. data/lib/chef/http/basic_client.rb +20 -20
  265. data/lib/chef/http/cookie_jar.rb +7 -7
  266. data/lib/chef/http/cookie_manager.rb +8 -8
  267. data/lib/chef/http/decompressor.rb +7 -9
  268. data/lib/chef/http/http_request.rb +31 -32
  269. data/lib/chef/http/json_input.rb +9 -9
  270. data/lib/chef/http/json_output.rb +9 -9
  271. data/lib/chef/http/json_to_model_output.rb +4 -4
  272. data/lib/chef/http/remote_request_id.rb +6 -6
  273. data/lib/chef/http/simple.rb +23 -5
  274. data/lib/chef/http/simple_json.rb +43 -0
  275. data/lib/chef/http/socketless_chef_zero_client.rb +56 -57
  276. data/lib/chef/http/ssl_policies.rb +9 -9
  277. data/lib/chef/http/validate_content_length.rb +12 -12
  278. data/lib/chef/json_compat.rb +6 -6
  279. data/lib/chef/key.rb +44 -42
  280. data/lib/chef/knife.rb +47 -44
  281. data/lib/chef/knife/bootstrap.rb +32 -32
  282. data/lib/chef/knife/bootstrap/chef_vault_handler.rb +16 -23
  283. data/lib/chef/knife/bootstrap/client_builder.rb +15 -13
  284. data/lib/chef/knife/bootstrap/templates/chef-full.erb +1 -1
  285. data/lib/chef/knife/client_bulk_delete.rb +5 -5
  286. data/lib/chef/knife/client_create.rb +5 -5
  287. data/lib/chef/knife/client_delete.rb +6 -6
  288. data/lib/chef/knife/client_edit.rb +5 -5
  289. data/lib/chef/knife/client_key_create.rb +6 -6
  290. data/lib/chef/knife/client_key_delete.rb +6 -6
  291. data/lib/chef/knife/client_key_edit.rb +8 -9
  292. data/lib/chef/knife/client_key_list.rb +5 -5
  293. data/lib/chef/knife/client_key_show.rb +5 -5
  294. data/lib/chef/knife/client_list.rb +5 -5
  295. data/lib/chef/knife/client_reregister.rb +5 -5
  296. data/lib/chef/knife/client_show.rb +5 -5
  297. data/lib/chef/knife/configure.rb +14 -14
  298. data/lib/chef/knife/configure_client.rb +6 -6
  299. data/lib/chef/knife/cookbook_bulk_delete.rb +9 -10
  300. data/lib/chef/knife/cookbook_create.rb +12 -12
  301. data/lib/chef/knife/cookbook_delete.rb +10 -10
  302. data/lib/chef/knife/cookbook_download.rb +8 -10
  303. data/lib/chef/knife/cookbook_list.rb +5 -5
  304. data/lib/chef/knife/cookbook_metadata.rb +8 -8
  305. data/lib/chef/knife/cookbook_metadata_from_file.rb +5 -5
  306. data/lib/chef/knife/cookbook_show.rb +14 -18
  307. data/lib/chef/knife/cookbook_site_download.rb +22 -22
  308. data/lib/chef/knife/cookbook_site_install.rb +10 -10
  309. data/lib/chef/knife/cookbook_site_list.rb +6 -10
  310. data/lib/chef/knife/cookbook_site_search.rb +5 -10
  311. data/lib/chef/knife/cookbook_site_share.rb +17 -18
  312. data/lib/chef/knife/cookbook_site_show.rb +7 -12
  313. data/lib/chef/knife/cookbook_site_unshare.rb +6 -6
  314. data/lib/chef/knife/cookbook_site_vendor.rb +5 -5
  315. data/lib/chef/knife/cookbook_test.rb +6 -7
  316. data/lib/chef/knife/cookbook_upload.rb +19 -20
  317. data/lib/chef/knife/core/bootstrap_context.rb +25 -21
  318. data/lib/chef/knife/core/cookbook_scm_repo.rb +11 -12
  319. data/lib/chef/knife/core/custom_manifest_loader.rb +2 -2
  320. data/lib/chef/knife/core/gem_glob_loader.rb +11 -11
  321. data/lib/chef/knife/core/generic_presenter.rb +33 -34
  322. data/lib/chef/knife/core/hashed_command_loader.rb +6 -6
  323. data/lib/chef/knife/core/node_editor.rb +59 -38
  324. data/lib/chef/knife/core/node_presenter.rb +13 -14
  325. data/lib/chef/knife/core/object_loader.rb +9 -9
  326. data/lib/chef/knife/core/status_presenter.rb +17 -17
  327. data/lib/chef/knife/core/subcommand_loader.rb +19 -20
  328. data/lib/chef/knife/core/text_formatter.rb +13 -14
  329. data/lib/chef/knife/core/ui.rb +17 -18
  330. data/lib/chef/knife/data_bag_create.rb +11 -10
  331. data/lib/chef/knife/data_bag_delete.rb +6 -8
  332. data/lib/chef/knife/data_bag_edit.rb +8 -11
  333. data/lib/chef/knife/data_bag_from_file.rb +12 -11
  334. data/lib/chef/knife/data_bag_list.rb +4 -8
  335. data/lib/chef/knife/data_bag_secret_options.rb +6 -6
  336. data/lib/chef/knife/data_bag_show.rb +31 -31
  337. data/lib/chef/knife/delete.rb +6 -7
  338. data/lib/chef/knife/deps.rb +18 -18
  339. data/lib/chef/knife/diff.rb +8 -9
  340. data/lib/chef/knife/download.rb +11 -12
  341. data/lib/chef/knife/edit.rb +5 -6
  342. data/lib/chef/knife/environment_compare.rb +23 -23
  343. data/lib/chef/knife/environment_create.rb +5 -5
  344. data/lib/chef/knife/environment_delete.rb +5 -5
  345. data/lib/chef/knife/environment_edit.rb +5 -5
  346. data/lib/chef/knife/environment_from_file.rb +4 -5
  347. data/lib/chef/knife/environment_list.rb +5 -5
  348. data/lib/chef/knife/environment_show.rb +5 -5
  349. data/lib/chef/knife/exec.rb +7 -7
  350. data/lib/chef/knife/help.rb +7 -9
  351. data/lib/chef/knife/index_rebuild.rb +4 -5
  352. data/lib/chef/knife/key_create.rb +5 -5
  353. data/lib/chef/knife/key_create_base.rb +1 -1
  354. data/lib/chef/knife/key_delete.rb +2 -2
  355. data/lib/chef/knife/key_edit.rb +5 -5
  356. data/lib/chef/knife/key_edit_base.rb +1 -1
  357. data/lib/chef/knife/key_list.rb +12 -12
  358. data/lib/chef/knife/key_list_base.rb +1 -1
  359. data/lib/chef/knife/key_show.rb +4 -4
  360. data/lib/chef/knife/list.rb +14 -13
  361. data/lib/chef/knife/node_bulk_delete.rb +6 -12
  362. data/lib/chef/knife/node_create.rb +5 -8
  363. data/lib/chef/knife/node_delete.rb +5 -6
  364. data/lib/chef/knife/node_edit.rb +6 -8
  365. data/lib/chef/knife/node_environment_set.rb +4 -4
  366. data/lib/chef/knife/node_from_file.rb +10 -10
  367. data/lib/chef/knife/node_list.rb +5 -7
  368. data/lib/chef/knife/node_run_list_add.rb +8 -8
  369. data/lib/chef/knife/node_run_list_remove.rb +8 -8
  370. data/lib/chef/knife/node_run_list_set.rb +6 -6
  371. data/lib/chef/knife/node_show.rb +6 -7
  372. data/lib/chef/knife/osc_user_create.rb +5 -5
  373. data/lib/chef/knife/osc_user_delete.rb +5 -5
  374. data/lib/chef/knife/osc_user_edit.rb +5 -5
  375. data/lib/chef/knife/osc_user_list.rb +5 -5
  376. data/lib/chef/knife/osc_user_reregister.rb +5 -5
  377. data/lib/chef/knife/osc_user_show.rb +5 -5
  378. data/lib/chef/knife/raw.rb +18 -17
  379. data/lib/chef/knife/recipe_list.rb +4 -4
  380. data/lib/chef/knife/rehash.rb +9 -9
  381. data/lib/chef/knife/role_bulk_delete.rb +5 -10
  382. data/lib/chef/knife/role_create.rb +5 -7
  383. data/lib/chef/knife/role_delete.rb +5 -6
  384. data/lib/chef/knife/role_edit.rb +5 -8
  385. data/lib/chef/knife/role_env_run_list_add.rb +9 -9
  386. data/lib/chef/knife/role_env_run_list_clear.rb +4 -4
  387. data/lib/chef/knife/role_env_run_list_remove.rb +13 -13
  388. data/lib/chef/knife/role_env_run_list_replace.rb +6 -6
  389. data/lib/chef/knife/role_env_run_list_set.rb +6 -6
  390. data/lib/chef/knife/role_from_file.rb +6 -11
  391. data/lib/chef/knife/role_list.rb +5 -6
  392. data/lib/chef/knife/role_run_list_add.rb +9 -9
  393. data/lib/chef/knife/role_run_list_clear.rb +4 -4
  394. data/lib/chef/knife/role_run_list_remove.rb +13 -13
  395. data/lib/chef/knife/role_run_list_replace.rb +6 -6
  396. data/lib/chef/knife/role_run_list_set.rb +6 -6
  397. data/lib/chef/knife/role_show.rb +5 -8
  398. data/lib/chef/knife/search.rb +11 -11
  399. data/lib/chef/knife/serve.rb +10 -10
  400. data/lib/chef/knife/show.rb +4 -4
  401. data/lib/chef/knife/ssh.rb +34 -34
  402. data/lib/chef/knife/ssl_check.rb +12 -11
  403. data/lib/chef/knife/ssl_fetch.rb +13 -15
  404. data/lib/chef/knife/status.rb +10 -10
  405. data/lib/chef/knife/tag_create.rb +5 -5
  406. data/lib/chef/knife/tag_delete.rb +5 -5
  407. data/lib/chef/knife/tag_list.rb +5 -5
  408. data/lib/chef/knife/upload.rb +10 -11
  409. data/lib/chef/knife/user_create.rb +6 -8
  410. data/lib/chef/knife/user_delete.rb +6 -7
  411. data/lib/chef/knife/user_edit.rb +6 -7
  412. data/lib/chef/knife/user_key_create.rb +7 -7
  413. data/lib/chef/knife/user_key_delete.rb +6 -6
  414. data/lib/chef/knife/user_key_edit.rb +8 -9
  415. data/lib/chef/knife/user_key_list.rb +5 -5
  416. data/lib/chef/knife/user_key_show.rb +5 -5
  417. data/lib/chef/knife/user_list.rb +5 -5
  418. data/lib/chef/knife/user_reregister.rb +6 -7
  419. data/lib/chef/knife/user_show.rb +6 -6
  420. data/lib/chef/knife/xargs.rb +22 -23
  421. data/lib/chef/local_mode.rb +13 -11
  422. data/lib/chef/log.rb +10 -10
  423. data/lib/chef/log/syslog.rb +5 -6
  424. data/lib/chef/log/winevt.rb +12 -12
  425. data/lib/chef/mash.rb +6 -5
  426. data/lib/chef/mixin/api_version_request_handling.rb +1 -1
  427. data/lib/chef/mixin/checksum.rb +4 -4
  428. data/lib/chef/mixin/command.rb +13 -13
  429. data/lib/chef/mixin/command/unix.rb +7 -7
  430. data/lib/chef/mixin/command/windows.rb +6 -7
  431. data/lib/chef/mixin/convert_to_class_name.rb +11 -11
  432. data/lib/chef/mixin/create_path.rb +3 -3
  433. data/lib/chef/mixin/deep_merge.rb +3 -3
  434. data/lib/chef/mixin/deprecation.rb +24 -25
  435. data/lib/chef/mixin/descendants_tracker.rb +2 -3
  436. data/lib/chef/mixin/enforce_ownership_and_permissions.rb +3 -3
  437. data/lib/chef/mixin/file_class.rb +9 -11
  438. data/lib/chef/mixin/from_file.rb +3 -3
  439. data/lib/chef/mixin/get_source_from_package.rb +2 -3
  440. data/lib/chef/mixin/homebrew_user.rb +6 -6
  441. data/lib/chef/mixin/language.rb +5 -5
  442. data/lib/chef/mixin/language_include_attribute.rb +4 -5
  443. data/lib/chef/mixin/language_include_recipe.rb +4 -5
  444. data/lib/chef/mixin/params_validate.rb +38 -18
  445. data/lib/chef/mixin/path_sanity.rb +7 -7
  446. data/lib/chef/mixin/powershell_out.rb +5 -5
  447. data/lib/chef/mixin/powershell_type_coercions.rb +12 -10
  448. data/lib/chef/mixin/properties.rb +8 -8
  449. data/lib/chef/mixin/provides.rb +2 -2
  450. data/lib/chef/mixin/proxified_socket.rb +4 -4
  451. data/lib/chef/mixin/recipe_definition_dsl_core.rb +4 -4
  452. data/lib/chef/mixin/securable.rb +24 -27
  453. data/lib/chef/mixin/shell_out.rb +10 -10
  454. data/lib/chef/mixin/subclass_directive.rb +2 -2
  455. data/lib/chef/mixin/template.rb +8 -9
  456. data/lib/chef/mixin/unformatter.rb +1 -1
  457. data/lib/chef/mixin/uris.rb +2 -3
  458. data/lib/chef/mixin/which.rb +3 -3
  459. data/lib/chef/mixin/why_run.rb +6 -7
  460. data/lib/chef/mixin/wide_string.rb +7 -7
  461. data/lib/chef/mixin/windows_architecture_helper.rb +9 -10
  462. data/lib/chef/mixin/windows_env_helper.rb +10 -11
  463. data/lib/chef/mixin/xml_escape.rb +13 -13
  464. data/lib/chef/mixins.rb +13 -14
  465. data/lib/chef/monkey_patches/net-ssh-multi.rb +6 -6
  466. data/lib/chef/monkey_patches/net_http.rb +2 -2
  467. data/lib/chef/monkey_patches/webrick-utils.rb +6 -6
  468. data/lib/chef/monkey_patches/win32/registry.rb +6 -6
  469. data/lib/chef/monologger.rb +2 -4
  470. data/lib/chef/node.rb +66 -60
  471. data/lib/chef/node/attribute.rb +289 -289
  472. data/lib/chef/node/attribute_collections.rb +8 -8
  473. data/lib/chef/node/immutable_collections.rb +3 -3
  474. data/lib/chef/node_map.rb +11 -11
  475. data/lib/chef/null_logger.rb +3 -3
  476. data/lib/chef/org.rb +31 -30
  477. data/lib/chef/platform.rb +4 -4
  478. data/lib/chef/platform/handler_map.rb +2 -2
  479. data/lib/chef/platform/priority_map.rb +2 -2
  480. data/lib/chef/platform/provider_handler_map.rb +3 -3
  481. data/lib/chef/platform/provider_mapping.rb +33 -33
  482. data/lib/chef/platform/provider_priority_map.rb +2 -2
  483. data/lib/chef/platform/query_helpers.rb +10 -11
  484. data/lib/chef/platform/rebooter.rb +11 -11
  485. data/lib/chef/platform/resource_handler_map.rb +3 -3
  486. data/lib/chef/platform/resource_priority_map.rb +2 -2
  487. data/lib/chef/platform/service_helpers.rb +5 -5
  488. data/lib/chef/policy_builder.rb +5 -5
  489. data/lib/chef/policy_builder/dynamic.rb +10 -11
  490. data/lib/chef/policy_builder/expand_node_object.rb +24 -19
  491. data/lib/chef/policy_builder/policyfile.rb +13 -14
  492. data/lib/chef/property.rb +115 -49
  493. data/lib/chef/provider.rb +43 -43
  494. data/lib/chef/provider/apt_update.rb +79 -0
  495. data/lib/chef/provider/batch.rb +6 -6
  496. data/lib/chef/provider/breakpoint.rb +1 -1
  497. data/lib/chef/provider/cookbook_file.rb +5 -5
  498. data/lib/chef/provider/cookbook_file/content.rb +4 -4
  499. data/lib/chef/provider/cron.rb +8 -8
  500. data/lib/chef/provider/cron/aix.rb +1 -1
  501. data/lib/chef/provider/cron/solaris.rb +1 -1
  502. data/lib/chef/provider/cron/unix.rb +7 -7
  503. data/lib/chef/provider/deploy.rb +7 -8
  504. data/lib/chef/provider/deploy/revision.rb +9 -9
  505. data/lib/chef/provider/deploy/timestamped.rb +1 -1
  506. data/lib/chef/provider/directory.rb +8 -8
  507. data/lib/chef/provider/dsc_resource.rb +33 -27
  508. data/lib/chef/provider/dsc_script.rb +17 -17
  509. data/lib/chef/provider/env.rb +8 -8
  510. data/lib/chef/provider/env/windows.rb +3 -3
  511. data/lib/chef/provider/erl_call.rb +5 -5
  512. data/lib/chef/provider/execute.rb +8 -8
  513. data/lib/chef/provider/file.rb +24 -24
  514. data/lib/chef/provider/file/content.rb +4 -4
  515. data/lib/chef/provider/git.rb +33 -35
  516. data/lib/chef/provider/group.rb +7 -7
  517. data/lib/chef/provider/group/aix.rb +6 -6
  518. data/lib/chef/provider/group/dscl.rb +11 -11
  519. data/lib/chef/provider/group/gpasswd.rb +3 -3
  520. data/lib/chef/provider/group/groupadd.rb +8 -8
  521. data/lib/chef/provider/group/groupmod.rb +3 -3
  522. data/lib/chef/provider/group/pw.rb +2 -2
  523. data/lib/chef/provider/group/suse.rb +5 -5
  524. data/lib/chef/provider/group/usermod.rb +8 -8
  525. data/lib/chef/provider/group/windows.rb +5 -5
  526. data/lib/chef/provider/http_request.rb +15 -15
  527. data/lib/chef/provider/ifconfig.rb +15 -14
  528. data/lib/chef/provider/ifconfig/aix.rb +5 -4
  529. data/lib/chef/provider/ifconfig/debian.rb +6 -6
  530. data/lib/chef/provider/ifconfig/redhat.rb +3 -3
  531. data/lib/chef/provider/link.rb +13 -13
  532. data/lib/chef/provider/log.rb +1 -1
  533. data/lib/chef/provider/lwrp_base.rb +8 -8
  534. data/lib/chef/provider/mdadm.rb +4 -4
  535. data/lib/chef/provider/mount.rb +13 -13
  536. data/lib/chef/provider/mount/aix.rb +14 -14
  537. data/lib/chef/provider/mount/mount.rb +18 -18
  538. data/lib/chef/provider/mount/solaris.rb +30 -30
  539. data/lib/chef/provider/mount/windows.rb +4 -4
  540. data/lib/chef/provider/ohai.rb +2 -2
  541. data/lib/chef/provider/osx_profile.rb +256 -0
  542. data/lib/chef/provider/package.rb +19 -19
  543. data/lib/chef/provider/package/aix.rb +8 -9
  544. data/lib/chef/provider/package/apt.rb +12 -12
  545. data/lib/chef/provider/package/chocolatey.rb +277 -0
  546. data/lib/chef/provider/package/dpkg.rb +7 -7
  547. data/lib/chef/provider/package/easy_install.rb +14 -15
  548. data/lib/chef/provider/package/freebsd/base.rb +7 -7
  549. data/lib/chef/provider/package/freebsd/pkg.rb +8 -8
  550. data/lib/chef/provider/package/freebsd/pkgng.rb +6 -6
  551. data/lib/chef/provider/package/freebsd/port.rb +4 -4
  552. data/lib/chef/provider/package/homebrew.rb +16 -16
  553. data/lib/chef/provider/package/ips.rb +8 -8
  554. data/lib/chef/provider/package/macports.rb +1 -0
  555. data/lib/chef/provider/package/openbsd.rb +13 -13
  556. data/lib/chef/provider/package/pacman.rb +6 -9
  557. data/lib/chef/provider/package/paludis.rb +7 -10
  558. data/lib/chef/provider/package/portage.rb +10 -13
  559. data/lib/chef/provider/package/rpm.rb +7 -8
  560. data/lib/chef/provider/package/rubygems.rb +64 -64
  561. data/lib/chef/provider/package/smartos.rb +7 -10
  562. data/lib/chef/provider/package/solaris.rb +6 -11
  563. data/lib/chef/provider/package/windows.rb +38 -29
  564. data/lib/chef/provider/package/windows/exe.rb +9 -21
  565. data/lib/chef/provider/package/windows/msi.rb +12 -12
  566. data/lib/chef/provider/package/windows/registry_uninstall_entry.rb +7 -7
  567. data/lib/chef/provider/package/yum-dump.py +1 -1
  568. data/lib/chef/provider/package/yum.rb +43 -44
  569. data/lib/chef/provider/package/zypper.rb +57 -47
  570. data/lib/chef/provider/powershell_script.rb +14 -14
  571. data/lib/chef/provider/reboot.rb +5 -5
  572. data/lib/chef/provider/registry_key.rb +16 -16
  573. data/lib/chef/provider/remote_directory.rb +15 -15
  574. data/lib/chef/provider/remote_file.rb +5 -5
  575. data/lib/chef/provider/remote_file/cache_control_data.rb +11 -12
  576. data/lib/chef/provider/remote_file/content.rb +11 -11
  577. data/lib/chef/provider/remote_file/fetcher.rb +2 -2
  578. data/lib/chef/provider/remote_file/ftp.rb +11 -11
  579. data/lib/chef/provider/remote_file/http.rb +9 -9
  580. data/lib/chef/provider/remote_file/local_file.rb +5 -5
  581. data/lib/chef/provider/remote_file/network_file.rb +4 -4
  582. data/lib/chef/provider/route.rb +188 -188
  583. data/lib/chef/provider/ruby_block.rb +3 -3
  584. data/lib/chef/provider/script.rb +5 -5
  585. data/lib/chef/provider/service.rb +30 -30
  586. data/lib/chef/provider/service/aix.rb +4 -4
  587. data/lib/chef/provider/service/aixinit.rb +12 -12
  588. data/lib/chef/provider/service/arch.rb +5 -5
  589. data/lib/chef/provider/service/debian.rb +12 -13
  590. data/lib/chef/provider/service/freebsd.rb +7 -7
  591. data/lib/chef/provider/service/gentoo.rb +5 -5
  592. data/lib/chef/provider/service/init.rb +4 -4
  593. data/lib/chef/provider/service/insserv.rb +4 -4
  594. data/lib/chef/provider/service/invokercd.rb +3 -3
  595. data/lib/chef/provider/service/macosx.rb +19 -19
  596. data/lib/chef/provider/service/openbsd.rb +14 -14
  597. data/lib/chef/provider/service/redhat.rb +6 -6
  598. data/lib/chef/provider/service/simple.rb +10 -9
  599. data/lib/chef/provider/service/solaris.rb +8 -8
  600. data/lib/chef/provider/service/systemd.rb +4 -4
  601. data/lib/chef/provider/service/upstart.rb +8 -8
  602. data/lib/chef/provider/service/windows.rb +32 -78
  603. data/lib/chef/provider/subversion.rb +13 -13
  604. data/lib/chef/provider/template.rb +7 -7
  605. data/lib/chef/provider/template/content.rb +4 -4
  606. data/lib/chef/provider/template_finder.rb +2 -1
  607. data/lib/chef/provider/user.rb +9 -10
  608. data/lib/chef/provider/user/aix.rb +4 -3
  609. data/lib/chef/provider/user/dscl.rb +39 -40
  610. data/lib/chef/provider/user/pw.rb +9 -9
  611. data/lib/chef/provider/user/solaris.rb +9 -9
  612. data/lib/chef/provider/user/useradd.rb +9 -9
  613. data/lib/chef/provider/user/windows.rb +13 -13
  614. data/lib/chef/provider/whyrun_safe_ruby_block.rb +1 -1
  615. data/lib/chef/provider/windows_script.rb +5 -5
  616. data/lib/chef/provider_resolver.rb +3 -3
  617. data/lib/chef/providers.rb +113 -110
  618. data/lib/chef/recipe.rb +13 -14
  619. data/lib/chef/request_id.rb +4 -4
  620. data/lib/chef/resource.rb +103 -93
  621. data/lib/chef/resource/action_class.rb +3 -3
  622. data/lib/chef/resource/apt_package.rb +6 -17
  623. data/lib/chef/{shell/shell_rest.rb → resource/apt_update.rb} +14 -9
  624. data/lib/chef/resource/bash.rb +5 -5
  625. data/lib/chef/resource/batch.rb +4 -4
  626. data/lib/chef/resource/bff_package.rb +3 -3
  627. data/lib/chef/resource/breakpoint.rb +3 -4
  628. data/lib/chef/resource/chef_gem.rb +9 -25
  629. data/lib/chef/resource/chocolatey_package.rb +39 -0
  630. data/lib/chef/resource/conditional.rb +8 -8
  631. data/lib/chef/resource/conditional_action_not_nothing.rb +1 -1
  632. data/lib/chef/resource/cookbook_file.rb +10 -10
  633. data/lib/chef/resource/cron.rb +33 -33
  634. data/lib/chef/resource/csh.rb +5 -5
  635. data/lib/chef/resource/deploy.rb +76 -76
  636. data/lib/chef/resource/deploy_revision.rb +1 -1
  637. data/lib/chef/resource/directory.rb +12 -12
  638. data/lib/chef/resource/dpkg_package.rb +5 -6
  639. data/lib/chef/resource/dsc_resource.rb +121 -120
  640. data/lib/chef/resource/dsc_script.rb +25 -25
  641. data/lib/chef/resource/easy_install_package.rb +6 -25
  642. data/lib/chef/resource/env.rb +9 -9
  643. data/lib/chef/resource/erl_call.rb +15 -15
  644. data/lib/chef/resource/execute.rb +28 -28
  645. data/lib/chef/resource/file.rb +20 -87
  646. data/lib/chef/resource/file/verification.rb +11 -11
  647. data/lib/chef/resource/freebsd_package.rb +10 -9
  648. data/lib/chef/resource/gem_package.rb +8 -23
  649. data/lib/chef/resource/git.rb +4 -4
  650. data/lib/chef/resource/group.rb +18 -19
  651. data/lib/chef/resource/homebrew_package.rb +7 -18
  652. data/lib/chef/resource/http_request.rb +12 -12
  653. data/lib/chef/resource/ifconfig.rb +28 -28
  654. data/lib/chef/resource/ips_package.rb +5 -16
  655. data/lib/chef/resource/ksh.rb +3 -3
  656. data/lib/chef/resource/link.rb +18 -17
  657. data/lib/chef/resource/log.rb +9 -9
  658. data/lib/chef/resource/lwrp_base.rb +10 -10
  659. data/lib/chef/resource/macosx_service.rb +7 -7
  660. data/lib/chef/resource/macports_package.rb +3 -2
  661. data/lib/chef/resource/mdadm.rb +18 -19
  662. data/lib/chef/resource/mount.rb +34 -34
  663. data/lib/chef/resource/ohai.rb +7 -7
  664. data/lib/chef/resource/openbsd_package.rb +7 -6
  665. data/lib/chef/resource/osx_profile.rb +74 -0
  666. data/lib/chef/resource/package.rb +15 -69
  667. data/lib/chef/resource/pacman_package.rb +3 -2
  668. data/lib/chef/resource/paludis_package.rb +5 -7
  669. data/lib/chef/resource/perl.rb +5 -5
  670. data/lib/chef/resource/portage_package.rb +5 -4
  671. data/lib/chef/resource/powershell_script.rb +7 -7
  672. data/lib/chef/resource/python.rb +5 -5
  673. data/lib/chef/resource/reboot.rb +6 -6
  674. data/lib/chef/resource/registry_key.rb +15 -15
  675. data/lib/chef/resource/remote_directory.rb +23 -24
  676. data/lib/chef/resource/remote_file.rb +21 -21
  677. data/lib/chef/resource/resource_notification.rb +2 -2
  678. data/lib/chef/resource/route.rb +26 -26
  679. data/lib/chef/resource/rpm_package.rb +5 -15
  680. data/lib/chef/resource/ruby.rb +5 -5
  681. data/lib/chef/resource/ruby_block.rb +8 -8
  682. data/lib/chef/resource/scm.rb +36 -37
  683. data/lib/chef/resource/script.rb +13 -13
  684. data/lib/chef/resource/service.rb +32 -32
  685. data/lib/chef/resource/smartos_package.rb +4 -3
  686. data/lib/chef/resource/solaris_package.rb +4 -3
  687. data/lib/chef/resource/subversion.rb +6 -6
  688. data/lib/chef/resource/template.rb +19 -19
  689. data/lib/chef/resource/timestamped_deploy.rb +1 -1
  690. data/lib/chef/resource/user.rb +31 -31
  691. data/lib/chef/resource/whyrun_safe_ruby_block.rb +1 -1
  692. data/lib/chef/resource/windows_package.rb +21 -66
  693. data/lib/chef/resource/windows_script.rb +8 -8
  694. data/lib/chef/resource/windows_service.rb +9 -9
  695. data/lib/chef/resource/yum_package.rb +18 -42
  696. data/lib/chef/resource/zypper_package.rb +3 -2
  697. data/lib/chef/resource_builder.rb +4 -4
  698. data/lib/chef/resource_collection.rb +11 -11
  699. data/lib/chef/resource_collection/resource_collection_serialization.rb +5 -5
  700. data/lib/chef/resource_collection/resource_list.rb +6 -6
  701. data/lib/chef/resource_collection/resource_set.rb +6 -6
  702. data/lib/chef/resource_collection/stepable_iterator.rb +4 -4
  703. data/lib/chef/resource_definition.rb +7 -7
  704. data/lib/chef/resource_definition_list.rb +5 -5
  705. data/lib/chef/resource_reporter.rb +14 -15
  706. data/lib/chef/resource_resolver.rb +4 -5
  707. data/lib/chef/resources.rb +71 -68
  708. data/lib/chef/rest.rb +23 -23
  709. data/lib/chef/role.rb +49 -43
  710. data/lib/chef/run_context.rb +21 -23
  711. data/lib/chef/run_context/cookbook_compiler.rb +10 -13
  712. data/lib/chef/run_list.rb +17 -17
  713. data/lib/chef/run_list/run_list_expansion.rb +22 -26
  714. data/lib/chef/run_list/run_list_item.rb +8 -9
  715. data/lib/chef/run_list/versioned_recipe_list.rb +13 -13
  716. data/lib/chef/run_lock.rb +12 -12
  717. data/lib/chef/run_status.rb +3 -3
  718. data/lib/chef/runner.rb +11 -12
  719. data/lib/chef/scan_access_control.rb +7 -7
  720. data/lib/chef/search/query.rb +30 -16
  721. data/lib/chef/server_api.rb +42 -10
  722. data/lib/chef/shell.rb +24 -25
  723. data/lib/chef/shell/ext.rb +31 -31
  724. data/lib/chef/shell/model_wrapper.rb +7 -8
  725. data/lib/chef/shell/shell_session.rb +20 -19
  726. data/lib/chef/shell_out.rb +2 -2
  727. data/lib/chef/tasks/chef_repo.rake +62 -63
  728. data/lib/chef/user.rb +38 -37
  729. data/lib/chef/user_v1.rb +53 -58
  730. data/lib/chef/util/backup.rb +6 -6
  731. data/lib/chef/util/diff.rb +8 -8
  732. data/lib/chef/util/dsc/configuration_generator.rb +11 -11
  733. data/lib/chef/util/dsc/lcm_output_parser.rb +8 -8
  734. data/lib/chef/util/dsc/local_configuration_manager.rb +9 -9
  735. data/lib/chef/util/dsc/resource_info.rb +15 -15
  736. data/lib/chef/util/dsc/resource_store.rb +73 -74
  737. data/lib/chef/util/editor.rb +1 -2
  738. data/lib/chef/util/file_edit.rb +5 -5
  739. data/lib/chef/util/path_helper.rb +2 -2
  740. data/lib/chef/util/powershell/cmdlet.rb +119 -119
  741. data/lib/chef/util/powershell/cmdlet_result.rb +36 -36
  742. data/lib/chef/util/powershell/ps_credential.rb +2 -2
  743. data/lib/chef/util/selinux.rb +6 -6
  744. data/lib/chef/util/threaded_job_queue.rb +2 -2
  745. data/lib/chef/util/windows.rb +1 -1
  746. data/lib/chef/util/windows/net_group.rb +84 -85
  747. data/lib/chef/util/windows/net_use.rb +6 -6
  748. data/lib/chef/util/windows/net_user.rb +9 -8
  749. data/lib/chef/util/windows/volume.rb +3 -3
  750. data/lib/chef/version.rb +2 -2
  751. data/lib/chef/version/platform.rb +5 -5
  752. data/lib/chef/version_class.rb +6 -6
  753. data/lib/chef/version_constraint.rb +13 -13
  754. data/lib/chef/version_constraint/platform.rb +3 -3
  755. data/lib/chef/whitelist.rb +2 -2
  756. data/lib/chef/win32/api.rb +13 -8
  757. data/lib/chef/win32/api/crypto.rb +63 -63
  758. data/lib/chef/win32/api/error.rb +11 -10
  759. data/lib/chef/win32/api/file.rb +17 -16
  760. data/lib/chef/win32/api/installer.rb +15 -16
  761. data/lib/chef/win32/api/memory.rb +4 -4
  762. data/lib/chef/win32/api/net.rb +111 -123
  763. data/lib/chef/win32/api/process.rb +4 -4
  764. data/lib/chef/win32/api/psapi.rb +4 -4
  765. data/lib/chef/win32/api/registry.rb +4 -4
  766. data/lib/chef/win32/api/security.rb +51 -26
  767. data/lib/chef/win32/api/synchronization.rb +4 -4
  768. data/lib/chef/win32/api/system.rb +4 -4
  769. data/lib/chef/win32/api/unicode.rb +4 -4
  770. data/lib/chef/win32/crypto.rb +50 -50
  771. data/lib/chef/win32/error.rb +18 -15
  772. data/lib/chef/win32/eventlog.rb +2 -2
  773. data/lib/chef/win32/file.rb +14 -14
  774. data/lib/chef/win32/file/info.rb +3 -4
  775. data/lib/chef/win32/file/version_info.rb +4 -4
  776. data/lib/chef/win32/handle.rb +6 -6
  777. data/lib/chef/win32/memory.rb +4 -4
  778. data/lib/chef/win32/mutex.rb +4 -4
  779. data/lib/chef/win32/net.rb +26 -59
  780. data/lib/chef/win32/process.rb +7 -7
  781. data/lib/chef/win32/registry.rb +19 -33
  782. data/lib/chef/win32/security.rb +82 -20
  783. data/lib/chef/win32/security/ace.rb +6 -6
  784. data/lib/chef/win32/security/acl.rb +8 -8
  785. data/lib/chef/win32/security/securable_object.rb +5 -5
  786. data/lib/chef/win32/security/security_descriptor.rb +5 -5
  787. data/lib/chef/win32/security/sid.rb +81 -43
  788. data/lib/chef/win32/security/token.rb +6 -6
  789. data/lib/chef/win32/system.rb +4 -4
  790. data/lib/chef/win32/unicode.rb +7 -7
  791. data/lib/chef/win32/version.rb +26 -26
  792. data/lib/chef/workstation_config_loader.rb +2 -2
  793. data/spec/data/apt/chef-integration-test-1.0/debian/copyright +2 -2
  794. data/spec/data/apt/chef-integration-test-1.1/debian/copyright +2 -2
  795. data/spec/data/apt/chef-integration-test2-1.0/debian/copyright +2 -2
  796. data/spec/data/cookbooks/name-mismatch-versionnumber/recipes/default.rb +1 -1
  797. data/spec/data/cookbooks/supports-platform-constraints/metadata.rb +5 -0
  798. data/spec/data/incomplete-metadata-chef-repo/incomplete-metadata/recipes/default.rb +1 -1
  799. data/spec/data/invalid-metadata-chef-repo/invalid-metadata/metadata.rb +1 -2
  800. data/spec/data/invalid-metadata-chef-repo/invalid-metadata/recipes/default.rb +1 -1
  801. data/spec/functional/application_spec.rb +7 -7
  802. data/spec/functional/assets/chocolatey_feed/test-A.1.0.nupkg +0 -0
  803. data/spec/functional/assets/chocolatey_feed/test-A.1.5.nupkg +0 -0
  804. data/spec/functional/assets/chocolatey_feed/test-A.2.0.nupkg +0 -0
  805. data/spec/functional/assets/chocolatey_feed/test-B.1.0.nupkg +0 -0
  806. data/spec/functional/audit/rspec_formatter_spec.rb +8 -8
  807. data/spec/functional/audit/runner_spec.rb +9 -9
  808. data/spec/functional/dsl/reboot_pending_spec.rb +10 -15
  809. data/spec/functional/dsl/registry_helper_spec.rb +8 -10
  810. data/spec/functional/event_loggers/windows_eventlog_spec.rb +27 -22
  811. data/spec/functional/file_content_management/deploy_strategies_spec.rb +9 -10
  812. data/spec/functional/http/simple_spec.rb +11 -11
  813. data/spec/functional/knife/configure_spec.rb +5 -10
  814. data/spec/functional/knife/cookbook_delete_spec.rb +11 -11
  815. data/spec/functional/knife/exec_spec.rb +6 -6
  816. data/spec/functional/knife/smoke_test.rb +11 -3
  817. data/spec/functional/knife/ssh_spec.rb +22 -22
  818. data/spec/functional/mixin/powershell_out_spec.rb +3 -3
  819. data/spec/functional/mixin/shell_out_spec.rb +12 -12
  820. data/spec/functional/notifications_spec.rb +6 -7
  821. data/spec/functional/provider/remote_file/cache_control_data_spec.rb +11 -12
  822. data/spec/functional/provider/whyrun_safe_ruby_block_spec.rb +4 -4
  823. data/spec/functional/rebooter_spec.rb +12 -12
  824. data/spec/functional/resource/aix_service_spec.rb +7 -8
  825. data/spec/functional/resource/aixinit_service_spec.rb +20 -20
  826. data/spec/functional/resource/base.rb +1 -3
  827. data/spec/functional/resource/bash_spec.rb +6 -6
  828. data/spec/functional/resource/batch_spec.rb +5 -5
  829. data/spec/functional/resource/bff_spec.rb +10 -12
  830. data/spec/functional/resource/chocolatey_package_spec.rb +124 -0
  831. data/spec/functional/resource/cookbook_file_spec.rb +9 -9
  832. data/spec/functional/resource/cron_spec.rb +13 -13
  833. data/spec/functional/resource/deploy_revision_spec.rb +18 -18
  834. data/spec/functional/resource/directory_spec.rb +4 -4
  835. data/spec/functional/resource/dpkg_package_spec.rb +38 -38
  836. data/spec/functional/resource/dsc_resource_spec.rb +17 -22
  837. data/spec/functional/resource/dsc_script_spec.rb +104 -106
  838. data/spec/functional/resource/env_spec.rb +30 -30
  839. data/spec/functional/resource/execute_spec.rb +10 -10
  840. data/spec/functional/resource/file_spec.rb +12 -13
  841. data/spec/functional/resource/git_spec.rb +20 -20
  842. data/spec/functional/resource/group_spec.rb +21 -21
  843. data/spec/functional/resource/ifconfig_spec.rb +11 -11
  844. data/spec/functional/resource/link_spec.rb +140 -135
  845. data/spec/functional/resource/mount_spec.rb +17 -29
  846. data/spec/functional/resource/ohai_spec.rb +5 -8
  847. data/spec/functional/resource/package_spec.rb +11 -13
  848. data/spec/functional/resource/powershell_script_spec.rb +60 -60
  849. data/spec/functional/resource/reboot_spec.rb +12 -12
  850. data/spec/functional/resource/registry_spec.rb +71 -72
  851. data/spec/functional/resource/remote_directory_spec.rb +23 -23
  852. data/spec/functional/resource/remote_file_spec.rb +17 -17
  853. data/spec/functional/resource/rpm_spec.rb +14 -14
  854. data/spec/functional/resource/template_spec.rb +8 -8
  855. data/spec/functional/resource/user/dscl_spec.rb +3 -3
  856. data/spec/functional/resource/user/useradd_spec.rb +31 -37
  857. data/spec/functional/resource/user/windows_spec.rb +20 -20
  858. data/spec/functional/resource/windows_package_spec.rb +26 -35
  859. data/spec/functional/resource/windows_service_spec.rb +12 -8
  860. data/spec/functional/rest_spec.rb +6 -5
  861. data/spec/functional/run_lock_spec.rb +15 -14
  862. data/spec/functional/shell_spec.rb +11 -10
  863. data/spec/functional/tiny_server_spec.rb +18 -18
  864. data/spec/functional/util/path_helper_spec.rb +5 -5
  865. data/spec/functional/util/powershell/cmdlet_spec.rb +24 -27
  866. data/spec/functional/version_spec.rb +6 -6
  867. data/spec/functional/win32/crypto_spec.rb +7 -10
  868. data/spec/functional/win32/registry_spec.rb +105 -107
  869. data/spec/functional/win32/security_spec.rb +17 -17
  870. data/spec/functional/win32/service_manager_spec.rb +7 -8
  871. data/spec/functional/win32/sid_spec.rb +13 -13
  872. data/spec/functional/win32/version_info_spec.rb +7 -7
  873. data/spec/functional/win32/versions_spec.rb +13 -13
  874. data/spec/integration/client/client_spec.rb +65 -66
  875. data/spec/integration/client/ipv6_spec.rb +15 -16
  876. data/spec/integration/knife/chef_fs_data_store_spec.rb +432 -246
  877. data/spec/integration/knife/chef_repo_path_spec.rb +261 -261
  878. data/spec/integration/knife/chef_repository_file_system_spec.rb +84 -84
  879. data/spec/integration/knife/chefignore_spec.rb +82 -82
  880. data/spec/integration/knife/common_options_spec.rb +41 -41
  881. data/spec/integration/knife/cookbook_api_ipv6_spec.rb +9 -9
  882. data/spec/integration/knife/delete_spec.rb +262 -248
  883. data/spec/integration/knife/deps_spec.rb +301 -301
  884. data/spec/integration/knife/diff_spec.rb +237 -237
  885. data/spec/integration/knife/download_spec.rb +532 -401
  886. data/spec/integration/knife/list_spec.rb +310 -116
  887. data/spec/integration/knife/raw_spec.rb +39 -39
  888. data/spec/integration/knife/redirection_spec.rb +12 -12
  889. data/spec/integration/knife/serve_spec.rb +12 -12
  890. data/spec/integration/knife/show_spec.rb +59 -59
  891. data/spec/integration/knife/upload_spec.rb +661 -550
  892. data/spec/integration/recipes/lwrp_inline_resources_spec.rb +18 -18
  893. data/spec/integration/recipes/lwrp_spec.rb +7 -7
  894. data/spec/integration/recipes/provider_choice.rb +3 -2
  895. data/spec/integration/recipes/recipe_dsl_spec.rb +151 -124
  896. data/spec/integration/recipes/remote_directory.rb +2 -2
  897. data/spec/integration/recipes/resource_action_spec.rb +439 -328
  898. data/spec/integration/recipes/resource_converge_if_changed_spec.rb +12 -11
  899. data/spec/integration/recipes/resource_load_spec.rb +35 -33
  900. data/spec/integration/solo/solo_spec.rb +31 -32
  901. data/spec/scripts/ssl-serve.rb +12 -17
  902. data/spec/spec_helper.rb +48 -43
  903. data/spec/stress/win32/file_spec.rb +5 -5
  904. data/spec/stress/win32/memory_spec.rb +4 -4
  905. data/spec/stress/win32/security_spec.rb +8 -8
  906. data/spec/support/chef_helpers.rb +5 -6
  907. data/spec/support/key_helpers.rb +2 -2
  908. data/spec/support/lib/chef/provider/easy.rb +2 -2
  909. data/spec/support/lib/chef/provider/openldap_includer.rb +2 -2
  910. data/spec/support/lib/chef/provider/snakeoil.rb +2 -2
  911. data/spec/support/lib/chef/resource/cat.rb +4 -4
  912. data/spec/support/lib/chef/resource/one_two_three_four.rb +2 -2
  913. data/spec/support/lib/chef/resource/openldap_includer.rb +2 -3
  914. data/spec/support/lib/chef/resource/with_state.rb +4 -4
  915. data/spec/support/lib/chef/resource/zen_follower.rb +4 -4
  916. data/spec/support/lib/chef/resource/zen_master.rb +5 -6
  917. data/spec/support/lib/library_load_order.rb +0 -2
  918. data/spec/support/matchers/leak.rb +7 -5
  919. data/spec/support/mock/constant.rb +3 -3
  920. data/spec/support/mock/platform.rb +5 -5
  921. data/spec/support/platform_helpers.rb +36 -23
  922. data/spec/support/platforms/prof/gc.rb +2 -3
  923. data/spec/support/platforms/prof/win32.rb +3 -4
  924. data/spec/support/platforms/win32/spec_service.rb +3 -3
  925. data/spec/support/shared/context/client.rb +22 -14
  926. data/spec/support/shared/context/config.rb +3 -3
  927. data/spec/support/shared/context/win32.rb +9 -9
  928. data/spec/support/shared/examples/client.rb +4 -4
  929. data/spec/support/shared/functional/diff_disabled.rb +1 -1
  930. data/spec/support/shared/functional/directory_resource.rb +8 -8
  931. data/spec/support/shared/functional/file_resource.rb +20 -23
  932. data/spec/support/shared/functional/http.rb +33 -34
  933. data/spec/support/shared/functional/knife.rb +3 -3
  934. data/spec/support/shared/functional/securable_resource.rb +48 -48
  935. data/spec/support/shared/functional/securable_resource_with_reporting.rb +8 -12
  936. data/spec/support/shared/functional/win32_service.rb +3 -5
  937. data/spec/support/shared/functional/windows_script.rb +13 -13
  938. data/spec/support/shared/integration/app_server_support.rb +7 -7
  939. data/spec/support/shared/integration/integration_helper.rb +21 -21
  940. data/spec/support/shared/integration/knife_support.rb +13 -13
  941. data/spec/support/shared/matchers/exit_with_code.rb +2 -2
  942. data/spec/support/shared/matchers/match_environment_variable.rb +2 -2
  943. data/spec/support/shared/unit/api_error_inspector.rb +3 -5
  944. data/spec/support/shared/unit/api_versioning.rb +8 -8
  945. data/spec/support/shared/unit/execute_resource.rb +4 -4
  946. data/spec/support/shared/unit/file_system_support.rb +12 -13
  947. data/spec/support/shared/unit/knife_shared.rb +1 -2
  948. data/spec/support/shared/unit/mock_shellout.rb +5 -2
  949. data/spec/support/shared/unit/platform_introspector.rb +35 -37
  950. data/spec/support/shared/unit/provider/file.rb +29 -40
  951. data/spec/support/shared/unit/provider/useradd_based_user_provider.rb +50 -51
  952. data/spec/support/shared/unit/resource/static_provider_resolution.rb +2 -5
  953. data/spec/support/shared/unit/script_resource.rb +10 -10
  954. data/spec/support/shared/unit/user_and_client_shared.rb +5 -6
  955. data/spec/support/shared/unit/windows_script_resource.rb +6 -7
  956. data/spec/tiny_server.rb +24 -24
  957. data/spec/unit/api_client/registration_spec.rb +41 -38
  958. data/spec/unit/api_client_spec.rb +13 -16
  959. data/spec/unit/api_client_v1_spec.rb +17 -19
  960. data/spec/unit/application/apply_spec.rb +3 -3
  961. data/spec/unit/application/client_spec.rb +12 -9
  962. data/spec/unit/application/knife_spec.rb +69 -17
  963. data/spec/unit/application/solo_spec.rb +29 -48
  964. data/spec/unit/application_spec.rb +171 -151
  965. data/spec/unit/audit/audit_event_proxy_spec.rb +13 -13
  966. data/spec/unit/audit/audit_reporter_spec.rb +18 -25
  967. data/spec/unit/audit/control_group_data_spec.rb +16 -17
  968. data/spec/unit/audit/logger_spec.rb +5 -5
  969. data/spec/unit/audit/rspec_formatter_spec.rb +4 -4
  970. data/spec/unit/audit/runner_spec.rb +11 -12
  971. data/spec/unit/chef_class_spec.rb +5 -5
  972. data/spec/unit/chef_fs/config_spec.rb +14 -18
  973. data/spec/unit/chef_fs/data_handler/group_handler_spec.rb +17 -17
  974. data/spec/unit/chef_fs/diff_spec.rb +75 -75
  975. data/spec/unit/chef_fs/file_pattern_spec.rb +368 -369
  976. data/spec/unit/chef_fs/file_system/cookbook_subdir_spec.rb +9 -9
  977. data/spec/unit/chef_fs/file_system/operation_failed_error_spec.rb +9 -9
  978. data/spec/unit/chef_fs/file_system_spec.rb +74 -74
  979. data/spec/unit/chef_fs/parallelizer.rb +63 -66
  980. data/spec/unit/chef_fs/path_util_spec.rb +45 -45
  981. data/spec/unit/chef_spec.rb +3 -3
  982. data/spec/unit/client_spec.rb +44 -44
  983. data/spec/unit/config_fetcher_spec.rb +56 -28
  984. data/spec/unit/config_spec.rb +2 -2
  985. data/spec/unit/cookbook/chefignore_spec.rb +12 -12
  986. data/spec/unit/cookbook/cookbook_version_loader_spec.rb +5 -6
  987. data/spec/unit/cookbook/file_vendor_spec.rb +8 -9
  988. data/spec/unit/cookbook/metadata_spec.rb +73 -76
  989. data/spec/unit/cookbook/synchronizer_spec.rb +31 -32
  990. data/spec/unit/cookbook/syntax_check_spec.rb +22 -22
  991. data/spec/unit/cookbook_loader_spec.rb +9 -10
  992. data/spec/unit/cookbook_manifest_spec.rb +27 -28
  993. data/spec/unit/cookbook_site_streaming_uploader_spec.rb +24 -24
  994. data/spec/unit/cookbook_spec.rb +3 -3
  995. data/spec/unit/cookbook_uploader_spec.rb +10 -11
  996. data/spec/unit/cookbook_version_file_specificity_spec.rb +49 -50
  997. data/spec/unit/cookbook_version_spec.rb +45 -48
  998. data/spec/unit/daemon_spec.rb +5 -5
  999. data/spec/unit/data_bag_item_spec.rb +29 -30
  1000. data/spec/unit/data_bag_spec.rb +47 -47
  1001. data/spec/unit/deprecation_spec.rb +11 -11
  1002. data/spec/unit/digester_spec.rb +5 -6
  1003. data/spec/unit/dsl/audit_spec.rb +5 -5
  1004. data/spec/unit/dsl/data_query_spec.rb +12 -12
  1005. data/spec/unit/dsl/platform_introspection_spec.rb +19 -20
  1006. data/spec/unit/dsl/reboot_pending_spec.rb +17 -17
  1007. data/spec/unit/dsl/recipe_spec.rb +4 -6
  1008. data/spec/unit/dsl/regsitry_helper_spec.rb +9 -12
  1009. data/spec/unit/dsl/resources_spec.rb +13 -13
  1010. data/spec/unit/encrypted_data_bag_item/check_encrypted_spec.rb +7 -7
  1011. data/spec/unit/encrypted_data_bag_item_spec.rb +11 -11
  1012. data/spec/unit/environment_spec.rb +53 -53
  1013. data/spec/unit/event_dispatch/dispatcher_spec.rb +3 -4
  1014. data/spec/unit/event_dispatch/dsl_spec.rb +16 -16
  1015. data/spec/unit/exceptions_spec.rb +10 -10
  1016. data/spec/unit/file_access_control_spec.rb +32 -32
  1017. data/spec/unit/file_cache_spec.rb +19 -19
  1018. data/spec/unit/file_content_management/deploy/cp_spec.rb +3 -5
  1019. data/spec/unit/file_content_management/deploy/mv_unix_spec.rb +3 -5
  1020. data/spec/unit/file_content_management/deploy/mv_windows_spec.rb +5 -12
  1021. data/spec/unit/formatters/base_spec.rb +29 -6
  1022. data/spec/unit/formatters/doc_spec.rb +7 -7
  1023. data/spec/unit/formatters/error_inspectors/api_error_formatting_spec.rb +9 -10
  1024. data/spec/unit/formatters/error_inspectors/compile_error_inspector_spec.rb +11 -11
  1025. data/spec/unit/formatters/error_inspectors/cookbook_resolve_error_inspector_spec.rb +4 -7
  1026. data/spec/unit/formatters/error_inspectors/cookbook_sync_error_inspector_spec.rb +3 -3
  1027. data/spec/unit/formatters/error_inspectors/node_load_error_inspector_spec.rb +3 -4
  1028. data/spec/unit/formatters/error_inspectors/registration_error_inspector_spec.rb +3 -4
  1029. data/spec/unit/formatters/error_inspectors/resource_failure_inspector_spec.rb +4 -6
  1030. data/spec/unit/formatters/error_inspectors/run_list_expansion_error_inspector_spec.rb +5 -7
  1031. data/spec/unit/guard_interpreter/resource_guard_interpreter_spec.rb +9 -9
  1032. data/spec/unit/guard_interpreter_spec.rb +3 -3
  1033. data/spec/unit/handler/json_file_spec.rb +11 -12
  1034. data/spec/unit/handler_spec.rb +7 -7
  1035. data/spec/unit/http/authenticator_spec.rb +9 -7
  1036. data/spec/unit/http/basic_client_spec.rb +3 -3
  1037. data/spec/unit/http/http_request_spec.rb +22 -22
  1038. data/spec/unit/http/json_input_spec.rb +7 -7
  1039. data/spec/unit/http/simple_spec.rb +3 -3
  1040. data/spec/unit/http/socketless_chef_zero_client_spec.rb +3 -4
  1041. data/spec/unit/http/ssl_policies_spec.rb +18 -19
  1042. data/spec/unit/http/validate_content_length_spec.rb +9 -9
  1043. data/spec/unit/http_spec.rb +18 -18
  1044. data/spec/unit/json_compat_spec.rb +16 -9
  1045. data/spec/unit/key_spec.rb +41 -44
  1046. data/spec/unit/knife/bootstrap/chef_vault_handler_spec.rb +41 -42
  1047. data/spec/unit/knife/bootstrap/client_builder_spec.rb +30 -28
  1048. data/spec/unit/knife/bootstrap_spec.rb +75 -37
  1049. data/spec/unit/knife/client_bulk_delete_spec.rb +6 -6
  1050. data/spec/unit/knife/client_create_spec.rb +11 -12
  1051. data/spec/unit/knife/client_delete_spec.rb +13 -13
  1052. data/spec/unit/knife/client_edit_spec.rb +9 -9
  1053. data/spec/unit/knife/client_list_spec.rb +5 -5
  1054. data/spec/unit/knife/client_reregister_spec.rb +13 -13
  1055. data/spec/unit/knife/client_show_spec.rb +12 -12
  1056. data/spec/unit/knife/configure_client_spec.rb +19 -20
  1057. data/spec/unit/knife/configure_spec.rb +37 -39
  1058. data/spec/unit/knife/cookbook_bulk_delete_spec.rb +17 -19
  1059. data/spec/unit/knife/cookbook_create_spec.rb +32 -32
  1060. data/spec/unit/knife/cookbook_delete_spec.rb +79 -79
  1061. data/spec/unit/knife/cookbook_download_spec.rb +84 -85
  1062. data/spec/unit/knife/cookbook_list_spec.rb +26 -26
  1063. data/spec/unit/knife/cookbook_metadata_from_file_spec.rb +5 -5
  1064. data/spec/unit/knife/cookbook_metadata_spec.rb +55 -55
  1065. data/spec/unit/knife/cookbook_show_spec.rb +33 -34
  1066. data/spec/unit/knife/cookbook_site_download_spec.rb +51 -53
  1067. data/spec/unit/knife/cookbook_site_install_spec.rb +10 -8
  1068. data/spec/unit/knife/cookbook_site_share_spec.rb +42 -42
  1069. data/spec/unit/knife/cookbook_site_unshare_spec.rb +20 -20
  1070. data/spec/unit/knife/cookbook_test_spec.rb +6 -6
  1071. data/spec/unit/knife/cookbook_upload_spec.rb +69 -69
  1072. data/spec/unit/knife/core/bootstrap_context_spec.rb +39 -33
  1073. data/spec/unit/knife/core/cookbook_scm_repo_spec.rb +32 -32
  1074. data/spec/unit/knife/core/custom_manifest_loader_spec.rb +3 -3
  1075. data/spec/unit/knife/core/gem_glob_loader_spec.rb +23 -24
  1076. data/spec/unit/knife/core/hashed_command_loader_spec.rb +8 -8
  1077. data/spec/unit/knife/core/node_editor_spec.rb +211 -0
  1078. data/spec/unit/knife/core/object_loader_spec.rb +12 -12
  1079. data/spec/unit/knife/core/subcommand_loader_spec.rb +10 -10
  1080. data/spec/unit/knife/core/ui_spec.rb +45 -45
  1081. data/spec/unit/knife/data_bag_create_spec.rb +14 -14
  1082. data/spec/unit/knife/data_bag_edit_spec.rb +12 -12
  1083. data/spec/unit/knife/data_bag_from_file_spec.rb +9 -9
  1084. data/spec/unit/knife/data_bag_secret_options_spec.rb +6 -6
  1085. data/spec/unit/knife/data_bag_show_spec.rb +19 -19
  1086. data/spec/unit/knife/environment_compare_spec.rb +32 -32
  1087. data/spec/unit/knife/environment_create_spec.rb +2 -2
  1088. data/spec/unit/knife/environment_delete_spec.rb +2 -2
  1089. data/spec/unit/knife/environment_edit_spec.rb +2 -2
  1090. data/spec/unit/knife/environment_from_file_spec.rb +5 -5
  1091. data/spec/unit/knife/environment_list_spec.rb +4 -4
  1092. data/spec/unit/knife/environment_show_spec.rb +2 -2
  1093. data/spec/unit/knife/index_rebuild_spec.rb +14 -17
  1094. data/spec/unit/knife/key_create_spec.rb +11 -12
  1095. data/spec/unit/knife/key_delete_spec.rb +8 -10
  1096. data/spec/unit/knife/key_edit_spec.rb +14 -17
  1097. data/spec/unit/knife/key_helper.rb +2 -2
  1098. data/spec/unit/knife/key_list_spec.rb +13 -13
  1099. data/spec/unit/knife/key_show_spec.rb +11 -11
  1100. data/spec/unit/knife/knife_help.rb +2 -2
  1101. data/spec/unit/knife/node_bulk_delete_spec.rb +10 -13
  1102. data/spec/unit/knife/node_delete_spec.rb +4 -4
  1103. data/spec/unit/knife/node_edit_spec.rb +17 -18
  1104. data/spec/unit/knife/node_environment_set_spec.rb +4 -4
  1105. data/spec/unit/knife/node_from_file_spec.rb +5 -5
  1106. data/spec/unit/knife/node_list_spec.rb +5 -6
  1107. data/spec/unit/knife/node_run_list_add_spec.rb +5 -8
  1108. data/spec/unit/knife/node_run_list_remove_spec.rb +27 -27
  1109. data/spec/unit/knife/node_run_list_set_spec.rb +4 -4
  1110. data/spec/unit/knife/node_show_spec.rb +6 -6
  1111. data/spec/unit/knife/osc_user_create_spec.rb +7 -7
  1112. data/spec/unit/knife/osc_user_delete_spec.rb +7 -7
  1113. data/spec/unit/knife/osc_user_edit_spec.rb +6 -6
  1114. data/spec/unit/knife/osc_user_list_spec.rb +3 -3
  1115. data/spec/unit/knife/osc_user_reregister_spec.rb +10 -10
  1116. data/spec/unit/knife/osc_user_show_spec.rb +8 -8
  1117. data/spec/unit/knife/raw_spec.rb +6 -6
  1118. data/spec/unit/knife/role_bulk_delete_spec.rb +4 -4
  1119. data/spec/unit/knife/role_create_spec.rb +4 -4
  1120. data/spec/unit/knife/role_delete_spec.rb +4 -4
  1121. data/spec/unit/knife/role_edit_spec.rb +4 -6
  1122. data/spec/unit/knife/role_env_run_list_add_spec.rb +9 -9
  1123. data/spec/unit/knife/role_env_run_list_clear_spec.rb +38 -44
  1124. data/spec/unit/knife/role_env_run_list_remove_spec.rb +46 -52
  1125. data/spec/unit/knife/role_env_run_list_replace_spec.rb +49 -52
  1126. data/spec/unit/knife/role_env_run_list_set_spec.rb +17 -20
  1127. data/spec/unit/knife/role_from_file_spec.rb +7 -7
  1128. data/spec/unit/knife/role_list_spec.rb +5 -7
  1129. data/spec/unit/knife/role_run_list_add_spec.rb +7 -7
  1130. data/spec/unit/knife/role_run_list_clear_spec.rb +28 -34
  1131. data/spec/unit/knife/role_run_list_remove_spec.rb +36 -42
  1132. data/spec/unit/knife/role_run_list_replace_spec.rb +42 -45
  1133. data/spec/unit/knife/role_run_list_set_spec.rb +6 -9
  1134. data/spec/unit/knife/role_show_spec.rb +14 -14
  1135. data/spec/unit/knife/ssh_spec.rb +36 -36
  1136. data/spec/unit/knife/ssl_check_spec.rb +7 -7
  1137. data/spec/unit/knife/ssl_fetch_spec.rb +8 -8
  1138. data/spec/unit/knife/status_spec.rb +5 -5
  1139. data/spec/unit/knife/tag_create_spec.rb +1 -1
  1140. data/spec/unit/knife/tag_delete_spec.rb +1 -1
  1141. data/spec/unit/knife/tag_list_spec.rb +2 -2
  1142. data/spec/unit/knife/user_create_spec.rb +30 -30
  1143. data/spec/unit/knife/user_delete_spec.rb +11 -11
  1144. data/spec/unit/knife/user_edit_spec.rb +9 -9
  1145. data/spec/unit/knife/user_list_spec.rb +3 -3
  1146. data/spec/unit/knife/user_reregister_spec.rb +13 -13
  1147. data/spec/unit/knife/user_show_spec.rb +12 -12
  1148. data/spec/unit/knife_spec.rb +61 -61
  1149. data/spec/unit/lib_backcompat_spec.rb +34 -0
  1150. data/spec/unit/log/syslog_spec.rb +3 -3
  1151. data/spec/unit/log/winevt_spec.rb +3 -3
  1152. data/spec/unit/log_spec.rb +5 -5
  1153. data/spec/unit/lwrp_spec.rb +41 -43
  1154. data/spec/unit/mash_spec.rb +8 -8
  1155. data/spec/unit/mixin/api_version_request_handling_spec.rb +13 -14
  1156. data/spec/unit/mixin/checksum_spec.rb +5 -6
  1157. data/spec/unit/mixin/command_spec.rb +9 -9
  1158. data/spec/unit/mixin/convert_to_class_name_spec.rb +2 -2
  1159. data/spec/unit/mixin/deep_merge_spec.rb +107 -107
  1160. data/spec/unit/mixin/deprecation_spec.rb +5 -5
  1161. data/spec/unit/mixin/enforce_ownership_and_permissions_spec.rb +9 -9
  1162. data/spec/unit/mixin/homebrew_user_spec.rb +13 -13
  1163. data/spec/unit/mixin/params_validate_spec.rb +71 -71
  1164. data/spec/unit/mixin/path_sanity_spec.rb +16 -16
  1165. data/spec/unit/mixin/powershell_out_spec.rb +9 -9
  1166. data/spec/unit/mixin/powershell_type_coercions_spec.rb +34 -23
  1167. data/spec/unit/mixin/properties_spec.rb +27 -27
  1168. data/spec/unit/mixin/proxified_socket_spec.rb +6 -6
  1169. data/spec/unit/mixin/securable_spec.rb +37 -37
  1170. data/spec/unit/mixin/shell_out_spec.rb +68 -68
  1171. data/spec/unit/mixin/subclass_directive_spec.rb +2 -2
  1172. data/spec/unit/mixin/template_spec.rb +15 -12
  1173. data/spec/unit/mixin/unformatter_spec.rb +3 -3
  1174. data/spec/unit/mixin/uris_spec.rb +8 -8
  1175. data/spec/unit/mixin/windows_architecture_helper_spec.rb +14 -17
  1176. data/spec/unit/mixin/xml_escape_spec.rb +3 -3
  1177. data/spec/unit/monkey_patches/uri_spec.rb +3 -3
  1178. data/spec/unit/monologger_spec.rb +4 -4
  1179. data/spec/unit/node/attribute_spec.rb +203 -248
  1180. data/spec/unit/node/immutable_collections_spec.rb +20 -21
  1181. data/spec/unit/node_map_spec.rb +5 -5
  1182. data/spec/unit/node_spec.rb +165 -135
  1183. data/spec/unit/org_spec.rb +17 -17
  1184. data/spec/unit/platform/query_helpers_spec.rb +23 -23
  1185. data/spec/unit/platform_spec.rb +17 -17
  1186. data/spec/unit/policy_builder/dynamic_spec.rb +8 -10
  1187. data/spec/unit/policy_builder/expand_node_object_spec.rb +16 -14
  1188. data/spec/unit/policy_builder/policyfile_spec.rb +30 -37
  1189. data/spec/unit/policy_builder_spec.rb +4 -4
  1190. data/spec/unit/property/state_spec.rb +58 -56
  1191. data/spec/unit/property/validation_spec.rb +255 -216
  1192. data/spec/unit/property_spec.rb +206 -129
  1193. data/spec/unit/provider/apt_update_spec.rb +113 -0
  1194. data/spec/unit/provider/breakpoint_spec.rb +2 -3
  1195. data/spec/unit/provider/cookbook_file/content_spec.rb +9 -10
  1196. data/spec/unit/provider/cookbook_file_spec.rb +11 -11
  1197. data/spec/unit/provider/cron/unix_spec.rb +7 -7
  1198. data/spec/unit/provider/cron_spec.rb +67 -67
  1199. data/spec/unit/provider/deploy/revision_spec.rb +6 -7
  1200. data/spec/unit/provider/deploy/timestamped_spec.rb +2 -2
  1201. data/spec/unit/provider/deploy_spec.rb +24 -25
  1202. data/spec/unit/provider/directory_spec.rb +12 -12
  1203. data/spec/unit/provider/dsc_resource_spec.rb +29 -27
  1204. data/spec/unit/provider/dsc_script_spec.rb +47 -48
  1205. data/spec/unit/provider/env/windows_spec.rb +21 -21
  1206. data/spec/unit/provider/env_spec.rb +5 -5
  1207. data/spec/unit/provider/erl_call_spec.rb +3 -4
  1208. data/spec/unit/provider/execute_spec.rb +5 -5
  1209. data/spec/unit/provider/file/content_spec.rb +4 -4
  1210. data/spec/unit/provider/file_spec.rb +8 -9
  1211. data/spec/unit/provider/git_spec.rb +64 -65
  1212. data/spec/unit/provider/group/dscl_spec.rb +7 -7
  1213. data/spec/unit/provider/group/gpasswd_spec.rb +3 -3
  1214. data/spec/unit/provider/group/groupadd_spec.rb +9 -9
  1215. data/spec/unit/provider/group/groupmod_spec.rb +12 -12
  1216. data/spec/unit/provider/group/pw_spec.rb +3 -3
  1217. data/spec/unit/provider/group/usermod_spec.rb +6 -6
  1218. data/spec/unit/provider/group/windows_spec.rb +3 -3
  1219. data/spec/unit/provider/group_spec.rb +16 -16
  1220. data/spec/unit/provider/http_request_spec.rb +7 -7
  1221. data/spec/unit/provider/ifconfig/aix_spec.rb +4 -5
  1222. data/spec/unit/provider/ifconfig/debian_spec.rb +6 -6
  1223. data/spec/unit/provider/ifconfig/redhat_spec.rb +3 -3
  1224. data/spec/unit/provider/ifconfig_spec.rb +5 -5
  1225. data/spec/unit/provider/link_spec.rb +12 -12
  1226. data/spec/unit/provider/log_spec.rb +2 -2
  1227. data/spec/unit/provider/mdadm_spec.rb +12 -12
  1228. data/spec/unit/provider/mount/aix_spec.rb +7 -7
  1229. data/spec/unit/provider/mount/mount_spec.rb +20 -20
  1230. data/spec/unit/provider/mount/solaris_spec.rb +26 -26
  1231. data/spec/unit/provider/mount/windows_spec.rb +8 -8
  1232. data/spec/unit/provider/mount_spec.rb +7 -8
  1233. data/spec/unit/provider/ohai_spec.rb +13 -13
  1234. data/spec/unit/provider/osx_profile_spec.rb +249 -0
  1235. data/spec/unit/provider/package/aix_spec.rb +5 -5
  1236. data/spec/unit/provider/package/apt_spec.rb +49 -49
  1237. data/spec/unit/provider/package/chocolatey_spec.rb +504 -0
  1238. data/spec/unit/provider/package/dpkg_spec.rb +32 -36
  1239. data/spec/unit/provider/package/easy_install_spec.rb +11 -15
  1240. data/spec/unit/provider/package/freebsd/pkg_spec.rb +10 -10
  1241. data/spec/unit/provider/package/freebsd/pkgng_spec.rb +12 -19
  1242. data/spec/unit/provider/package/freebsd/port_spec.rb +12 -19
  1243. data/spec/unit/provider/package/homebrew_spec.rb +139 -139
  1244. data/spec/unit/provider/package/ips_spec.rb +10 -11
  1245. data/spec/unit/provider/package/macports_spec.rb +3 -3
  1246. data/spec/unit/provider/package/openbsd_spec.rb +38 -38
  1247. data/spec/unit/provider/package/pacman_spec.rb +8 -9
  1248. data/spec/unit/provider/package/paludis_spec.rb +9 -10
  1249. data/spec/unit/provider/package/portage_spec.rb +2 -2
  1250. data/spec/unit/provider/package/rpm_spec.rb +7 -11
  1251. data/spec/unit/provider/package/rubygems_spec.rb +386 -289
  1252. data/spec/unit/provider/package/smartos_spec.rb +8 -10
  1253. data/spec/unit/provider/package/solaris_spec.rb +4 -4
  1254. data/spec/unit/provider/package/windows/exe_spec.rb +17 -81
  1255. data/spec/unit/provider/package/windows/msi_spec.rb +16 -16
  1256. data/spec/unit/provider/package/windows_spec.rb +50 -40
  1257. data/spec/unit/provider/package/yum_spec.rb +179 -181
  1258. data/spec/unit/provider/package/zypper_spec.rb +53 -50
  1259. data/spec/unit/provider/package_spec.rb +104 -104
  1260. data/spec/unit/provider/powershell_script_spec.rb +20 -20
  1261. data/spec/unit/provider/registry_key_spec.rb +3 -3
  1262. data/spec/unit/provider/remote_directory_spec.rb +46 -46
  1263. data/spec/unit/provider/remote_file/cache_control_data_spec.rb +9 -10
  1264. data/spec/unit/provider/remote_file/content_spec.rb +5 -6
  1265. data/spec/unit/provider/remote_file/fetcher_spec.rb +3 -3
  1266. data/spec/unit/provider/remote_file/ftp_spec.rb +3 -3
  1267. data/spec/unit/provider/remote_file/http_spec.rb +10 -12
  1268. data/spec/unit/provider/remote_file/local_file_spec.rb +2 -2
  1269. data/spec/unit/provider/remote_file/network_file_spec.rb +2 -2
  1270. data/spec/unit/provider/remote_file_spec.rb +9 -11
  1271. data/spec/unit/provider/route_spec.rb +26 -27
  1272. data/spec/unit/provider/ruby_block_spec.rb +4 -5
  1273. data/spec/unit/provider/script_spec.rb +11 -11
  1274. data/spec/unit/provider/service/aix_service_spec.rb +5 -6
  1275. data/spec/unit/provider/service/aixinit_service_spec.rb +26 -23
  1276. data/spec/unit/provider/service/arch_service_spec.rb +15 -15
  1277. data/spec/unit/provider/service/debian_service_spec.rb +37 -37
  1278. data/spec/unit/provider/service/freebsd_service_spec.rb +9 -9
  1279. data/spec/unit/provider/service/gentoo_service_spec.rb +4 -4
  1280. data/spec/unit/provider/service/init_service_spec.rb +9 -9
  1281. data/spec/unit/provider/service/insserv_service_spec.rb +3 -3
  1282. data/spec/unit/provider/service/invokercd_service_spec.rb +9 -9
  1283. data/spec/unit/provider/service/macosx_spec.rb +26 -26
  1284. data/spec/unit/provider/service/openbsd_service_spec.rb +26 -26
  1285. data/spec/unit/provider/service/redhat_spec.rb +16 -16
  1286. data/spec/unit/provider/service/simple_service_spec.rb +5 -5
  1287. data/spec/unit/provider/service/solaris_smf_service_spec.rb +51 -51
  1288. data/spec/unit/provider/service/systemd_service_spec.rb +4 -4
  1289. data/spec/unit/provider/service/upstart_service_spec.rb +13 -13
  1290. data/spec/unit/provider/service/windows_spec.rb +28 -37
  1291. data/spec/unit/provider/service_spec.rb +2 -3
  1292. data/spec/unit/provider/subversion_spec.rb +27 -28
  1293. data/spec/unit/provider/template/content_spec.rb +21 -21
  1294. data/spec/unit/provider/template_spec.rb +15 -16
  1295. data/spec/unit/provider/user/dscl_spec.rb +36 -37
  1296. data/spec/unit/provider/user/pw_spec.rb +12 -12
  1297. data/spec/unit/provider/user/solaris_spec.rb +31 -31
  1298. data/spec/unit/provider/user/useradd_spec.rb +10 -10
  1299. data/spec/unit/provider/user/windows_spec.rb +9 -9
  1300. data/spec/unit/provider/user_spec.rb +19 -20
  1301. data/spec/unit/provider/whyrun_safe_ruby_block_spec.rb +3 -4
  1302. data/spec/unit/provider_resolver_spec.rb +63 -62
  1303. data/spec/unit/provider_spec.rb +7 -8
  1304. data/spec/unit/pure_application_spec.rb +3 -3
  1305. data/spec/unit/recipe_spec.rb +13 -16
  1306. data/spec/unit/resource/apt_package_spec.rb +4 -4
  1307. data/spec/unit/resource/apt_update_spec.rb +38 -0
  1308. data/spec/unit/resource/bash_spec.rb +3 -3
  1309. data/spec/unit/resource/batch_spec.rb +5 -5
  1310. data/spec/unit/resource/breakpoint_spec.rb +3 -3
  1311. data/spec/unit/resource/chef_gem_spec.rb +5 -9
  1312. data/spec/unit/resource/chocolatey_package_spec.rb +67 -0
  1313. data/spec/unit/resource/conditional_action_not_nothing_spec.rb +2 -2
  1314. data/spec/unit/resource/conditional_spec.rb +12 -12
  1315. data/spec/unit/resource/cookbook_file_spec.rb +23 -24
  1316. data/spec/unit/resource/cron_spec.rb +4 -4
  1317. data/spec/unit/resource/csh_spec.rb +3 -3
  1318. data/spec/unit/resource/deploy_revision_spec.rb +3 -3
  1319. data/spec/unit/resource/deploy_spec.rb +23 -24
  1320. data/spec/unit/resource/directory_spec.rb +4 -4
  1321. data/spec/unit/resource/dpkg_package_spec.rb +5 -5
  1322. data/spec/unit/resource/dsc_resource_spec.rb +11 -11
  1323. data/spec/unit/resource/dsc_script_spec.rb +15 -15
  1324. data/spec/unit/resource/easy_install_package_spec.rb +3 -3
  1325. data/spec/unit/resource/env_spec.rb +5 -5
  1326. data/spec/unit/resource/erl_call_spec.rb +3 -3
  1327. data/spec/unit/resource/execute_spec.rb +4 -4
  1328. data/spec/unit/resource/file/verification_spec.rb +11 -11
  1329. data/spec/unit/resource/file_spec.rb +10 -10
  1330. data/spec/unit/resource/freebsd_package_spec.rb +6 -9
  1331. data/spec/unit/resource/gem_package_spec.rb +4 -4
  1332. data/spec/unit/resource/git_spec.rb +3 -3
  1333. data/spec/unit/resource/group_spec.rb +4 -4
  1334. data/spec/unit/resource/homebrew_package_spec.rb +13 -13
  1335. data/spec/unit/resource/http_request_spec.rb +5 -5
  1336. data/spec/unit/resource/ifconfig_spec.rb +9 -9
  1337. data/spec/unit/resource/ips_package_spec.rb +4 -4
  1338. data/spec/unit/resource/ksh_spec.rb +2 -2
  1339. data/spec/unit/resource/link_spec.rb +6 -6
  1340. data/spec/unit/resource/log_spec.rb +3 -3
  1341. data/spec/unit/resource/macports_package_spec.rb +3 -3
  1342. data/spec/unit/resource/mdadm_spec.rb +3 -3
  1343. data/spec/unit/resource/mount_spec.rb +7 -7
  1344. data/spec/unit/resource/ohai_spec.rb +2 -3
  1345. data/spec/unit/resource/openbsd_package_spec.rb +5 -6
  1346. data/spec/unit/resource/osx_profile_spec.rb +61 -0
  1347. data/spec/unit/resource/package_spec.rb +6 -6
  1348. data/spec/unit/resource/pacman_package_spec.rb +3 -3
  1349. data/spec/unit/resource/perl_spec.rb +3 -3
  1350. data/spec/unit/resource/portage_package_spec.rb +2 -2
  1351. data/spec/unit/resource/powershell_script_spec.rb +16 -16
  1352. data/spec/unit/resource/python_spec.rb +3 -3
  1353. data/spec/unit/resource/registry_key_spec.rb +21 -21
  1354. data/spec/unit/resource/remote_directory_spec.rb +3 -3
  1355. data/spec/unit/resource/remote_file_spec.rb +15 -15
  1356. data/spec/unit/resource/resource_notification_spec.rb +18 -18
  1357. data/spec/unit/resource/route_spec.rb +3 -3
  1358. data/spec/unit/resource/rpm_package_spec.rb +4 -4
  1359. data/spec/unit/resource/ruby_block_spec.rb +4 -4
  1360. data/spec/unit/resource/ruby_spec.rb +3 -3
  1361. data/spec/unit/resource/scm_spec.rb +8 -8
  1362. data/spec/unit/resource/script_spec.rb +4 -4
  1363. data/spec/unit/resource/service_spec.rb +4 -5
  1364. data/spec/unit/resource/smartos_package_spec.rb +3 -3
  1365. data/spec/unit/resource/solaris_package_spec.rb +3 -3
  1366. data/spec/unit/resource/subversion_spec.rb +5 -5
  1367. data/spec/unit/resource/template_spec.rb +7 -8
  1368. data/spec/unit/resource/timestamped_deploy_spec.rb +4 -4
  1369. data/spec/unit/resource/user_spec.rb +4 -4
  1370. data/spec/unit/resource/windows_package_spec.rb +7 -7
  1371. data/spec/unit/resource/windows_service_spec.rb +3 -3
  1372. data/spec/unit/resource/yum_package_spec.rb +6 -6
  1373. data/spec/unit/resource_collection/resource_list_spec.rb +7 -7
  1374. data/spec/unit/resource_collection/resource_set_spec.rb +9 -9
  1375. data/spec/unit/resource_collection/stepable_iterator_spec.rb +6 -6
  1376. data/spec/unit/resource_collection_spec.rb +8 -9
  1377. data/spec/unit/resource_definition_spec.rb +3 -3
  1378. data/spec/unit/resource_reporter_spec.rb +56 -64
  1379. data/spec/unit/resource_resolver_spec.rb +5 -6
  1380. data/spec/unit/resource_spec.rb +80 -60
  1381. data/spec/unit/rest/auth_credentials_spec.rb +39 -71
  1382. data/spec/unit/rest_spec.rb +96 -90
  1383. data/spec/unit/role_spec.rb +64 -68
  1384. data/spec/unit/run_context/child_run_context_spec.rb +23 -23
  1385. data/spec/unit/run_context/cookbook_compiler_spec.rb +5 -7
  1386. data/spec/unit/run_context_spec.rb +19 -19
  1387. data/spec/unit/run_list/run_list_expansion_spec.rb +24 -24
  1388. data/spec/unit/run_list/run_list_item_spec.rb +28 -28
  1389. data/spec/unit/run_list/versioned_recipe_list_spec.rb +22 -23
  1390. data/spec/unit/run_list_spec.rb +37 -41
  1391. data/spec/unit/run_lock_spec.rb +10 -10
  1392. data/spec/unit/run_status_spec.rb +4 -5
  1393. data/spec/unit/runner_spec.rb +8 -8
  1394. data/spec/unit/scan_access_control_spec.rb +4 -5
  1395. data/spec/unit/search/query_spec.rb +50 -46
  1396. data/spec/unit/shell/model_wrapper_spec.rb +12 -13
  1397. data/spec/unit/shell/shell_ext_spec.rb +5 -5
  1398. data/spec/unit/shell/shell_session_spec.rb +8 -9
  1399. data/spec/unit/shell_out_spec.rb +1 -1
  1400. data/spec/unit/shell_spec.rb +9 -9
  1401. data/spec/unit/user_spec.rb +14 -15
  1402. data/spec/unit/user_v1_spec.rb +22 -23
  1403. data/spec/unit/util/backup_spec.rb +17 -18
  1404. data/spec/unit/util/diff_spec.rb +6 -9
  1405. data/spec/unit/util/dsc/configuration_generator_spec.rb +48 -48
  1406. data/spec/unit/util/dsc/lcm_output_parser_spec.rb +22 -22
  1407. data/spec/unit/util/dsc/local_configuration_manager_spec.rb +30 -31
  1408. data/spec/unit/util/dsc/resource_store.rb +22 -22
  1409. data/spec/unit/util/editor_spec.rb +65 -65
  1410. data/spec/unit/util/file_edit_spec.rb +7 -7
  1411. data/spec/unit/util/powershell/cmdlet_spec.rb +27 -27
  1412. data/spec/unit/util/powershell/ps_credential_spec.rb +13 -13
  1413. data/spec/unit/util/selinux_spec.rb +8 -9
  1414. data/spec/unit/util/threaded_job_queue_spec.rb +2 -2
  1415. data/spec/unit/version/platform_spec.rb +5 -6
  1416. data/spec/unit/version_class_spec.rb +8 -9
  1417. data/spec/unit/version_constraint/platform_spec.rb +3 -4
  1418. data/spec/unit/version_constraint_spec.rb +19 -19
  1419. data/spec/unit/win32/registry_spec.rb +25 -25
  1420. data/spec/unit/windows_service_spec.rb +20 -20
  1421. data/tasks/cbgb.rb +84 -0
  1422. data/tasks/external_tests.rb +12 -11
  1423. data/tasks/maintainers.rb +15 -15
  1424. data/tasks/rspec.rb +18 -15
  1425. metadata +250 -67
  1426. data/lib/chef/chef_fs/file_system/acl_dir.rb +0 -63
  1427. data/lib/chef/chef_fs/file_system/acl_entry.rb +0 -58
  1428. data/lib/chef/chef_fs/file_system/acls_dir.rb +0 -72
  1429. data/lib/chef/chef_fs/file_system/chef_repository_file_system_cookbook_dir.rb +0 -102
  1430. data/lib/chef/chef_fs/file_system/chef_repository_file_system_cookbook_entry.rb +0 -80
  1431. data/lib/chef/chef_fs/file_system/chef_repository_file_system_cookbooks_dir.rb +0 -82
  1432. data/lib/chef/chef_fs/file_system/chef_repository_file_system_entry.rb +0 -81
  1433. data/lib/chef/chef_fs/file_system/chef_repository_file_system_root_dir.rb +0 -196
  1434. data/lib/chef/chef_fs/file_system/chef_server_root_dir.rb +0 -165
  1435. data/lib/chef/chef_fs/file_system/cookbook_dir.rb +0 -224
  1436. data/lib/chef/chef_fs/file_system/cookbook_file.rb +0 -82
  1437. data/lib/chef/chef_fs/file_system/cookbook_subdir.rb +0 -59
  1438. data/lib/chef/chef_fs/file_system/cookbooks_acl_dir.rb +0 -41
  1439. data/lib/chef/chef_fs/file_system/cookbooks_dir.rb +0 -156
  1440. data/lib/chef/chef_fs/file_system/data_bag_dir.rb +0 -69
  1441. data/lib/chef/chef_fs/file_system/data_bags_dir.rb +0 -71
  1442. data/lib/chef/chef_fs/file_system/environments_dir.rb +0 -60
  1443. data/lib/chef/chef_fs/file_system/file_system_entry.rb +0 -115
  1444. data/lib/chef/chef_fs/file_system/memory_dir.rb +0 -51
  1445. data/lib/chef/chef_fs/file_system/memory_file.rb +0 -17
  1446. data/lib/chef/chef_fs/file_system/memory_root.rb +0 -21
  1447. data/lib/chef/chef_fs/file_system/nodes_dir.rb +0 -55
  1448. data/lib/chef/chef_fs/file_system/org_entry.rb +0 -34
  1449. data/lib/chef/chef_fs/file_system/organization_invites_entry.rb +0 -59
  1450. data/lib/chef/chef_fs/file_system/organization_members_entry.rb +0 -58
  1451. data/lib/chef/chef_fs/file_system/rest_list_dir.rb +0 -110
  1452. data/lib/chef/chef_fs/file_system/rest_list_entry.rb +0 -185
@@ -1,6 +1,6 @@
1
1
  #
2
- # Author:: John Keiser (<jkeiser@opscode.com>)
3
- # Copyright:: Copyright (c) 2013 Opscode, Inc.
2
+ # Author:: John Keiser (<jkeiser@chef.io>)
3
+ # Copyright:: Copyright 2013-2016, Chef Software Inc.
4
4
  # License:: Apache License, Version 2.0
5
5
  #
6
6
  # Licensed under the Apache License, Version 2.0 (the "License");
@@ -15,49 +15,49 @@
15
15
  # See the License for the specific language governing permissions and
16
16
  # limitations under the License.
17
17
 
18
- require 'support/shared/integration/integration_helper'
19
- require 'support/shared/context/config'
20
- require 'chef/knife/list'
21
- require 'chef/knife/show'
18
+ require "support/shared/integration/integration_helper"
19
+ require "support/shared/context/config"
20
+ require "chef/knife/list"
21
+ require "chef/knife/show"
22
22
 
23
- describe 'chef_repo_path tests', :workstation do
23
+ describe "chef_repo_path tests", :workstation do
24
24
  include IntegrationSupport
25
25
  include KnifeSupport
26
26
 
27
27
  let(:error_rel_path_outside_repo) { /^ERROR: Attempt to use relative path '' when current directory is outside the repository path/ }
28
28
 
29
29
  # TODO alternate repo_path / *_path
30
- context 'alternate *_path' do
31
- when_the_repository 'has clients and clients2, cookbooks and cookbooks2, etc.' do
30
+ context "alternate *_path" do
31
+ when_the_repository "has clients and clients2, cookbooks and cookbooks2, etc." do
32
32
  before do
33
- file 'clients/client1.json', {}
34
- file 'cookbooks/cookbook1/metadata.rb', ''
35
- file 'data_bags/bag/item.json', {}
36
- file 'environments/env1.json', {}
37
- file 'nodes/node1.json', {}
38
- file 'roles/role1.json', {}
39
- file 'users/user1.json', {}
40
-
41
- file 'clients2/client2.json', {}
42
- file 'cookbooks2/cookbook2/metadata.rb', ''
43
- file 'data_bags2/bag2/item2.json', {}
44
- file 'environments2/env2.json', {}
45
- file 'nodes2/node2.json', {}
46
- file 'roles2/role2.json', {}
47
- file 'users2/user2.json', {}
48
-
49
- directory 'chef_repo2' do
50
- file 'clients/client3.json', {}
51
- file 'cookbooks/cookbook3/metadata.rb', ''
52
- file 'data_bags/bag3/item3.json', {}
53
- file 'environments/env3.json', {}
54
- file 'nodes/node3.json', {}
55
- file 'roles/role3.json', {}
56
- file 'users/user3.json', {}
33
+ file "clients/client1.json", {}
34
+ file "cookbooks/cookbook1/metadata.rb", ""
35
+ file "data_bags/bag/item.json", {}
36
+ file "environments/env1.json", {}
37
+ file "nodes/node1.json", {}
38
+ file "roles/role1.json", {}
39
+ file "users/user1.json", {}
40
+
41
+ file "clients2/client2.json", {}
42
+ file "cookbooks2/cookbook2/metadata.rb", ""
43
+ file "data_bags2/bag2/item2.json", {}
44
+ file "environments2/env2.json", {}
45
+ file "nodes2/node2.json", {}
46
+ file "roles2/role2.json", {}
47
+ file "users2/user2.json", {}
48
+
49
+ directory "chef_repo2" do
50
+ file "clients/client3.json", {}
51
+ file "cookbooks/cookbook3/metadata.rb", ""
52
+ file "data_bags/bag3/item3.json", {}
53
+ file "environments/env3.json", {}
54
+ file "nodes/node3.json", {}
55
+ file "roles/role3.json", {}
56
+ file "users/user3.json", {}
57
57
  end
58
58
  end
59
59
 
60
- it 'knife list --local -Rfp --chef-repo-path chef_repo2 / grabs chef_repo2 stuff' do
60
+ it "knife list --local -Rfp --chef-repo-path chef_repo2 / grabs chef_repo2 stuff" do
61
61
  Chef::Config.delete(:chef_repo_path)
62
62
  knife("list --local -Rfp --chef-repo-path #{path_to('chef_repo2')} /").should_succeed <<EOM
63
63
  /clients/
@@ -79,15 +79,15 @@ describe 'chef_repo_path tests', :workstation do
79
79
  EOM
80
80
  end
81
81
 
82
- context 'when all _paths are set to alternates' do
82
+ context "when all _paths are set to alternates" do
83
83
  before :each do
84
- %w(client cookbook data_bag environment node role user).each do |object_name|
84
+ %w{client cookbook data_bag environment node role user}.each do |object_name|
85
85
  Chef::Config["#{object_name}_path".to_sym] = File.join(Chef::Config.chef_repo_path, "#{object_name}s2")
86
86
  end
87
- Chef::Config.chef_repo_path = File.join(Chef::Config.chef_repo_path, 'chef_repo2')
87
+ Chef::Config.chef_repo_path = File.join(Chef::Config.chef_repo_path, "chef_repo2")
88
88
  end
89
89
 
90
- it 'knife list --local -Rfp --chef-repo-path chef_repo2 / grabs chef_repo2 stuff' do
90
+ it "knife list --local -Rfp --chef-repo-path chef_repo2 / grabs chef_repo2 stuff" do
91
91
  knife("list --local -Rfp --chef-repo-path #{path_to('chef_repo2')} /").should_succeed <<EOM
92
92
  /clients/
93
93
  /clients/client3.json
@@ -108,24 +108,24 @@ EOM
108
108
  EOM
109
109
  end
110
110
 
111
- context 'when cwd is at the top level' do
112
- before { cwd '.' }
113
- it 'knife list --local -Rfp fails' do
114
- knife('list --local -Rfp').should_fail(error_rel_path_outside_repo)
111
+ context "when cwd is at the top level" do
112
+ before { cwd "." }
113
+ it "knife list --local -Rfp fails" do
114
+ knife("list --local -Rfp").should_fail(error_rel_path_outside_repo)
115
115
  end
116
116
  end
117
117
 
118
- context 'when cwd is inside the data_bags directory' do
119
- before { cwd 'data_bags' }
120
- it 'knife list --local -Rfp fails' do
121
- knife('list --local -Rfp').should_fail(error_rel_path_outside_repo)
118
+ context "when cwd is inside the data_bags directory" do
119
+ before { cwd "data_bags" }
120
+ it "knife list --local -Rfp fails" do
121
+ knife("list --local -Rfp").should_fail(error_rel_path_outside_repo)
122
122
  end
123
123
  end
124
124
 
125
- context 'when cwd is inside chef_repo2' do
126
- before { cwd 'chef_repo2' }
127
- it 'knife list --local -Rfp lists everything' do
128
- knife('list --local -Rfp').should_succeed <<EOM
125
+ context "when cwd is inside chef_repo2" do
126
+ before { cwd "chef_repo2" }
127
+ it "knife list --local -Rfp lists everything" do
128
+ knife("list --local -Rfp").should_succeed <<EOM
129
129
  clients/
130
130
  clients/client2.json
131
131
  cookbooks/
@@ -146,31 +146,31 @@ EOM
146
146
  end
147
147
  end
148
148
 
149
- context 'when cwd is inside data_bags2' do
150
- before { cwd 'data_bags2' }
151
- it 'knife list --local -Rfp lists data bags' do
152
- knife('list --local -Rfp').should_succeed <<EOM
149
+ context "when cwd is inside data_bags2" do
150
+ before { cwd "data_bags2" }
151
+ it "knife list --local -Rfp lists data bags" do
152
+ knife("list --local -Rfp").should_succeed <<EOM
153
153
  bag2/
154
154
  bag2/item2.json
155
155
  EOM
156
156
  end
157
- it 'knife list --local -Rfp ../roles lists roles' do
158
- knife('list --local -Rfp ../roles').should_succeed "/roles/role2.json\n"
157
+ it "knife list --local -Rfp ../roles lists roles" do
158
+ knife("list --local -Rfp ../roles").should_succeed "/roles/role2.json\n"
159
159
  end
160
160
  end
161
161
  end
162
162
 
163
- context 'when all _paths except chef_repo_path are set to alternates' do
163
+ context "when all _paths except chef_repo_path are set to alternates" do
164
164
  before :each do
165
- %w(client cookbook data_bag environment node role user).each do |object_name|
165
+ %w{client cookbook data_bag environment node role user}.each do |object_name|
166
166
  Chef::Config["#{object_name}_path".to_sym] = File.join(Chef::Config.chef_repo_path, "#{object_name}s2")
167
167
  end
168
168
  end
169
169
 
170
- context 'when cwd is at the top level' do
171
- before { cwd '.' }
172
- it 'knife list --local -Rfp lists everything' do
173
- knife('list --local -Rfp').should_succeed <<EOM
170
+ context "when cwd is at the top level" do
171
+ before { cwd "." }
172
+ it "knife list --local -Rfp lists everything" do
173
+ knife("list --local -Rfp").should_succeed <<EOM
174
174
  clients/
175
175
  clients/client2.json
176
176
  cookbooks/
@@ -191,24 +191,24 @@ EOM
191
191
  end
192
192
  end
193
193
 
194
- context 'when cwd is inside the data_bags directory' do
195
- before { cwd 'data_bags' }
196
- it 'knife list --local -Rfp fails' do
197
- knife('list --local -Rfp').should_fail(error_rel_path_outside_repo)
194
+ context "when cwd is inside the data_bags directory" do
195
+ before { cwd "data_bags" }
196
+ it "knife list --local -Rfp fails" do
197
+ knife("list --local -Rfp").should_fail(error_rel_path_outside_repo)
198
198
  end
199
199
  end
200
200
 
201
- context 'when cwd is inside chef_repo2' do
202
- before { cwd 'chef_repo2' }
203
- it 'knife list -Rfp fails' do
204
- knife('list --local -Rfp').should_fail(error_rel_path_outside_repo)
201
+ context "when cwd is inside chef_repo2" do
202
+ before { cwd "chef_repo2" }
203
+ it "knife list -Rfp fails" do
204
+ knife("list --local -Rfp").should_fail(error_rel_path_outside_repo)
205
205
  end
206
206
  end
207
207
 
208
- context 'when cwd is inside data_bags2' do
209
- before { cwd 'data_bags2' }
210
- it 'knife list --local -Rfp lists data bags' do
211
- knife('list --local -Rfp').should_succeed <<EOM
208
+ context "when cwd is inside data_bags2" do
209
+ before { cwd "data_bags2" }
210
+ it "knife list --local -Rfp lists data bags" do
211
+ knife("list --local -Rfp").should_succeed <<EOM
212
212
  bag2/
213
213
  bag2/item2.json
214
214
  EOM
@@ -216,32 +216,32 @@ EOM
216
216
  end
217
217
  end
218
218
 
219
- context 'when only chef_repo_path is set to its alternate' do
219
+ context "when only chef_repo_path is set to its alternate" do
220
220
  before :each do
221
- %w(client cookbook data_bag environment node role user).each do |object_name|
221
+ %w{client cookbook data_bag environment node role user}.each do |object_name|
222
222
  Chef::Config.delete("#{object_name}_path".to_sym)
223
223
  end
224
- Chef::Config.chef_repo_path = File.join(Chef::Config.chef_repo_path, 'chef_repo2')
224
+ Chef::Config.chef_repo_path = File.join(Chef::Config.chef_repo_path, "chef_repo2")
225
225
  end
226
226
 
227
- context 'when cwd is at the top level' do
228
- before { cwd '.' }
229
- it 'knife list --local -Rfp fails' do
230
- knife('list --local -Rfp').should_fail(error_rel_path_outside_repo)
227
+ context "when cwd is at the top level" do
228
+ before { cwd "." }
229
+ it "knife list --local -Rfp fails" do
230
+ knife("list --local -Rfp").should_fail(error_rel_path_outside_repo)
231
231
  end
232
232
  end
233
233
 
234
- context 'when cwd is inside the data_bags directory' do
235
- before { cwd 'data_bags' }
236
- it 'knife list --local -Rfp fails' do
237
- knife('list --local -Rfp').should_fail(error_rel_path_outside_repo)
234
+ context "when cwd is inside the data_bags directory" do
235
+ before { cwd "data_bags" }
236
+ it "knife list --local -Rfp fails" do
237
+ knife("list --local -Rfp").should_fail(error_rel_path_outside_repo)
238
238
  end
239
239
  end
240
240
 
241
- context 'when cwd is inside chef_repo2' do
242
- before { cwd 'chef_repo2' }
243
- it 'knife list --local -Rfp lists everything' do
244
- knife('list --local -Rfp').should_succeed <<EOM
241
+ context "when cwd is inside chef_repo2" do
242
+ before { cwd "chef_repo2" }
243
+ it "knife list --local -Rfp lists everything" do
244
+ knife("list --local -Rfp").should_succeed <<EOM
245
245
  clients/
246
246
  clients/client3.json
247
247
  cookbooks/
@@ -262,10 +262,10 @@ EOM
262
262
  end
263
263
  end
264
264
 
265
- context 'when cwd is inside chef_repo2/data_bags' do
266
- before { cwd 'chef_repo2/data_bags' }
267
- it 'knife list --local -Rfp lists data bags' do
268
- knife('list --local -Rfp').should_succeed <<EOM
265
+ context "when cwd is inside chef_repo2/data_bags" do
266
+ before { cwd "chef_repo2/data_bags" }
267
+ it "knife list --local -Rfp lists data bags" do
268
+ knife("list --local -Rfp").should_succeed <<EOM
269
269
  bag3/
270
270
  bag3/item3.json
271
271
  EOM
@@ -273,24 +273,24 @@ EOM
273
273
  end
274
274
  end
275
275
 
276
- context 'when paths are set to point to both versions of each' do
276
+ context "when paths are set to point to both versions of each" do
277
277
  before :each do
278
- %w(client cookbook data_bag environment node role user).each do |object_name|
278
+ %w{client cookbook data_bag environment node role user}.each do |object_name|
279
279
  Chef::Config["#{object_name}_path".to_sym] = [
280
280
  File.join(Chef::Config.chef_repo_path, "#{object_name}s"),
281
- File.join(Chef::Config.chef_repo_path, "#{object_name}s2")
281
+ File.join(Chef::Config.chef_repo_path, "#{object_name}s2"),
282
282
  ]
283
283
  end
284
- Chef::Config.chef_repo_path = File.join(Chef::Config.chef_repo_path, 'chef_repo2')
284
+ Chef::Config.chef_repo_path = File.join(Chef::Config.chef_repo_path, "chef_repo2")
285
285
  end
286
286
 
287
- context 'when there is a directory in clients1 and file in clients2 with the same name' do
287
+ context "when there is a directory in clients1 and file in clients2 with the same name" do
288
288
  before do
289
- directory 'clients/blah.json'
290
- file 'clients2/blah.json', {}
289
+ directory "clients/blah.json"
290
+ file "clients2/blah.json", {}
291
291
  end
292
- it 'knife show /clients/blah.json succeeds' do
293
- knife('show --local /clients/blah.json').should_succeed <<EOM
292
+ it "knife show /clients/blah.json succeeds" do
293
+ knife("show --local /clients/blah.json").should_succeed <<EOM
294
294
  /clients/blah.json:
295
295
  {
296
296
 
@@ -299,13 +299,13 @@ EOM
299
299
  end
300
300
  end
301
301
 
302
- context 'when there is a file in cookbooks1 and directory in cookbooks2 with the same name' do
302
+ context "when there is a file in cookbooks1 and directory in cookbooks2 with the same name" do
303
303
  before do
304
- file 'cookbooks/blah', ''
305
- file 'cookbooks2/blah/metadata.rb', ''
304
+ file "cookbooks/blah", ""
305
+ file "cookbooks2/blah/metadata.rb", ""
306
306
  end
307
- it 'knife list -Rfp cookbooks shows files in blah' do
308
- knife('list --local -Rfp /cookbooks').should_succeed <<EOM
307
+ it "knife list -Rfp cookbooks shows files in blah" do
308
+ knife("list --local -Rfp /cookbooks").should_succeed <<EOM
309
309
  /cookbooks/blah/
310
310
  /cookbooks/blah/metadata.rb
311
311
  /cookbooks/cookbook1/
@@ -316,13 +316,13 @@ EOM
316
316
  end
317
317
  end
318
318
 
319
- context 'when there is an empty directory in cookbooks1 and a real cookbook in cookbooks2 with the same name' do
319
+ context "when there is an empty directory in cookbooks1 and a real cookbook in cookbooks2 with the same name" do
320
320
  before do
321
- directory 'cookbooks/blah'
322
- file 'cookbooks2/blah/metadata.rb', ''
321
+ directory "cookbooks/blah"
322
+ file "cookbooks2/blah/metadata.rb", ""
323
323
  end
324
- it 'knife list -Rfp cookbooks shows files in blah' do
325
- knife('list --local -Rfp /cookbooks').should_succeed(<<EOM, :stderr => "WARN: Cookbook 'blah' is empty or entirely chefignored at #{Chef::Config.cookbook_path[0]}/blah\n")
324
+ it "knife list -Rfp cookbooks shows files in blah" do
325
+ knife("list --local -Rfp /cookbooks").should_succeed(<<EOM, :stderr => "WARN: Cookbook 'blah' is empty or entirely chefignored at #{Chef::Config.cookbook_path[0]}/blah\n")
326
326
  /cookbooks/blah/
327
327
  /cookbooks/blah/metadata.rb
328
328
  /cookbooks/cookbook1/
@@ -333,13 +333,13 @@ EOM
333
333
  end
334
334
  end
335
335
 
336
- context 'when there is a cookbook in cookbooks1 and a cookbook in cookbooks2 with the same name' do
336
+ context "when there is a cookbook in cookbooks1 and a cookbook in cookbooks2 with the same name" do
337
337
  before do
338
- file 'cookbooks/blah/metadata.json', {}
339
- file 'cookbooks2/blah/metadata.rb', ''
338
+ file "cookbooks/blah/metadata.json", {}
339
+ file "cookbooks2/blah/metadata.rb", ""
340
340
  end
341
- it 'knife list -Rfp cookbooks shows files in the first cookbook and not the second' do
342
- knife('list --local -Rfp /cookbooks').should_succeed(<<EOM, :stderr => "WARN: Child with name 'blah' found in multiple directories: #{Chef::Config.cookbook_path[0]}/blah and #{Chef::Config.cookbook_path[1]}/blah\n")
341
+ it "knife list -Rfp cookbooks shows files in the first cookbook and not the second" do
342
+ knife("list --local -Rfp /cookbooks").should_succeed(<<EOM, :stderr => "WARN: Child with name 'blah' found in multiple directories: #{Chef::Config.cookbook_path[0]}/blah and #{Chef::Config.cookbook_path[1]}/blah\n")
343
343
  /cookbooks/blah/
344
344
  /cookbooks/blah/metadata.json
345
345
  /cookbooks/cookbook1/
@@ -350,13 +350,13 @@ EOM
350
350
  end
351
351
  end
352
352
 
353
- context 'when there is a file in data_bags1 and a directory in data_bags2 with the same name' do
353
+ context "when there is a file in data_bags1 and a directory in data_bags2 with the same name" do
354
354
  before do
355
- file 'data_bags/blah', ''
356
- file 'data_bags2/blah/item.json', ''
355
+ file "data_bags/blah", ""
356
+ file "data_bags2/blah/item.json", ""
357
357
  end
358
- it 'knife list -Rfp data_bags shows files in blah' do
359
- knife('list --local -Rfp /data_bags').should_succeed <<EOM
358
+ it "knife list -Rfp data_bags shows files in blah" do
359
+ knife("list --local -Rfp /data_bags").should_succeed <<EOM
360
360
  /data_bags/bag/
361
361
  /data_bags/bag/item.json
362
362
  /data_bags/bag2/
@@ -367,13 +367,13 @@ EOM
367
367
  end
368
368
  end
369
369
 
370
- context 'when there is a data bag in data_bags1 and a data bag in data_bags2 with the same name' do
370
+ context "when there is a data bag in data_bags1 and a data bag in data_bags2 with the same name" do
371
371
  before do
372
- file 'data_bags/blah/item1.json', ''
373
- file 'data_bags2/blah/item2.json', ''
372
+ file "data_bags/blah/item1.json", ""
373
+ file "data_bags2/blah/item2.json", ""
374
374
  end
375
- it 'knife list -Rfp data_bags shows only items in data_bags1' do
376
- knife('list --local -Rfp /data_bags').should_succeed(<<EOM, :stderr => "WARN: Child with name 'blah' found in multiple directories: #{Chef::Config.data_bag_path[0]}/blah and #{Chef::Config.data_bag_path[1]}/blah\n")
375
+ it "knife list -Rfp data_bags shows only items in data_bags1" do
376
+ knife("list --local -Rfp /data_bags").should_succeed(<<EOM, :stderr => "WARN: Child with name 'blah' found in multiple directories: #{Chef::Config.data_bag_path[0]}/blah and #{Chef::Config.data_bag_path[1]}/blah\n")
377
377
  /data_bags/bag/
378
378
  /data_bags/bag/item.json
379
379
  /data_bags/bag2/
@@ -384,13 +384,13 @@ EOM
384
384
  end
385
385
  end
386
386
 
387
- context 'when there is a directory in environments1 and file in environments2 with the same name' do
387
+ context "when there is a directory in environments1 and file in environments2 with the same name" do
388
388
  before do
389
- directory 'environments/blah.json'
390
- file 'environments2/blah.json', {}
389
+ directory "environments/blah.json"
390
+ file "environments2/blah.json", {}
391
391
  end
392
- it 'knife show /environments/blah.json succeeds' do
393
- knife('show --local /environments/blah.json').should_succeed <<EOM
392
+ it "knife show /environments/blah.json succeeds" do
393
+ knife("show --local /environments/blah.json").should_succeed <<EOM
394
394
  /environments/blah.json:
395
395
  {
396
396
 
@@ -399,13 +399,13 @@ EOM
399
399
  end
400
400
  end
401
401
 
402
- context 'when there is a directory in nodes1 and file in nodes2 with the same name' do
402
+ context "when there is a directory in nodes1 and file in nodes2 with the same name" do
403
403
  before do
404
- directory 'nodes/blah.json'
405
- file 'nodes2/blah.json', {}
404
+ directory "nodes/blah.json"
405
+ file "nodes2/blah.json", {}
406
406
  end
407
- it 'knife show /nodes/blah.json succeeds' do
408
- knife('show --local /nodes/blah.json').should_succeed <<EOM
407
+ it "knife show /nodes/blah.json succeeds" do
408
+ knife("show --local /nodes/blah.json").should_succeed <<EOM
409
409
  /nodes/blah.json:
410
410
  {
411
411
 
@@ -414,13 +414,13 @@ EOM
414
414
  end
415
415
  end
416
416
 
417
- context 'when there is a directory in roles1 and file in roles2 with the same name' do
417
+ context "when there is a directory in roles1 and file in roles2 with the same name" do
418
418
  before do
419
- directory 'roles/blah.json'
420
- file 'roles2/blah.json', {}
419
+ directory "roles/blah.json"
420
+ file "roles2/blah.json", {}
421
421
  end
422
- it 'knife show /roles/blah.json succeeds' do
423
- knife('show --local /roles/blah.json').should_succeed <<EOM
422
+ it "knife show /roles/blah.json succeeds" do
423
+ knife("show --local /roles/blah.json").should_succeed <<EOM
424
424
  /roles/blah.json:
425
425
  {
426
426
 
@@ -429,13 +429,13 @@ EOM
429
429
  end
430
430
  end
431
431
 
432
- context 'when there is a directory in users1 and file in users2 with the same name' do
432
+ context "when there is a directory in users1 and file in users2 with the same name" do
433
433
  before do
434
- directory 'users/blah.json'
435
- file 'users2/blah.json', {}
434
+ directory "users/blah.json"
435
+ file "users2/blah.json", {}
436
436
  end
437
- it 'knife show /users/blah.json succeeds' do
438
- knife('show --local /users/blah.json').should_succeed <<EOM
437
+ it "knife show /users/blah.json succeeds" do
438
+ knife("show --local /users/blah.json").should_succeed <<EOM
439
439
  /users/blah.json:
440
440
  {
441
441
 
@@ -444,17 +444,17 @@ EOM
444
444
  end
445
445
  end
446
446
 
447
- context 'when cwd is at the top level' do
448
- before { cwd '.' }
449
- it 'knife list --local -Rfp fails' do
450
- knife('list --local -Rfp').should_fail(error_rel_path_outside_repo)
447
+ context "when cwd is at the top level" do
448
+ before { cwd "." }
449
+ it "knife list --local -Rfp fails" do
450
+ knife("list --local -Rfp").should_fail(error_rel_path_outside_repo)
451
451
  end
452
452
  end
453
453
 
454
- context 'when cwd is inside the data_bags directory' do
455
- before { cwd 'data_bags' }
456
- it 'knife list --local -Rfp lists data bags' do
457
- knife('list --local -Rfp').should_succeed <<EOM
454
+ context "when cwd is inside the data_bags directory" do
455
+ before { cwd "data_bags" }
456
+ it "knife list --local -Rfp lists data bags" do
457
+ knife("list --local -Rfp").should_succeed <<EOM
458
458
  bag/
459
459
  bag/item.json
460
460
  bag2/
@@ -463,10 +463,10 @@ EOM
463
463
  end
464
464
  end
465
465
 
466
- context 'when cwd is inside chef_repo2' do
467
- before { cwd 'chef_repo2' }
468
- it 'knife list --local -Rfp lists everything' do
469
- knife('list --local -Rfp').should_succeed <<EOM
466
+ context "when cwd is inside chef_repo2" do
467
+ before { cwd "chef_repo2" }
468
+ it "knife list --local -Rfp lists everything" do
469
+ knife("list --local -Rfp").should_succeed <<EOM
470
470
  clients/
471
471
  clients/client1.json
472
472
  clients/client2.json
@@ -496,10 +496,10 @@ EOM
496
496
  end
497
497
  end
498
498
 
499
- context 'when cwd is inside data_bags2' do
500
- before { cwd 'data_bags2' }
501
- it 'knife list --local -Rfp lists data bags' do
502
- knife('list --local -Rfp').should_succeed <<EOM
499
+ context "when cwd is inside data_bags2" do
500
+ before { cwd "data_bags2" }
501
+ it "knife list --local -Rfp lists data bags" do
502
+ knife("list --local -Rfp").should_succeed <<EOM
503
503
  bag/
504
504
  bag/item.json
505
505
  bag2/
@@ -509,21 +509,21 @@ EOM
509
509
  end
510
510
  end
511
511
 
512
- context 'when when chef_repo_path is set to both places and no other _path is set' do
512
+ context "when when chef_repo_path is set to both places and no other _path is set" do
513
513
  before :each do
514
- %w(client cookbook data_bag environment node role user).each do |object_name|
514
+ %w{client cookbook data_bag environment node role user}.each do |object_name|
515
515
  Chef::Config.delete("#{object_name}_path".to_sym)
516
516
  end
517
517
  Chef::Config.chef_repo_path = [
518
518
  Chef::Config.chef_repo_path,
519
- File.join(Chef::Config.chef_repo_path, 'chef_repo2')
519
+ File.join(Chef::Config.chef_repo_path, "chef_repo2"),
520
520
  ]
521
521
  end
522
522
 
523
- context 'when cwd is at the top level' do
524
- before { cwd '.' }
525
- it 'knife list --local -Rfp lists everything' do
526
- knife('list --local -Rfp').should_succeed <<EOM
523
+ context "when cwd is at the top level" do
524
+ before { cwd "." }
525
+ it "knife list --local -Rfp lists everything" do
526
+ knife("list --local -Rfp").should_succeed <<EOM
527
527
  clients/
528
528
  clients/client1.json
529
529
  clients/client3.json
@@ -553,10 +553,10 @@ EOM
553
553
  end
554
554
  end
555
555
 
556
- context 'when cwd is inside the data_bags directory' do
557
- before { cwd 'data_bags' }
558
- it 'knife list --local -Rfp lists data bags' do
559
- knife('list --local -Rfp').should_succeed <<EOM
556
+ context "when cwd is inside the data_bags directory" do
557
+ before { cwd "data_bags" }
558
+ it "knife list --local -Rfp lists data bags" do
559
+ knife("list --local -Rfp").should_succeed <<EOM
560
560
  bag/
561
561
  bag/item.json
562
562
  bag3/
@@ -565,10 +565,10 @@ EOM
565
565
  end
566
566
  end
567
567
 
568
- context 'when cwd is inside chef_repo2' do
569
- before { cwd 'chef_repo2' }
570
- it 'knife list --local -Rfp lists everything' do
571
- knife('list --local -Rfp').should_succeed <<EOM
568
+ context "when cwd is inside chef_repo2" do
569
+ before { cwd "chef_repo2" }
570
+ it "knife list --local -Rfp lists everything" do
571
+ knife("list --local -Rfp").should_succeed <<EOM
572
572
  clients/
573
573
  clients/client1.json
574
574
  clients/client3.json
@@ -598,10 +598,10 @@ EOM
598
598
  end
599
599
  end
600
600
 
601
- context 'when cwd is inside chef_repo2/data_bags' do
602
- before { cwd 'chef_repo2/data_bags' }
603
- it 'knife list --local -Rfp lists data bags' do
604
- knife('list --local -Rfp').should_succeed <<EOM
601
+ context "when cwd is inside chef_repo2/data_bags" do
602
+ before { cwd "chef_repo2/data_bags" }
603
+ it "knife list --local -Rfp lists data bags" do
604
+ knife("list --local -Rfp").should_succeed <<EOM
605
605
  bag/
606
606
  bag/item.json
607
607
  bag3/
@@ -611,33 +611,33 @@ EOM
611
611
  end
612
612
  end
613
613
 
614
- context 'when cookbook_path is set and nothing else' do
614
+ context "when cookbook_path is set and nothing else" do
615
615
  before :each do
616
- %w(client data_bag environment node role user).each do |object_name|
616
+ %w{client data_bag environment node role user}.each do |object_name|
617
617
  Chef::Config.delete("#{object_name}_path".to_sym)
618
618
  end
619
619
  Chef::Config.delete(:chef_repo_path)
620
- Chef::Config.cookbook_path = File.join(@repository_dir, 'chef_repo2', 'cookbooks')
620
+ Chef::Config.cookbook_path = File.join(@repository_dir, "chef_repo2", "cookbooks")
621
621
  end
622
622
 
623
- context 'when cwd is at the top level' do
624
- before { cwd '.' }
625
- it 'knife list --local -Rfp fails' do
626
- knife('list --local -Rfp').should_fail(error_rel_path_outside_repo)
623
+ context "when cwd is at the top level" do
624
+ before { cwd "." }
625
+ it "knife list --local -Rfp fails" do
626
+ knife("list --local -Rfp").should_fail(error_rel_path_outside_repo)
627
627
  end
628
628
  end
629
629
 
630
- context 'when cwd is inside the data_bags directory' do
631
- before { cwd 'data_bags' }
632
- it 'knife list --local -Rfp fails' do
633
- knife('list --local -Rfp').should_fail(error_rel_path_outside_repo)
630
+ context "when cwd is inside the data_bags directory" do
631
+ before { cwd "data_bags" }
632
+ it "knife list --local -Rfp fails" do
633
+ knife("list --local -Rfp").should_fail(error_rel_path_outside_repo)
634
634
  end
635
635
  end
636
636
 
637
- context 'when cwd is inside chef_repo2' do
638
- before { cwd 'chef_repo2' }
639
- it 'knife list --local -Rfp lists everything' do
640
- knife('list --local -Rfp').should_succeed <<EOM
637
+ context "when cwd is inside chef_repo2" do
638
+ before { cwd "chef_repo2" }
639
+ it "knife list --local -Rfp lists everything" do
640
+ knife("list --local -Rfp").should_succeed <<EOM
641
641
  clients/
642
642
  clients/client3.json
643
643
  cookbooks/
@@ -658,10 +658,10 @@ EOM
658
658
  end
659
659
  end
660
660
 
661
- context 'when cwd is inside chef_repo2/data_bags' do
662
- before { cwd 'chef_repo2/data_bags' }
663
- it 'knife list --local -Rfp lists data bags' do
664
- knife('list --local -Rfp').should_succeed <<EOM
661
+ context "when cwd is inside chef_repo2/data_bags" do
662
+ before { cwd "chef_repo2/data_bags" }
663
+ it "knife list --local -Rfp lists data bags" do
664
+ knife("list --local -Rfp").should_succeed <<EOM
665
665
  bag3/
666
666
  bag3/item3.json
667
667
  EOM
@@ -669,22 +669,22 @@ EOM
669
669
  end
670
670
  end
671
671
 
672
- context 'when cookbook_path is set to multiple places and nothing else is set' do
672
+ context "when cookbook_path is set to multiple places and nothing else is set" do
673
673
  before :each do
674
- %w(client data_bag environment node role user).each do |object_name|
674
+ %w{client data_bag environment node role user}.each do |object_name|
675
675
  Chef::Config.delete("#{object_name}_path".to_sym)
676
676
  end
677
677
  Chef::Config.delete(:chef_repo_path)
678
678
  Chef::Config.cookbook_path = [
679
- File.join(@repository_dir, 'cookbooks'),
680
- File.join(@repository_dir, 'chef_repo2', 'cookbooks')
679
+ File.join(@repository_dir, "cookbooks"),
680
+ File.join(@repository_dir, "chef_repo2", "cookbooks"),
681
681
  ]
682
682
  end
683
683
 
684
- context 'when cwd is at the top level' do
685
- before { cwd '.' }
686
- it 'knife list --local -Rfp lists everything' do
687
- knife('list --local -Rfp').should_succeed <<EOM
684
+ context "when cwd is at the top level" do
685
+ before { cwd "." }
686
+ it "knife list --local -Rfp lists everything" do
687
+ knife("list --local -Rfp").should_succeed <<EOM
688
688
  clients/
689
689
  clients/client1.json
690
690
  clients/client3.json
@@ -714,10 +714,10 @@ EOM
714
714
  end
715
715
  end
716
716
 
717
- context 'when cwd is inside the data_bags directory' do
718
- before { cwd 'data_bags' }
719
- it 'knife list --local -Rfp lists data bags' do
720
- knife('list --local -Rfp').should_succeed <<EOM
717
+ context "when cwd is inside the data_bags directory" do
718
+ before { cwd "data_bags" }
719
+ it "knife list --local -Rfp lists data bags" do
720
+ knife("list --local -Rfp").should_succeed <<EOM
721
721
  bag/
722
722
  bag/item.json
723
723
  bag3/
@@ -726,10 +726,10 @@ EOM
726
726
  end
727
727
  end
728
728
 
729
- context 'when cwd is inside chef_repo2' do
730
- before { cwd 'chef_repo2' }
731
- it 'knife list --local -Rfp lists everything' do
732
- knife('list --local -Rfp').should_succeed <<EOM
729
+ context "when cwd is inside chef_repo2" do
730
+ before { cwd "chef_repo2" }
731
+ it "knife list --local -Rfp lists everything" do
732
+ knife("list --local -Rfp").should_succeed <<EOM
733
733
  clients/
734
734
  clients/client1.json
735
735
  clients/client3.json
@@ -759,10 +759,10 @@ EOM
759
759
  end
760
760
  end
761
761
 
762
- context 'when cwd is inside chef_repo2/data_bags' do
763
- before { cwd 'chef_repo2/data_bags' }
764
- it 'knife list --local -Rfp lists data bags' do
765
- knife('list --local -Rfp').should_succeed <<EOM
762
+ context "when cwd is inside chef_repo2/data_bags" do
763
+ before { cwd "chef_repo2/data_bags" }
764
+ it "knife list --local -Rfp lists data bags" do
765
+ knife("list --local -Rfp").should_succeed <<EOM
766
766
  bag/
767
767
  bag/item.json
768
768
  bag3/
@@ -772,36 +772,36 @@ EOM
772
772
  end
773
773
  end
774
774
 
775
- context 'when data_bag_path and chef_repo_path are set, and nothing else' do
775
+ context "when data_bag_path and chef_repo_path are set, and nothing else" do
776
776
  before :each do
777
- %w(client cookbook environment node role user).each do |object_name|
777
+ %w{client cookbook environment node role user}.each do |object_name|
778
778
  Chef::Config.delete("#{object_name}_path".to_sym)
779
779
  end
780
- Chef::Config.data_bag_path = File.join(Chef::Config.chef_repo_path, 'data_bags')
781
- Chef::Config.chef_repo_path = File.join(Chef::Config.chef_repo_path, 'chef_repo2')
780
+ Chef::Config.data_bag_path = File.join(Chef::Config.chef_repo_path, "data_bags")
781
+ Chef::Config.chef_repo_path = File.join(Chef::Config.chef_repo_path, "chef_repo2")
782
782
  end
783
783
 
784
- context 'when cwd is at the top level' do
785
- before { cwd '.' }
786
- it 'knife list --local -Rfp fails' do
787
- knife('list --local -Rfp').should_fail(error_rel_path_outside_repo)
784
+ context "when cwd is at the top level" do
785
+ before { cwd "." }
786
+ it "knife list --local -Rfp fails" do
787
+ knife("list --local -Rfp").should_fail(error_rel_path_outside_repo)
788
788
  end
789
789
  end
790
790
 
791
- context 'when cwd is inside the data_bags directory' do
792
- before { cwd 'data_bags' }
793
- it 'knife list --local -Rfp lists data bags' do
794
- knife('list --local -Rfp').should_succeed <<EOM
791
+ context "when cwd is inside the data_bags directory" do
792
+ before { cwd "data_bags" }
793
+ it "knife list --local -Rfp lists data bags" do
794
+ knife("list --local -Rfp").should_succeed <<EOM
795
795
  bag/
796
796
  bag/item.json
797
797
  EOM
798
798
  end
799
799
  end
800
800
 
801
- context 'when cwd is inside chef_repo2' do
802
- before { cwd 'chef_repo2' }
803
- it 'knife list --local -Rfp lists everything' do
804
- knife('list --local -Rfp').should_succeed <<EOM
801
+ context "when cwd is inside chef_repo2" do
802
+ before { cwd "chef_repo2" }
803
+ it "knife list --local -Rfp lists everything" do
804
+ knife("list --local -Rfp").should_succeed <<EOM
805
805
  clients/
806
806
  clients/client3.json
807
807
  cookbooks/
@@ -822,44 +822,44 @@ EOM
822
822
  end
823
823
  end
824
824
 
825
- context 'when cwd is inside chef_repo2/data_bags' do
826
- before { cwd 'chef_repo2/data_bags' }
827
- it 'knife list --local -Rfp fails' do
828
- knife('list --local -Rfp').should_fail(error_rel_path_outside_repo)
825
+ context "when cwd is inside chef_repo2/data_bags" do
826
+ before { cwd "chef_repo2/data_bags" }
827
+ it "knife list --local -Rfp fails" do
828
+ knife("list --local -Rfp").should_fail(error_rel_path_outside_repo)
829
829
  end
830
830
  end
831
831
  end
832
832
 
833
- context 'when data_bag_path is set and nothing else' do
833
+ context "when data_bag_path is set and nothing else" do
834
834
  include_context "default config options"
835
835
 
836
836
  before :each do
837
- %w(client cookbook environment node role user).each do |object_name|
837
+ %w{client cookbook environment node role user}.each do |object_name|
838
838
  Chef::Config.delete("#{object_name}_path".to_sym)
839
839
  end
840
840
  Chef::Config.delete(:chef_repo_path)
841
- Chef::Config.data_bag_path = File.join(@repository_dir, 'data_bags')
841
+ Chef::Config.data_bag_path = File.join(@repository_dir, "data_bags")
842
842
  end
843
843
 
844
- it 'knife list --local -Rfp / lists data bags' do
845
- knife('list --local -Rfp /').should_succeed <<EOM
844
+ it "knife list --local -Rfp / lists data bags" do
845
+ knife("list --local -Rfp /").should_succeed <<EOM
846
846
  /data_bags/
847
847
  /data_bags/bag/
848
848
  /data_bags/bag/item.json
849
849
  EOM
850
850
  end
851
851
 
852
- it 'knife list --local -Rfp /data_bags lists data bags' do
853
- knife('list --local -Rfp /data_bags').should_succeed <<EOM
852
+ it "knife list --local -Rfp /data_bags lists data bags" do
853
+ knife("list --local -Rfp /data_bags").should_succeed <<EOM
854
854
  /data_bags/bag/
855
855
  /data_bags/bag/item.json
856
856
  EOM
857
857
  end
858
858
 
859
- context 'when cwd is inside the data_bags directory' do
860
- before { cwd 'data_bags' }
861
- it 'knife list --local -Rfp lists data bags' do
862
- knife('list --local -Rfp').should_succeed <<EOM
859
+ context "when cwd is inside the data_bags directory" do
860
+ before { cwd "data_bags" }
861
+ it "knife list --local -Rfp lists data bags" do
862
+ knife("list --local -Rfp").should_succeed <<EOM
863
863
  bag/
864
864
  bag/item.json
865
865
  EOM
@@ -868,21 +868,21 @@ EOM
868
868
  end
869
869
  end
870
870
 
871
- when_the_repository 'is empty' do
872
- context 'when the repository _paths point to places that do not exist' do
871
+ when_the_repository "is empty" do
872
+ context "when the repository _paths point to places that do not exist" do
873
873
  before :each do
874
- %w(client cookbook data_bag environment node role user).each do |object_name|
875
- Chef::Config["#{object_name}_path".to_sym] = File.join(Chef::Config.chef_repo_path, 'nowhere', object_name)
874
+ %w{client cookbook data_bag environment node role user}.each do |object_name|
875
+ Chef::Config["#{object_name}_path".to_sym] = File.join(Chef::Config.chef_repo_path, "nowhere", object_name)
876
876
  end
877
- Chef::Config.chef_repo_path = File.join(Chef::Config.chef_repo_path, 'nowhere')
877
+ Chef::Config.chef_repo_path = File.join(Chef::Config.chef_repo_path, "nowhere")
878
878
  end
879
879
 
880
- it 'knife list --local -Rfp / fails' do
881
- knife('list --local -Rfp /').should_succeed ''
880
+ it "knife list --local -Rfp / fails" do
881
+ knife("list --local -Rfp /").should_succeed ""
882
882
  end
883
883
 
884
- it 'knife list --local -Rfp /data_bags fails' do
885
- knife('list --local -Rfp /data_bags').should_fail("ERROR: /data_bags: No such file or directory\n")
884
+ it "knife list --local -Rfp /data_bags fails" do
885
+ knife("list --local -Rfp /data_bags").should_fail("ERROR: /data_bags: No such file or directory\n")
886
886
  end
887
887
  end
888
888
  end