chef 15.1.36-universal-mingw32 → 15.2.20-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 (808) hide show
  1. checksums.yaml +4 -4
  2. data/bin/knife +0 -0
  3. data/ext/win32-eventlog/Rakefile +1 -1
  4. data/lib/chef.rb +1 -2
  5. data/lib/chef/action_collection.rb +8 -0
  6. data/lib/chef/api_client.rb +2 -2
  7. data/lib/chef/api_client/registration.rb +8 -7
  8. data/lib/chef/api_client_v1.rb +2 -1
  9. data/lib/chef/application.rb +1 -0
  10. data/lib/chef/application/apply.rb +1 -1
  11. data/lib/chef/application/base.rb +440 -0
  12. data/lib/chef/application/client.rb +6 -389
  13. data/lib/chef/application/solo.rb +11 -258
  14. data/lib/chef/application/windows_service.rb +3 -3
  15. data/lib/chef/application/windows_service_manager.rb +3 -3
  16. data/lib/chef/blacklist.rb +1 -1
  17. data/lib/chef/chef_fs/chef_fs_data_store.rb +15 -7
  18. data/lib/chef/chef_fs/command_line.rb +6 -1
  19. data/lib/chef/chef_fs/config.rb +3 -2
  20. data/lib/chef/chef_fs/data_handler/container_data_handler.rb +1 -1
  21. data/lib/chef/chef_fs/data_handler/data_bag_item_data_handler.rb +1 -1
  22. data/lib/chef/chef_fs/data_handler/data_handler_base.rb +1 -1
  23. data/lib/chef/chef_fs/data_handler/organization_data_handler.rb +1 -1
  24. data/lib/chef/chef_fs/data_handler/policy_data_handler.rb +2 -2
  25. data/lib/chef/chef_fs/file_pattern.rb +13 -7
  26. data/lib/chef/chef_fs/file_system.rb +3 -2
  27. data/lib/chef/chef_fs/file_system/base_fs_object.rb +13 -6
  28. data/lib/chef/chef_fs/file_system/chef_server/chef_server_root_dir.rb +1 -1
  29. data/lib/chef/chef_fs/file_system/chef_server/cookbook_artifacts_dir.rb +1 -1
  30. data/lib/chef/chef_fs/file_system/chef_server/cookbook_dir.rb +8 -5
  31. data/lib/chef/chef_fs/file_system/chef_server/cookbook_file.rb +1 -1
  32. data/lib/chef/chef_fs/file_system/chef_server/cookbook_subdir.rb +1 -1
  33. data/lib/chef/chef_fs/file_system/chef_server/cookbooks_dir.rb +1 -1
  34. data/lib/chef/chef_fs/file_system/chef_server/data_bag_dir.rb +3 -2
  35. data/lib/chef/chef_fs/file_system/chef_server/environments_dir.rb +4 -2
  36. data/lib/chef/chef_fs/file_system/chef_server/policies_dir.rb +1 -0
  37. data/lib/chef/chef_fs/file_system/chef_server/rest_list_dir.rb +1 -0
  38. data/lib/chef/chef_fs/file_system/chef_server/versioned_cookbooks_dir.rb +1 -1
  39. data/lib/chef/chef_fs/file_system/memory/memory_dir.rb +1 -1
  40. data/lib/chef/chef_fs/file_system/repository/acl.rb +1 -1
  41. data/lib/chef/chef_fs/file_system/repository/base_file.rb +2 -1
  42. data/lib/chef/chef_fs/file_system/repository/chef_repository_file_system_cookbook_dir.rb +6 -2
  43. data/lib/chef/chef_fs/file_system/repository/chef_repository_file_system_cookbook_entry.rb +6 -4
  44. data/lib/chef/chef_fs/file_system/repository/chef_repository_file_system_root_dir.rb +6 -4
  45. data/lib/chef/chef_fs/file_system/repository/chef_repository_file_system_versioned_cookbook_dir.rb +1 -0
  46. data/lib/chef/chef_fs/file_system/repository/directory.rb +5 -1
  47. data/lib/chef/chef_fs/file_system/repository/file_system_entry.rb +4 -2
  48. data/lib/chef/chef_fs/file_system_cache.rb +1 -0
  49. data/lib/chef/chef_fs/parallelizer/parallel_enumerable.rb +2 -1
  50. data/lib/chef/chef_fs/path_utils.rb +3 -0
  51. data/lib/chef/client.rb +4 -2
  52. data/lib/chef/config.rb +1 -1
  53. data/lib/chef/cookbook/cookbook_version_loader.rb +6 -3
  54. data/lib/chef/cookbook/file_system_file_vendor.rb +1 -0
  55. data/lib/chef/cookbook/file_vendor.rb +1 -0
  56. data/lib/chef/cookbook/gem_installer.rb +1 -0
  57. data/lib/chef/cookbook/manifest_v0.rb +1 -0
  58. data/lib/chef/cookbook/metadata.rb +11 -9
  59. data/lib/chef/cookbook/remote_file_vendor.rb +3 -2
  60. data/lib/chef/cookbook/synchronizer.rb +6 -4
  61. data/lib/chef/cookbook/syntax_check.rb +4 -0
  62. data/lib/chef/cookbook_loader.rb +1 -0
  63. data/lib/chef/cookbook_manifest.rb +4 -2
  64. data/lib/chef/cookbook_site_streaming_uploader.rb +1 -1
  65. data/lib/chef/cookbook_uploader.rb +2 -2
  66. data/lib/chef/cookbook_version.rb +10 -9
  67. data/lib/chef/data_bag.rb +2 -1
  68. data/lib/chef/data_bag_item.rb +6 -3
  69. data/lib/chef/data_collector.rb +16 -8
  70. data/lib/chef/data_collector/run_end_message.rb +2 -0
  71. data/lib/chef/decorator.rb +5 -6
  72. data/lib/chef/deprecated.rb +1 -0
  73. data/lib/chef/dsl/data_query.rb +1 -1
  74. data/lib/chef/dsl/declare_resource.rb +2 -0
  75. data/lib/chef/dsl/platform_introspection.rb +3 -1
  76. data/lib/chef/encrypted_data_bag_item.rb +7 -4
  77. data/lib/chef/encrypted_data_bag_item/assertions.rb +1 -1
  78. data/lib/chef/encrypted_data_bag_item/check_encrypted.rb +1 -0
  79. data/lib/chef/encrypted_data_bag_item/decryptor.rb +4 -2
  80. data/lib/chef/encrypted_data_bag_item/encryptor.rb +1 -0
  81. data/lib/chef/environment.rb +7 -5
  82. data/lib/chef/event_dispatch/base.rb +86 -172
  83. data/lib/chef/event_dispatch/dispatcher.rb +2 -1
  84. data/lib/chef/event_loggers/base.rb +2 -1
  85. data/lib/chef/exceptions.rb +6 -7
  86. data/lib/chef/file_access_control/unix.rb +7 -4
  87. data/lib/chef/file_access_control/windows.rb +17 -8
  88. data/lib/chef/file_cache.rb +2 -1
  89. data/lib/chef/file_content_management/deploy.rb +2 -2
  90. data/lib/chef/formatters/base.rb +3 -4
  91. data/lib/chef/formatters/doc.rb +21 -33
  92. data/lib/chef/formatters/error_inspectors/cookbook_resolve_error_inspector.rb +3 -2
  93. data/lib/chef/formatters/error_inspectors/resource_failure_inspector.rb +3 -1
  94. data/lib/chef/formatters/indentable_output_stream.rb +3 -3
  95. data/lib/chef/formatters/minimal.rb +21 -42
  96. data/lib/chef/guard_interpreter/resource_guard_interpreter.rb +1 -1
  97. data/lib/chef/handler.rb +1 -2
  98. data/lib/chef/http.rb +23 -18
  99. data/lib/chef/http/api_versions.rb +1 -2
  100. data/lib/chef/http/auth_credentials.rb +1 -0
  101. data/lib/chef/http/basic_client.rb +1 -1
  102. data/lib/chef/http/decompressor.rb +1 -0
  103. data/lib/chef/http/json_output.rb +2 -1
  104. data/lib/chef/http/json_to_model_output.rb +1 -1
  105. data/lib/chef/http/remote_request_id.rb +1 -2
  106. data/lib/chef/http/socketless_chef_zero_client.rb +3 -2
  107. data/lib/chef/http/ssl_policies.rb +3 -0
  108. data/lib/chef/http/validate_content_length.rb +2 -2
  109. data/lib/chef/json_compat.rb +1 -1
  110. data/lib/chef/key.rb +8 -6
  111. data/lib/chef/knife.rb +6 -5
  112. data/lib/chef/knife/bootstrap.rb +19 -12
  113. data/lib/chef/knife/bootstrap/chef_vault_handler.rb +1 -0
  114. data/lib/chef/knife/bootstrap/client_builder.rb +1 -0
  115. data/lib/chef/knife/bootstrap/train_connector.rb +23 -17
  116. data/lib/chef/knife/client_bulk_delete.rb +4 -3
  117. data/lib/chef/knife/client_create.rb +13 -13
  118. data/lib/chef/knife/client_delete.rb +3 -3
  119. data/lib/chef/knife/config_get.rb +8 -8
  120. data/lib/chef/knife/config_list_profiles.rb +4 -4
  121. data/lib/chef/knife/cookbook_delete.rb +1 -1
  122. data/lib/chef/knife/cookbook_download.rb +12 -12
  123. data/lib/chef/knife/cookbook_show.rb +10 -10
  124. data/lib/chef/knife/cookbook_upload.rb +5 -5
  125. data/lib/chef/knife/core/bootstrap_context.rb +1 -1
  126. data/lib/chef/knife/core/cookbook_scm_repo.rb +1 -1
  127. data/lib/chef/knife/core/gem_glob_loader.rb +2 -2
  128. data/lib/chef/knife/core/generic_presenter.rb +4 -4
  129. data/lib/chef/knife/core/node_presenter.rb +17 -17
  130. data/lib/chef/knife/core/object_loader.rb +1 -1
  131. data/lib/chef/knife/core/status_presenter.rb +5 -5
  132. data/lib/chef/knife/core/subcommand_loader.rb +3 -2
  133. data/lib/chef/knife/core/text_formatter.rb +4 -4
  134. data/lib/chef/knife/core/ui.rb +9 -5
  135. data/lib/chef/knife/data_bag_create.rb +1 -0
  136. data/lib/chef/knife/data_bag_from_file.rb +1 -1
  137. data/lib/chef/knife/data_bag_secret_options.rb +13 -13
  138. data/lib/chef/knife/data_bag_show.rb +2 -2
  139. data/lib/chef/knife/deps.rb +6 -6
  140. data/lib/chef/knife/edit.rb +2 -2
  141. data/lib/chef/knife/environment_compare.rb +1 -0
  142. data/lib/chef/knife/environment_from_file.rb +3 -3
  143. data/lib/chef/knife/key_create_base.rb +12 -12
  144. data/lib/chef/knife/key_edit_base.rb +15 -15
  145. data/lib/chef/knife/key_list.rb +3 -1
  146. data/lib/chef/knife/key_list_base.rb +9 -9
  147. data/lib/chef/knife/list.rb +5 -5
  148. data/lib/chef/knife/node_bulk_delete.rb +1 -0
  149. data/lib/chef/knife/node_edit.rb +1 -1
  150. data/lib/chef/knife/node_environment_set.rb +1 -2
  151. data/lib/chef/knife/node_run_list_add.rb +2 -2
  152. data/lib/chef/knife/node_run_list_remove.rb +2 -2
  153. data/lib/chef/knife/node_run_list_set.rb +2 -2
  154. data/lib/chef/knife/null.rb +1 -2
  155. data/lib/chef/knife/role_bulk_delete.rb +1 -0
  156. data/lib/chef/knife/role_env_run_list_add.rb +2 -2
  157. data/lib/chef/knife/role_env_run_list_set.rb +2 -2
  158. data/lib/chef/knife/role_run_list_add.rb +2 -2
  159. data/lib/chef/knife/role_run_list_set.rb +2 -2
  160. data/lib/chef/knife/search.rb +4 -4
  161. data/lib/chef/knife/ssh.rb +13 -9
  162. data/lib/chef/knife/supermarket_download.rb +1 -1
  163. data/lib/chef/knife/supermarket_install.rb +5 -5
  164. data/lib/chef/knife/supermarket_list.rb +1 -1
  165. data/lib/chef/knife/supermarket_share.rb +3 -2
  166. data/lib/chef/knife/supermarket_show.rb +1 -1
  167. data/lib/chef/knife/supermarket_unshare.rb +1 -0
  168. data/lib/chef/knife/tag_delete.rb +1 -1
  169. data/lib/chef/knife/xargs.rb +2 -2
  170. data/lib/chef/log/syslog.rb +2 -2
  171. data/lib/chef/log/winevt.rb +1 -2
  172. data/lib/chef/mash.rb +2 -2
  173. data/lib/chef/mixin/api_version_request_handling.rb +1 -1
  174. data/lib/chef/mixin/checksum.rb +1 -0
  175. data/lib/chef/mixin/convert_to_class_name.rb +2 -1
  176. data/lib/chef/mixin/create_path.rb +2 -2
  177. data/lib/chef/mixin/deep_merge.rb +5 -5
  178. data/lib/chef/mixin/get_source_from_package.rb +1 -0
  179. data/lib/chef/mixin/homebrew_user.rb +2 -1
  180. data/lib/chef/mixin/openssl_helper.rb +10 -6
  181. data/lib/chef/mixin/params_validate.rb +21 -13
  182. data/lib/chef/mixin/powershell_out.rb +1 -1
  183. data/lib/chef/mixin/powershell_type_coercions.rb +2 -2
  184. data/lib/chef/mixin/properties.rb +13 -10
  185. data/lib/chef/mixin/securable.rb +3 -3
  186. data/lib/chef/mixin/shell_out.rb +1 -0
  187. data/lib/chef/mixin/template.rb +2 -1
  188. data/lib/chef/mixin/user_context.rb +1 -1
  189. data/lib/chef/mixin/which.rb +1 -0
  190. data/lib/chef/mixin/windows_architecture_helper.rb +4 -4
  191. data/lib/chef/mixin/windows_env_helper.rb +2 -2
  192. data/lib/chef/monkey_patches/net_http.rb +1 -1
  193. data/lib/chef/monkey_patches/webrick-utils.rb +6 -4
  194. data/lib/chef/node.rb +24 -17
  195. data/lib/chef/node/attribute.rb +122 -113
  196. data/lib/chef/node/attribute_collections.rb +1 -1
  197. data/lib/chef/node/common_api.rb +8 -2
  198. data/lib/chef/node/immutable_collections.rb +1 -1
  199. data/lib/chef/node/mixin/immutablize_array.rb +142 -142
  200. data/lib/chef/node/mixin/immutablize_hash.rb +131 -131
  201. data/lib/chef/node_map.rb +18 -3
  202. data/lib/chef/null_logger.rb +8 -16
  203. data/lib/chef/org.rb +4 -4
  204. data/lib/chef/platform/query_helpers.rb +3 -0
  205. data/lib/chef/platform/rebooter.rb +1 -1
  206. data/lib/chef/platform/service_helpers.rb +2 -2
  207. data/lib/chef/policy_builder/expand_node_object.rb +4 -4
  208. data/lib/chef/policy_builder/policyfile.rb +4 -4
  209. data/lib/chef/powershell.rb +2 -0
  210. data/lib/chef/property.rb +7 -4
  211. data/lib/chef/provider.rb +9 -12
  212. data/lib/chef/provider/apt_preference.rb +1 -2
  213. data/lib/chef/provider/apt_repository.rb +1 -2
  214. data/lib/chef/provider/apt_update.rb +2 -3
  215. data/lib/chef/provider/cookbook_file.rb +1 -0
  216. data/lib/chef/provider/cron.rb +6 -5
  217. data/lib/chef/provider/cron/unix.rb +1 -0
  218. data/lib/chef/provider/dsc_resource.rb +2 -3
  219. data/lib/chef/provider/dsc_script.rb +2 -2
  220. data/lib/chef/provider/execute.rb +1 -1
  221. data/lib/chef/provider/file.rb +5 -3
  222. data/lib/chef/provider/git.rb +4 -3
  223. data/lib/chef/provider/group.rb +7 -3
  224. data/lib/chef/provider/group/aix.rb +2 -0
  225. data/lib/chef/provider/group/dscl.rb +6 -3
  226. data/lib/chef/provider/group/groupadd.rb +1 -0
  227. data/lib/chef/provider/group/groupmod.rb +1 -1
  228. data/lib/chef/provider/group/pw.rb +3 -3
  229. data/lib/chef/provider/group/suse.rb +2 -2
  230. data/lib/chef/provider/group/usermod.rb +1 -0
  231. data/lib/chef/provider/group/windows.rb +1 -1
  232. data/lib/chef/provider/http_request.rb +1 -1
  233. data/lib/chef/provider/ifconfig.rb +12 -6
  234. data/lib/chef/provider/ifconfig/aix.rb +1 -0
  235. data/lib/chef/provider/ifconfig/debian.rb +1 -0
  236. data/lib/chef/provider/launchd.rb +16 -13
  237. data/lib/chef/provider/lwrp_base.rb +1 -2
  238. data/lib/chef/provider/mount.rb +1 -0
  239. data/lib/chef/provider/mount/aix.rb +6 -6
  240. data/lib/chef/provider/mount/mount.rb +5 -4
  241. data/lib/chef/provider/mount/solaris.rb +4 -4
  242. data/lib/chef/provider/package.rb +9 -6
  243. data/lib/chef/provider/package/apt.rb +4 -3
  244. data/lib/chef/provider/package/bff.rb +1 -0
  245. data/lib/chef/provider/package/cab.rb +4 -2
  246. data/lib/chef/provider/package/chocolatey.rb +5 -2
  247. data/lib/chef/provider/package/dnf.rb +1 -1
  248. data/lib/chef/provider/package/dnf/dnf_helper.py +15 -1
  249. data/lib/chef/provider/package/dnf/python_helper.rb +1 -0
  250. data/lib/chef/provider/package/dpkg.rb +4 -4
  251. data/lib/chef/provider/package/freebsd/base.rb +3 -2
  252. data/lib/chef/provider/package/freebsd/pkgng.rb +2 -2
  253. data/lib/chef/provider/package/homebrew.rb +1 -1
  254. data/lib/chef/provider/package/macports.rb +1 -0
  255. data/lib/chef/provider/package/msu.rb +3 -1
  256. data/lib/chef/provider/package/openbsd.rb +1 -1
  257. data/lib/chef/provider/package/paludis.rb +1 -0
  258. data/lib/chef/provider/package/portage.rb +2 -2
  259. data/lib/chef/provider/package/powershell.rb +3 -2
  260. data/lib/chef/provider/package/rpm.rb +1 -0
  261. data/lib/chef/provider/package/rubygems.rb +5 -3
  262. data/lib/chef/provider/package/smartos.rb +1 -0
  263. data/lib/chef/provider/package/snap.rb +5 -1
  264. data/lib/chef/provider/package/solaris.rb +2 -0
  265. data/lib/chef/provider/package/windows/exe.rb +5 -5
  266. data/lib/chef/provider/package/windows/msi.rb +8 -7
  267. data/lib/chef/provider/package/windows/registry_uninstall_entry.rb +1 -0
  268. data/lib/chef/provider/package/yum.rb +5 -2
  269. data/lib/chef/provider/package/yum/python_helper.rb +2 -1
  270. data/lib/chef/provider/package/zypper.rb +1 -1
  271. data/lib/chef/provider/reboot.rb +1 -1
  272. data/lib/chef/provider/registry_key.rb +2 -2
  273. data/lib/chef/provider/remote_directory.rb +1 -1
  274. data/lib/chef/provider/remote_file.rb +10 -9
  275. data/lib/chef/provider/remote_file/fetcher.rb +3 -2
  276. data/lib/chef/provider/remote_file/local_file.rb +1 -1
  277. data/lib/chef/provider/route.rb +4 -2
  278. data/lib/chef/provider/service/aixinit.rb +1 -1
  279. data/lib/chef/provider/service/arch.rb +2 -1
  280. data/lib/chef/provider/service/debian.rb +12 -11
  281. data/lib/chef/provider/service/freebsd.rb +1 -1
  282. data/lib/chef/provider/service/openbsd.rb +7 -7
  283. data/lib/chef/provider/service/redhat.rb +2 -2
  284. data/lib/chef/provider/service/simple.rb +2 -1
  285. data/lib/chef/provider/service/systemd.rb +2 -2
  286. data/lib/chef/provider/service/upstart.rb +3 -2
  287. data/lib/chef/provider/service/windows.rb +7 -6
  288. data/lib/chef/provider/subversion.rb +4 -1
  289. data/lib/chef/provider/template.rb +1 -0
  290. data/lib/chef/provider/user.rb +5 -1
  291. data/lib/chef/provider/user/aix.rb +3 -0
  292. data/lib/chef/provider/user/dscl.rb +8 -3
  293. data/lib/chef/provider/user/linux.rb +1 -0
  294. data/lib/chef/provider/user/pw.rb +1 -0
  295. data/lib/chef/provider/user/solaris.rb +2 -0
  296. data/lib/chef/provider/user/windows.rb +2 -1
  297. data/lib/chef/provider/windows_env.rb +3 -0
  298. data/lib/chef/provider/windows_script.rb +1 -1
  299. data/lib/chef/provider/windows_task.rb +4 -3
  300. data/lib/chef/provider/yum_repository.rb +1 -2
  301. data/lib/chef/provider/zypper_repository.rb +2 -3
  302. data/lib/chef/recipe.rb +2 -1
  303. data/lib/chef/resource.rb +24 -15
  304. data/lib/chef/resource/apt_package.rb +9 -9
  305. data/lib/chef/resource/apt_preference.rb +9 -9
  306. data/lib/chef/resource/apt_repository.rb +86 -23
  307. data/lib/chef/resource/apt_update.rb +2 -2
  308. data/lib/chef/resource/archive_file.rb +13 -13
  309. data/lib/chef/resource/build_essential.rb +5 -4
  310. data/lib/chef/resource/cab_package.rb +9 -9
  311. data/lib/chef/resource/chef_gem.rb +4 -4
  312. data/lib/chef/resource/chef_handler.rb +8 -7
  313. data/lib/chef/resource/chocolatey_config.rb +3 -3
  314. data/lib/chef/resource/chocolatey_feature.rb +2 -2
  315. data/lib/chef/resource/chocolatey_package.rb +8 -8
  316. data/lib/chef/resource/chocolatey_source.rb +3 -3
  317. data/lib/chef/resource/cookbook_file.rb +4 -4
  318. data/lib/chef/resource/cron.rb +12 -12
  319. data/lib/chef/resource/cron_access.rb +2 -2
  320. data/lib/chef/resource/cron_d.rb +45 -38
  321. data/lib/chef/resource/directory.rb +2 -2
  322. data/lib/chef/resource/dmg_package.rb +26 -26
  323. data/lib/chef/resource/dnf_package.rb +20 -20
  324. data/lib/chef/resource/dpkg_package.rb +5 -5
  325. data/lib/chef/resource/dsc_resource.rb +7 -7
  326. data/lib/chef/resource/dsc_script.rb +9 -4
  327. data/lib/chef/resource/execute.rb +14 -14
  328. data/lib/chef/resource/file.rb +4 -4
  329. data/lib/chef/resource/file/verification.rb +2 -0
  330. data/lib/chef/resource/file/verification/systemd_unit.rb +1 -0
  331. data/lib/chef/resource/gem_package.rb +7 -7
  332. data/lib/chef/resource/git.rb +2 -2
  333. data/lib/chef/resource/group.rb +5 -5
  334. data/lib/chef/resource/homebrew_cask.rb +17 -17
  335. data/lib/chef/resource/homebrew_package.rb +1 -1
  336. data/lib/chef/resource/homebrew_tap.rb +18 -18
  337. data/lib/chef/resource/hostname.rb +11 -11
  338. data/lib/chef/resource/http_request.rb +1 -1
  339. data/lib/chef/resource/ifconfig.rb +26 -26
  340. data/lib/chef/resource/ips_package.rb +2 -2
  341. data/lib/chef/resource/kernel_module.rb +25 -7
  342. data/lib/chef/resource/launchd.rb +105 -105
  343. data/lib/chef/resource/link.rb +10 -10
  344. data/lib/chef/resource/locale.rb +20 -20
  345. data/lib/chef/resource/log.rb +4 -4
  346. data/lib/chef/resource/lwrp_base.rb +1 -0
  347. data/lib/chef/resource/macos_userdefaults.rb +17 -16
  348. data/lib/chef/resource/macosx_service.rb +1 -1
  349. data/lib/chef/resource/mdadm.rb +14 -14
  350. data/lib/chef/resource/mount.rb +24 -24
  351. data/lib/chef/resource/msu_package.rb +8 -8
  352. data/lib/chef/resource/ohai.rb +1 -1
  353. data/lib/chef/resource/ohai_hint.rb +7 -5
  354. data/lib/chef/resource/openssl_dhparam.rb +14 -14
  355. data/lib/chef/resource/openssl_ec_private_key.rb +16 -16
  356. data/lib/chef/resource/openssl_ec_public_key.rb +9 -9
  357. data/lib/chef/resource/openssl_rsa_private_key.rb +17 -17
  358. data/lib/chef/resource/openssl_rsa_public_key.rb +9 -9
  359. data/lib/chef/resource/openssl_x509_certificate.rb +34 -34
  360. data/lib/chef/resource/openssl_x509_crl.rb +17 -17
  361. data/lib/chef/resource/openssl_x509_request.rb +20 -20
  362. data/lib/chef/resource/osx_profile.rb +5 -5
  363. data/lib/chef/resource/package.rb +9 -9
  364. data/lib/chef/resource/paludis_package.rb +2 -2
  365. data/lib/chef/resource/powershell_package.rb +8 -8
  366. data/lib/chef/resource/powershell_package_source.rb +13 -13
  367. data/lib/chef/resource/reboot.rb +4 -4
  368. data/lib/chef/resource/registry_key.rb +5 -3
  369. data/lib/chef/resource/remote_directory.rb +20 -20
  370. data/lib/chef/resource/remote_file.rb +8 -7
  371. data/lib/chef/resource/resource_notification.rb +4 -3
  372. data/lib/chef/resource/rhsm_errata.rb +2 -2
  373. data/lib/chef/resource/rhsm_errata_level.rb +4 -4
  374. data/lib/chef/resource/rhsm_register.rb +14 -14
  375. data/lib/chef/resource/rhsm_repo.rb +3 -3
  376. data/lib/chef/resource/rhsm_subscription.rb +2 -2
  377. data/lib/chef/resource/route.rb +11 -11
  378. data/lib/chef/resource/scm.rb +18 -18
  379. data/lib/chef/resource/service.rb +27 -27
  380. data/lib/chef/resource/snap_package.rb +4 -4
  381. data/lib/chef/resource/ssh_known_hosts_entry.rb +19 -19
  382. data/lib/chef/resource/subversion.rb +10 -10
  383. data/lib/chef/resource/sudo.rb +38 -37
  384. data/lib/chef/resource/swap_file.rb +9 -9
  385. data/lib/chef/resource/sysctl.rb +20 -17
  386. data/lib/chef/resource/systemd_unit.rb +12 -12
  387. data/lib/chef/resource/template.rb +8 -8
  388. data/lib/chef/resource/timezone.rb +3 -2
  389. data/lib/chef/resource/user.rb +19 -19
  390. data/lib/chef/resource/user/dscl_user.rb +2 -2
  391. data/lib/chef/resource/user/windows_user.rb +2 -2
  392. data/lib/chef/resource/windows_ad_join.rb +17 -16
  393. data/lib/chef/resource/windows_auto_run.rb +8 -8
  394. data/lib/chef/resource/windows_certificate.rb +13 -13
  395. data/lib/chef/resource/windows_dfs_folder.rb +13 -12
  396. data/lib/chef/resource/windows_dfs_namespace.rb +18 -18
  397. data/lib/chef/resource/windows_dfs_server.rb +12 -12
  398. data/lib/chef/resource/windows_dns_record.rb +8 -8
  399. data/lib/chef/resource/windows_dns_zone.rb +6 -6
  400. data/lib/chef/resource/windows_env.rb +6 -6
  401. data/lib/chef/resource/windows_feature.rb +12 -12
  402. data/lib/chef/resource/windows_feature_dism.rb +20 -19
  403. data/lib/chef/resource/windows_feature_powershell.rb +24 -22
  404. data/lib/chef/resource/windows_firewall_rule.rb +34 -34
  405. data/lib/chef/resource/windows_font.rb +4 -4
  406. data/lib/chef/resource/windows_package.rb +5 -5
  407. data/lib/chef/resource/windows_pagefile.rb +9 -8
  408. data/lib/chef/resource/windows_path.rb +2 -2
  409. data/lib/chef/resource/windows_printer.rb +15 -15
  410. data/lib/chef/resource/windows_printer_port.rb +14 -14
  411. data/lib/chef/resource/windows_script.rb +1 -1
  412. data/lib/chef/resource/windows_service.rb +16 -16
  413. data/lib/chef/resource/windows_share.rb +27 -24
  414. data/lib/chef/resource/windows_shortcut.rb +7 -7
  415. data/lib/chef/resource/windows_task.rb +53 -51
  416. data/lib/chef/resource/windows_uac.rb +15 -15
  417. data/lib/chef/resource/windows_workgroup.rb +15 -14
  418. data/lib/chef/resource/yum_package.rb +24 -24
  419. data/lib/chef/resource/yum_repository.rb +44 -44
  420. data/lib/chef/resource/zypper_package.rb +9 -9
  421. data/lib/chef/resource/zypper_repository.rb +30 -30
  422. data/lib/chef/resource_builder.rb +1 -0
  423. data/lib/chef/resource_collection.rb +6 -4
  424. data/lib/chef/resource_collection/resource_collection_serialization.rb +4 -3
  425. data/lib/chef/resource_collection/resource_list.rb +5 -3
  426. data/lib/chef/resource_collection/resource_set.rb +12 -8
  427. data/lib/chef/resource_collection/stepable_iterator.rb +1 -0
  428. data/lib/chef/resource_definition.rb +5 -3
  429. data/lib/chef/resource_definition_list.rb +1 -1
  430. data/lib/chef/resource_inspector.rb +1 -1
  431. data/lib/chef/resource_reporter.rb +1 -1
  432. data/lib/chef/role.rb +9 -7
  433. data/lib/chef/run_context.rb +5 -5
  434. data/lib/chef/run_context/cookbook_compiler.rb +5 -1
  435. data/lib/chef/run_list.rb +5 -4
  436. data/lib/chef/run_list/run_list_expansion.rb +3 -2
  437. data/lib/chef/run_list/run_list_item.rb +5 -5
  438. data/lib/chef/run_list/versioned_recipe_list.rb +1 -1
  439. data/lib/chef/run_status.rb +1 -1
  440. data/lib/chef/runner.rb +2 -4
  441. data/lib/chef/search/query.rb +3 -3
  442. data/lib/chef/shell/ext.rb +2 -2
  443. data/lib/chef/shell/model_wrapper.rb +2 -1
  444. data/lib/chef/shell/shell_session.rb +1 -1
  445. data/lib/chef/train_transport.rb +3 -3
  446. data/lib/chef/user.rb +6 -6
  447. data/lib/chef/user_v1.rb +13 -11
  448. data/lib/chef/util/diff.rb +5 -2
  449. data/lib/chef/util/dsc/configuration_generator.rb +6 -6
  450. data/lib/chef/util/dsc/lcm_output_parser.rb +2 -2
  451. data/lib/chef/util/dsc/local_configuration_manager.rb +2 -2
  452. data/lib/chef/util/dsc/resource_store.rb +2 -2
  453. data/lib/chef/util/file_edit.rb +1 -0
  454. data/lib/chef/util/powershell/cmdlet.rb +1 -1
  455. data/lib/chef/util/threaded_job_queue.rb +1 -1
  456. data/lib/chef/util/windows/logon_session.rb +5 -5
  457. data/lib/chef/util/windows/net_use.rb +2 -2
  458. data/lib/chef/util/windows/net_user.rb +3 -2
  459. data/lib/chef/version.rb +1 -1
  460. data/lib/chef/version_class.rb +1 -1
  461. data/lib/chef/version_constraint.rb +1 -1
  462. data/lib/chef/whitelist.rb +1 -1
  463. data/lib/chef/win32/api/crypto.rb +11 -11
  464. data/lib/chef/win32/api/error.rb +4 -4
  465. data/lib/chef/win32/api/file.rb +38 -38
  466. data/lib/chef/win32/api/installer.rb +3 -3
  467. data/lib/chef/win32/api/memory.rb +4 -4
  468. data/lib/chef/win32/api/net.rb +38 -38
  469. data/lib/chef/win32/api/process.rb +2 -2
  470. data/lib/chef/win32/api/psapi.rb +1 -1
  471. data/lib/chef/win32/api/registry.rb +3 -3
  472. data/lib/chef/win32/api/security.rb +87 -87
  473. data/lib/chef/win32/api/synchronization.rb +5 -5
  474. data/lib/chef/win32/api/system.rb +7 -7
  475. data/lib/chef/win32/api/unicode.rb +3 -3
  476. data/lib/chef/win32/eventlog.rb +2 -2
  477. data/lib/chef/win32/file.rb +5 -2
  478. data/lib/chef/win32/file/info.rb +1 -0
  479. data/lib/chef/win32/file/version_info.rb +15 -14
  480. data/lib/chef/win32/memory.rb +1 -1
  481. data/lib/chef/win32/net.rb +8 -4
  482. data/lib/chef/win32/registry.rb +6 -1
  483. data/lib/chef/win32/security.rb +7 -2
  484. data/lib/chef/win32/security/acl.rb +2 -1
  485. data/lib/chef/win32/security/security_descriptor.rb +4 -2
  486. data/lib/chef/win32/security/sid.rb +11 -10
  487. data/lib/chef/win32/security/token.rb +3 -1
  488. data/lib/chef/win32/version.rb +3 -3
  489. data/spec/data/apt/chef-integration-test-1.0/debian/rules +0 -0
  490. data/spec/data/apt/chef-integration-test-1.1/debian/rules +0 -0
  491. data/spec/data/apt/chef-integration-test2-1.0/debian/rules +0 -0
  492. data/spec/functional/assets/chefinittest +0 -0
  493. data/spec/functional/assets/testchefsubsys +0 -0
  494. data/spec/functional/dsl/reboot_pending_spec.rb +2 -2
  495. data/spec/functional/event_loggers/windows_eventlog_spec.rb +6 -4
  496. data/spec/functional/file_content_management/deploy_strategies_spec.rb +21 -21
  497. data/spec/functional/knife/exec_spec.rb +1 -1
  498. data/spec/functional/knife/ssh_spec.rb +3 -3
  499. data/spec/functional/mixin/user_context_spec.rb +3 -1
  500. data/spec/functional/provider/remote_file/cache_control_data_spec.rb +0 -0
  501. data/spec/functional/rebooter_spec.rb +1 -1
  502. data/spec/functional/resource/aix_service_spec.rb +1 -1
  503. data/spec/functional/resource/aixinit_service_spec.rb +1 -1
  504. data/spec/functional/resource/chocolatey_package_spec.rb +2 -2
  505. data/spec/functional/resource/cookbook_file_spec.rb +1 -3
  506. data/spec/functional/resource/cron_spec.rb +1 -0
  507. data/spec/functional/resource/dnf_package_spec.rb +5 -5
  508. data/spec/functional/resource/dpkg_package_spec.rb +4 -4
  509. data/spec/functional/resource/dsc_resource_spec.rb +2 -1
  510. data/spec/functional/resource/dsc_script_spec.rb +7 -11
  511. data/spec/functional/resource/git_spec.rb +5 -5
  512. data/spec/functional/resource/group_spec.rb +15 -13
  513. data/spec/functional/resource/ifconfig_spec.rb +2 -2
  514. data/spec/functional/resource/link_spec.rb +2 -2
  515. data/spec/functional/resource/locale_spec.rb +4 -4
  516. data/spec/functional/resource/mount_spec.rb +3 -3
  517. data/spec/functional/resource/powershell_script_spec.rb +9 -8
  518. data/spec/functional/resource/reboot_spec.rb +1 -1
  519. data/spec/functional/resource/remote_file_spec.rb +2 -2
  520. data/spec/functional/resource/template_spec.rb +1 -1
  521. data/spec/functional/resource/user/windows_spec.rb +2 -2
  522. data/spec/functional/resource/windows_certificate_spec.rb +3 -3
  523. data/spec/functional/resource/windows_service_spec.rb +3 -3
  524. data/spec/functional/run_lock_spec.rb +3 -2
  525. data/spec/functional/util/powershell/cmdlet_spec.rb +1 -1
  526. data/spec/functional/win32/security_spec.rb +12 -7
  527. data/spec/functional/win32/service_manager_spec.rb +1 -1
  528. data/spec/integration/client/client_spec.rb +79 -81
  529. data/spec/integration/client/exit_code_spec.rb +2 -2
  530. data/spec/integration/client/ipv6_spec.rb +2 -2
  531. data/spec/integration/knife/chef_fs_data_store_spec.rb +25 -25
  532. data/spec/integration/knife/chef_repo_path_spec.rb +4 -4
  533. data/spec/integration/knife/config_get_spec.rb +1 -1
  534. data/spec/integration/knife/config_list_profiles_spec.rb +2 -1
  535. data/spec/integration/knife/cookbook_api_ipv6_spec.rb +1 -1
  536. data/spec/integration/knife/cookbook_download_spec.rb +1 -1
  537. data/spec/integration/knife/diff_spec.rb +2 -2
  538. data/spec/integration/knife/download_spec.rb +1 -1
  539. data/spec/integration/knife/redirection_spec.rb +1 -1
  540. data/spec/integration/knife/upload_spec.rb +2 -2
  541. data/spec/integration/recipes/accumulator_spec.rb +4 -4
  542. data/spec/integration/recipes/lwrp_inline_resources_spec.rb +5 -5
  543. data/spec/integration/recipes/lwrp_spec.rb +2 -2
  544. data/spec/integration/recipes/notifies_spec.rb +20 -20
  545. data/spec/integration/recipes/notifying_block_spec.rb +4 -4
  546. data/spec/integration/recipes/provider_choice.rb +1 -2
  547. data/spec/integration/recipes/recipe_dsl_spec.rb +9 -9
  548. data/spec/integration/recipes/remote_directory.rb +2 -2
  549. data/spec/integration/solo/solo_spec.rb +20 -20
  550. data/spec/spec_helper.rb +9 -11
  551. data/spec/stress/win32/security_spec.rb +1 -1
  552. data/spec/support/lib/chef/resource/zen_follower.rb +1 -1
  553. data/spec/support/lib/chef/resource/zen_master.rb +1 -1
  554. data/spec/support/mock/platform.rb +2 -2
  555. data/spec/support/platform_helpers.rb +14 -0
  556. data/spec/support/platforms/win32/spec_service.rb +6 -10
  557. data/spec/support/shared/functional/execute_resource.rb +4 -4
  558. data/spec/support/shared/functional/file_resource.rb +1 -3
  559. data/spec/support/shared/functional/http.rb +15 -39
  560. data/spec/support/shared/functional/securable_resource.rb +4 -8
  561. data/spec/support/shared/functional/win32_service.rb +1 -1
  562. data/spec/support/shared/functional/windows_script.rb +2 -1
  563. data/spec/support/shared/integration/app_server_support.rb +3 -4
  564. data/spec/support/shared/integration/integration_helper.rb +1 -0
  565. data/spec/support/shared/integration/knife_support.rb +5 -5
  566. data/spec/support/shared/unit/application_dot_d.rb +10 -4
  567. data/spec/support/shared/unit/file_system_support.rb +3 -2
  568. data/spec/support/shared/unit/platform_introspector.rb +12 -12
  569. data/spec/support/shared/unit/provider/file.rb +1 -1
  570. data/spec/support/shared/unit/script_resource.rb +1 -1
  571. data/spec/support/shared/unit/windows_script_resource.rb +1 -1
  572. data/spec/tiny_server.rb +1 -1
  573. data/spec/unit/api_client/registration_spec.rb +1 -1
  574. data/spec/unit/api_client_spec.rb +5 -5
  575. data/spec/unit/api_client_v1_spec.rb +6 -6
  576. data/spec/unit/application/client_spec.rb +8 -8
  577. data/spec/unit/application/exit_code_spec.rb +3 -2
  578. data/spec/unit/application/knife_spec.rb +1 -2
  579. data/spec/unit/chef_fs/config_spec.rb +3 -3
  580. data/spec/unit/chef_fs/file_system/repository/directory_spec.rb +1 -1
  581. data/spec/unit/chef_fs/parallelizer.rb +1 -1
  582. data/spec/unit/client_spec.rb +1 -1
  583. data/spec/unit/config_fetcher_spec.rb +1 -1
  584. data/spec/unit/cookbook/metadata_spec.rb +4 -4
  585. data/spec/unit/cookbook/synchronizer_spec.rb +4 -4
  586. data/spec/unit/cookbook_loader_spec.rb +10 -10
  587. data/spec/unit/cookbook_site_streaming_uploader_spec.rb +1 -2
  588. data/spec/unit/cookbook_version_file_specificity_spec.rb +9 -9
  589. data/spec/unit/data_bag_item_spec.rb +8 -8
  590. data/spec/unit/data_bag_spec.rb +1 -1
  591. data/spec/unit/data_collector_spec.rb +82 -0
  592. data/spec/unit/decorator_spec.rb +2 -2
  593. data/spec/unit/deprecated_spec.rb +2 -2
  594. data/spec/unit/dsl/data_query_spec.rb +3 -2
  595. data/spec/unit/dsl/declare_resource_spec.rb +1 -1
  596. data/spec/unit/dsl/platform_introspection_spec.rb +2 -2
  597. data/spec/unit/encrypted_data_bag_item/check_encrypted_spec.rb +2 -1
  598. data/spec/unit/encrypted_data_bag_item_spec.rb +2 -1
  599. data/spec/unit/environment_spec.rb +9 -9
  600. data/spec/unit/event_dispatch/dsl_spec.rb +1 -1
  601. data/spec/unit/file_content_management/deploy/mv_unix_spec.rb +3 -3
  602. data/spec/unit/file_content_management/deploy/mv_windows_spec.rb +2 -2
  603. data/spec/unit/formatters/error_inspectors/resource_failure_inspector_spec.rb +3 -3
  604. data/spec/unit/guard_interpreter/resource_guard_interpreter_spec.rb +1 -1
  605. data/spec/unit/http/authenticator_spec.rb +3 -2
  606. data/spec/unit/http/json_input_spec.rb +1 -1
  607. data/spec/unit/key_spec.rb +7 -7
  608. data/spec/unit/knife/bootstrap/train_connector_spec.rb +13 -8
  609. data/spec/unit/knife/bootstrap_spec.rb +22 -16
  610. data/spec/unit/knife/client_bulk_delete_spec.rb +4 -4
  611. data/spec/unit/knife/configure_client_spec.rb +1 -1
  612. data/spec/unit/knife/configure_spec.rb +1 -1
  613. data/spec/unit/knife/cookbook_bulk_delete_spec.rb +1 -1
  614. data/spec/unit/knife/cookbook_delete_spec.rb +2 -2
  615. data/spec/unit/knife/cookbook_download_spec.rb +2 -2
  616. data/spec/unit/knife/cookbook_metadata_spec.rb +4 -4
  617. data/spec/unit/knife/cookbook_upload_spec.rb +4 -2
  618. data/spec/unit/knife/core/gem_glob_loader_spec.rb +4 -4
  619. data/spec/unit/knife/core/hashed_command_loader_spec.rb +4 -2
  620. data/spec/unit/knife/core/node_editor_spec.rb +8 -8
  621. data/spec/unit/knife/core/windows_bootstrap_context_spec.rb +1 -2
  622. data/spec/unit/knife/data_bag_from_file_spec.rb +2 -1
  623. data/spec/unit/knife/data_bag_show_spec.rb +2 -1
  624. data/spec/unit/knife/key_create_spec.rb +1 -1
  625. data/spec/unit/knife/key_delete_spec.rb +3 -3
  626. data/spec/unit/knife/key_edit_spec.rb +4 -4
  627. data/spec/unit/knife/key_list_spec.rb +1 -1
  628. data/spec/unit/knife/key_show_spec.rb +3 -3
  629. data/spec/unit/knife/node_bulk_delete_spec.rb +3 -3
  630. data/spec/unit/knife/node_delete_spec.rb +2 -2
  631. data/spec/unit/knife/node_edit_spec.rb +1 -1
  632. data/spec/unit/knife/node_environment_set_spec.rb +6 -1
  633. data/spec/unit/knife/node_from_file_spec.rb +1 -1
  634. data/spec/unit/knife/node_policy_set_spec.rb +1 -1
  635. data/spec/unit/knife/node_run_list_add_spec.rb +1 -1
  636. data/spec/unit/knife/node_run_list_remove_spec.rb +1 -1
  637. data/spec/unit/knife/node_run_list_set_spec.rb +1 -1
  638. data/spec/unit/knife/node_show_spec.rb +1 -1
  639. data/spec/unit/knife/raw_spec.rb +2 -2
  640. data/spec/unit/knife/role_bulk_delete_spec.rb +2 -2
  641. data/spec/unit/knife/role_create_spec.rb +1 -1
  642. data/spec/unit/knife/role_delete_spec.rb +1 -1
  643. data/spec/unit/knife/role_edit_spec.rb +1 -1
  644. data/spec/unit/knife/role_env_run_list_add_spec.rb +1 -1
  645. data/spec/unit/knife/role_env_run_list_clear_spec.rb +1 -1
  646. data/spec/unit/knife/role_env_run_list_remove_spec.rb +1 -1
  647. data/spec/unit/knife/role_env_run_list_replace_spec.rb +1 -1
  648. data/spec/unit/knife/role_env_run_list_set_spec.rb +1 -1
  649. data/spec/unit/knife/role_from_file_spec.rb +1 -1
  650. data/spec/unit/knife/role_run_list_add_spec.rb +1 -1
  651. data/spec/unit/knife/role_run_list_clear_spec.rb +1 -1
  652. data/spec/unit/knife/role_run_list_remove_spec.rb +1 -1
  653. data/spec/unit/knife/role_run_list_replace_spec.rb +1 -1
  654. data/spec/unit/knife/role_run_list_set_spec.rb +1 -1
  655. data/spec/unit/knife/status_spec.rb +2 -1
  656. data/spec/unit/knife/supermarket_install_spec.rb +5 -4
  657. data/spec/unit/knife/supermarket_share_spec.rb +1 -1
  658. data/spec/unit/knife_spec.rb +35 -34
  659. data/spec/unit/lwrp_spec.rb +19 -19
  660. data/spec/unit/mixin/homebrew_user_spec.rb +1 -1
  661. data/spec/unit/mixin/params_validate_spec.rb +10 -10
  662. data/spec/unit/mixin/properties_spec.rb +4 -4
  663. data/spec/unit/mixin/shell_out_spec.rb +3 -3
  664. data/spec/unit/mixin/template_spec.rb +4 -8
  665. data/spec/unit/mixin/unformatter_spec.rb +1 -2
  666. data/spec/unit/mixin/user_context_spec.rb +1 -2
  667. data/spec/unit/mixin/which.rb +2 -0
  668. data/spec/unit/mixin/windows_architecture_helper_spec.rb +3 -3
  669. data/spec/unit/node/attribute_spec.rb +12 -12
  670. data/spec/unit/node/immutable_collections_spec.rb +50 -50
  671. data/spec/unit/node/vivid_mash_spec.rb +4 -4
  672. data/spec/unit/node_spec.rb +12 -12
  673. data/spec/unit/org_spec.rb +3 -3
  674. data/spec/unit/policy_builder/policyfile_spec.rb +2 -2
  675. data/spec/unit/property/state_spec.rb +26 -25
  676. data/spec/unit/property/validation_spec.rb +14 -13
  677. data/spec/unit/property_spec.rb +11 -10
  678. data/spec/unit/provider/apt_update_spec.rb +6 -6
  679. data/spec/unit/provider/cron_spec.rb +1 -1
  680. data/spec/unit/provider/dsc_resource_spec.rb +6 -3
  681. data/spec/unit/provider/dsc_script_spec.rb +1 -1
  682. data/spec/unit/provider/git_spec.rb +38 -38
  683. data/spec/unit/provider/group/dscl_spec.rb +1 -1
  684. data/spec/unit/provider/group/groupadd_spec.rb +1 -1
  685. data/spec/unit/provider/group_spec.rb +2 -3
  686. data/spec/unit/provider/launchd_spec.rb +16 -8
  687. data/spec/unit/provider/link_spec.rb +22 -11
  688. data/spec/unit/provider/mount/mount_spec.rb +31 -31
  689. data/spec/unit/provider/mount/solaris_spec.rb +11 -11
  690. data/spec/unit/provider/ohai_spec.rb +1 -1
  691. data/spec/unit/provider/osx_profile_spec.rb +5 -7
  692. data/spec/unit/provider/package/apt_spec.rb +5 -5
  693. data/spec/unit/provider/package/bff_spec.rb +1 -1
  694. data/spec/unit/provider/package/cab_spec.rb +1 -1
  695. data/spec/unit/provider/package/chocolatey_spec.rb +8 -8
  696. data/spec/unit/provider/package/msu_spec.rb +1 -1
  697. data/spec/unit/provider/package/openbsd_spec.rb +14 -10
  698. data/spec/unit/provider/package/powershell_spec.rb +1 -1
  699. data/spec/unit/provider/package/smartos_spec.rb +2 -2
  700. data/spec/unit/provider/package/windows/exe_spec.rb +9 -9
  701. data/spec/unit/provider/package/windows/msi_spec.rb +7 -7
  702. data/spec/unit/provider/package/windows_spec.rb +2 -1
  703. data/spec/unit/provider/package/yum/yum_cache_spec.rb +1 -1
  704. data/spec/unit/provider/package/zypper_spec.rb +13 -4
  705. data/spec/unit/provider/powershell_script_spec.rb +12 -12
  706. data/spec/unit/provider/registry_key_spec.rb +1 -1
  707. data/spec/unit/provider/remote_directory_spec.rb +6 -6
  708. data/spec/unit/provider/route_spec.rb +11 -11
  709. data/spec/unit/provider/service/arch_service_spec.rb +11 -11
  710. data/spec/unit/provider/service/debian_service_spec.rb +2 -1
  711. data/spec/unit/provider/service/freebsd_service_spec.rb +23 -19
  712. data/spec/unit/provider/service/gentoo_service_spec.rb +2 -2
  713. data/spec/unit/provider/service/init_service_spec.rb +9 -9
  714. data/spec/unit/provider/service/invokercd_service_spec.rb +9 -9
  715. data/spec/unit/provider/service/macosx_spec.rb +1 -1
  716. data/spec/unit/provider/service/openbsd_service_spec.rb +15 -11
  717. data/spec/unit/provider/service/simple_service_spec.rb +5 -5
  718. data/spec/unit/provider/service/upstart_service_spec.rb +14 -14
  719. data/spec/unit/provider/service/windows_spec.rb +53 -35
  720. data/spec/unit/provider/subversion_spec.rb +8 -4
  721. data/spec/unit/provider/systemd_unit_spec.rb +146 -146
  722. data/spec/unit/provider/template/content_spec.rb +28 -28
  723. data/spec/unit/provider/windows_task_spec.rb +7 -2
  724. data/spec/unit/provider_resolver_spec.rb +2 -2
  725. data/spec/unit/provider_spec.rb +2 -4
  726. data/spec/unit/recipe_spec.rb +3 -3
  727. data/spec/unit/resource/batch_spec.rb +1 -1
  728. data/spec/unit/resource/cab_package_spec.rb +1 -1
  729. data/spec/unit/resource/chef_gem_spec.rb +1 -1
  730. data/spec/unit/resource/directory_spec.rb +1 -1
  731. data/spec/unit/resource/dnf_package_spec.rb +1 -1
  732. data/spec/unit/resource/dsc_resource_spec.rb +1 -1
  733. data/spec/unit/resource/file/verification_spec.rb +1 -2
  734. data/spec/unit/resource/file_spec.rb +1 -1
  735. data/spec/unit/resource/group_spec.rb +1 -1
  736. data/spec/unit/resource/kernel_module_spec.rb +1 -0
  737. data/spec/unit/resource/link_spec.rb +1 -1
  738. data/spec/unit/resource/locale_spec.rb +12 -12
  739. data/spec/unit/resource/osx_profile_spec.rb +2 -1
  740. data/spec/unit/resource/powershell_script_spec.rb +12 -7
  741. data/spec/unit/resource/registry_key_spec.rb +3 -3
  742. data/spec/unit/resource/rhsm_repo_spec.rb +6 -0
  743. data/spec/unit/resource/service_spec.rb +1 -1
  744. data/spec/unit/resource/template_spec.rb +2 -2
  745. data/spec/unit/resource/windows_env_spec.rb +1 -1
  746. data/spec/unit/resource/windows_service_spec.rb +7 -7
  747. data/spec/unit/resource/windows_task_spec.rb +2 -2
  748. data/spec/unit/resource/windows_uac_spec.rb +2 -2
  749. data/spec/unit/resource/yum_package_spec.rb +1 -1
  750. data/spec/unit/resource_collection/resource_list_spec.rb +1 -1
  751. data/spec/unit/resource_collection/resource_set_spec.rb +7 -7
  752. data/spec/unit/resource_collection/stepable_iterator_spec.rb +2 -2
  753. data/spec/unit/resource_collection_spec.rb +4 -4
  754. data/spec/unit/resource_definition_spec.rb +2 -2
  755. data/spec/unit/resource_inspector_spec.rb +1 -1
  756. data/spec/unit/resource_reporter_spec.rb +6 -4
  757. data/spec/unit/resource_spec.rb +21 -21
  758. data/spec/unit/role_spec.rb +2 -2
  759. data/spec/unit/run_context/cookbook_compiler_spec.rb +24 -24
  760. data/spec/unit/run_list/run_list_expansion_spec.rb +9 -6
  761. data/spec/unit/run_list_spec.rb +1 -1
  762. data/spec/unit/runner_spec.rb +3 -3
  763. data/spec/unit/search/query_spec.rb +3 -2
  764. data/spec/unit/shell/model_wrapper_spec.rb +1 -1
  765. data/spec/unit/shell/shell_session_spec.rb +8 -11
  766. data/spec/unit/shell_spec.rb +1 -2
  767. data/spec/unit/user_spec.rb +4 -4
  768. data/spec/unit/user_v1_spec.rb +3 -3
  769. data/spec/unit/util/backup_spec.rb +1 -1
  770. data/spec/unit/util/editor_spec.rb +1 -1
  771. data/spec/unit/util/powershell/ps_credential_spec.rb +3 -2
  772. data/spec/unit/util/threaded_job_queue_spec.rb +2 -2
  773. data/spec/unit/version_class_spec.rb +4 -4
  774. data/spec/unit/win32/registry_spec.rb +5 -5
  775. data/spec/unit/win32/security_spec.rb +2 -1
  776. data/tasks/bin/run_external_test +1 -1
  777. data/tasks/docs.rb +78 -61
  778. data/tasks/rspec.rb +1 -1
  779. metadata +5 -33
  780. data/lib/.DS_Store +0 -0
  781. data/lib/chef/.DS_Store +0 -0
  782. data/lib/chef/dsl/.DS_Store +0 -0
  783. data/lib/chef/knife/.DS_Store +0 -0
  784. data/lib/chef/mixin/.DS_Store +0 -0
  785. data/lib/chef/nil_argument.rb +0 -3
  786. data/lib/chef/provider/.DS_Store +0 -0
  787. data/lib/chef/provider/package/.DS_Store +0 -0
  788. data/lib/chef/provider/package/freebsd/.DS_Store +0 -0
  789. data/lib/chef/resource/.DS_Store +0 -0
  790. data/lib/chef/resource/file/.DS_Store +0 -0
  791. data/spec/.DS_Store +0 -0
  792. data/spec/data/.DS_Store +0 -0
  793. data/spec/data/cookbooks/.DS_Store +0 -0
  794. data/spec/data/cookbooks/java/.DS_Store +0 -0
  795. data/spec/data/cookbooks/java/files/.DS_Store +0 -0
  796. data/spec/data/mac_users/.DS_Store +0 -0
  797. data/spec/data/nodes/Tim.local.json +0 -3
  798. data/spec/data/nodes/Tims-MBP.local.json +0 -3
  799. data/spec/data/run_context/.DS_Store +0 -0
  800. data/spec/data/run_context/cookbooks/.DS_Store +0 -0
  801. data/spec/functional/.DS_Store +0 -0
  802. data/spec/functional/resource/.DS_Store +0 -0
  803. data/spec/functional/util/.DS_Store +0 -0
  804. data/spec/integration/.DS_Store +0 -0
  805. data/spec/stress/.DS_Store +0 -0
  806. data/spec/support/.DS_Store +0 -0
  807. data/spec/unit/.DS_Store +0 -0
  808. data/tasks/.DS_Store +0 -0
@@ -24,7 +24,7 @@ describe Chef::Knife::NodeRunListRemove do
24
24
  @knife = Chef::Knife::NodeRunListRemove.new
25
25
  @knife.config[:print_after] = nil
26
26
  @knife.name_args = [ "adam", "role[monkey]" ]
27
- @node = Chef::Node.new()
27
+ @node = Chef::Node.new
28
28
  @node.name("knifetest-node")
29
29
  @node.run_list << "role[monkey]"
30
30
  allow(@node).to receive(:save).and_return(true)
@@ -25,7 +25,7 @@ describe Chef::Knife::NodeRunListSet do
25
25
  @knife.config = {}
26
26
  @knife.name_args = [ "adam", "role[monkey]" ]
27
27
  allow(@knife).to receive(:output).and_return(true)
28
- @node = Chef::Node.new()
28
+ @node = Chef::Node.new
29
29
  allow(@node).to receive(:save).and_return(true)
30
30
  allow(Chef::Node).to receive(:load).and_return(@node)
31
31
  end
@@ -21,7 +21,7 @@ require "spec_helper"
21
21
  describe Chef::Knife::NodeShow do
22
22
 
23
23
  let(:node) do
24
- node = Chef::Node.new()
24
+ node = Chef::Node.new
25
25
  node.name("adam")
26
26
  node.run_list = ["role[base]"]
27
27
  node
@@ -35,8 +35,8 @@ describe Chef::Knife::Raw do
35
35
  it "should set the x-ops-request-source header when --proxy-auth is set" do
36
36
  knife.config[:proxy_auth] = true
37
37
  expect(rest).to receive(:request).with(:GET, "/nodes",
38
- { "Content-Type" => "application/json",
39
- "x-ops-request-source" => "web" }, false)
38
+ { "Content-Type" => "application/json",
39
+ "x-ops-request-source" => "web" }, false)
40
40
  knife.run
41
41
  end
42
42
  end
@@ -29,9 +29,9 @@ describe Chef::Knife::RoleBulkDelete do
29
29
  @stdout = StringIO.new
30
30
  allow(@knife.ui).to receive(:stdout).and_return(@stdout)
31
31
  allow(@knife.ui).to receive(:confirm).and_return(true)
32
- @roles = Hash.new
32
+ @roles = {}
33
33
  %w{dev staging production}.each do |role_name|
34
- role = Chef::Role.new()
34
+ role = Chef::Role.new
35
35
  role.name(role_name)
36
36
  allow(role).to receive(:destroy).and_return(true)
37
37
  @roles[role_name] = role
@@ -27,7 +27,7 @@ describe Chef::Knife::RoleCreate do
27
27
  }
28
28
  @knife.name_args = [ "adam" ]
29
29
  allow(@knife).to receive(:output).and_return(true)
30
- @role = Chef::Role.new()
30
+ @role = Chef::Role.new
31
31
  allow(@role).to receive(:save)
32
32
  allow(Chef::Role).to receive(:new).and_return(@role)
33
33
  allow(@knife).to receive(:edit_data).and_return(@role)
@@ -28,7 +28,7 @@ describe Chef::Knife::RoleDelete do
28
28
  @knife.name_args = [ "adam" ]
29
29
  allow(@knife).to receive(:output).and_return(true)
30
30
  allow(@knife).to receive(:confirm).and_return(true)
31
- @role = Chef::Role.new()
31
+ @role = Chef::Role.new
32
32
  allow(@role).to receive(:destroy).and_return(true)
33
33
  allow(Chef::Role).to receive(:load).and_return(@role)
34
34
  @stdout = StringIO.new
@@ -25,7 +25,7 @@ describe Chef::Knife::RoleEdit do
25
25
  @knife.config[:print_after] = nil
26
26
  @knife.name_args = [ "adam" ]
27
27
  allow(@knife.ui).to receive(:output).and_return(true)
28
- @role = Chef::Role.new()
28
+ @role = Chef::Role.new
29
29
  allow(@role).to receive(:save)
30
30
  allow(Chef::Role).to receive(:load).and_return(@role)
31
31
  allow(@knife.ui).to receive(:edit_data).and_return(@role)
@@ -29,7 +29,7 @@ describe Chef::Knife::RoleEnvRunListAdd do
29
29
  }
30
30
  @knife.name_args = [ "will", "QA", "role[monkey]" ]
31
31
  allow(@knife).to receive(:output).and_return(true)
32
- @role = Chef::Role.new()
32
+ @role = Chef::Role.new
33
33
  allow(@role).to receive(:save).and_return(true)
34
34
  allow(Chef::Role).to receive(:load).and_return(@role)
35
35
  end
@@ -33,7 +33,7 @@ describe Chef::Knife::RoleEnvRunListClear do
33
33
  @knife.name_args = %w{will QA}
34
34
  allow(@knife).to receive(:output).and_return(true)
35
35
 
36
- @role = Chef::Role.new()
36
+ @role = Chef::Role.new
37
37
  @role.name("will")
38
38
  allow(@role).to receive(:save).and_return(true)
39
39
 
@@ -33,7 +33,7 @@ describe Chef::Knife::RoleEnvRunListRemove do
33
33
  @knife.name_args = [ "will", "QA", "role[monkey]" ]
34
34
  allow(@knife).to receive(:output).and_return(true)
35
35
 
36
- @role = Chef::Role.new()
36
+ @role = Chef::Role.new
37
37
  @role.name("will")
38
38
  allow(@role).to receive(:save).and_return(true)
39
39
 
@@ -33,7 +33,7 @@ describe Chef::Knife::RoleEnvRunListReplace do
33
33
  @knife.name_args = [ "will", "QA", "role[dude]", "role[person]" ]
34
34
  allow(@knife).to receive(:output).and_return(true)
35
35
 
36
- @role = Chef::Role.new()
36
+ @role = Chef::Role.new
37
37
  @role.name("will")
38
38
  allow(@role).to receive(:save).and_return(true)
39
39
 
@@ -33,7 +33,7 @@ describe Chef::Knife::RoleEnvRunListSet do
33
33
  @knife.name_args = [ "will", "QA", "role[owen]", "role[mauntel]" ]
34
34
  allow(@knife).to receive(:output).and_return(true)
35
35
 
36
- @role = Chef::Role.new()
36
+ @role = Chef::Role.new
37
37
  @role.name("will")
38
38
  allow(@role).to receive(:save).and_return(true)
39
39
 
@@ -30,7 +30,7 @@ describe Chef::Knife::RoleFromFile do
30
30
  @knife.name_args = [ "adam.rb" ]
31
31
  allow(@knife).to receive(:output).and_return(true)
32
32
  allow(@knife).to receive(:confirm).and_return(true)
33
- @role = Chef::Role.new()
33
+ @role = Chef::Role.new
34
34
  allow(@role).to receive(:save)
35
35
  allow(@knife.loader).to receive(:load_from).and_return(@role)
36
36
  @stdout = StringIO.new
@@ -29,7 +29,7 @@ describe Chef::Knife::RoleRunListAdd do
29
29
  }
30
30
  @knife.name_args = [ "will", "role[monkey]" ]
31
31
  allow(@knife).to receive(:output).and_return(true)
32
- @role = Chef::Role.new()
32
+ @role = Chef::Role.new
33
33
  allow(@role).to receive(:save).and_return(true)
34
34
  allow(Chef::Role).to receive(:load).and_return(@role)
35
35
  end
@@ -32,7 +32,7 @@ describe Chef::Knife::RoleRunListClear do
32
32
  @knife.name_args = [ "will" ]
33
33
  allow(@knife).to receive(:output).and_return(true)
34
34
 
35
- @role = Chef::Role.new()
35
+ @role = Chef::Role.new
36
36
  @role.name("will")
37
37
  allow(@role).to receive(:save).and_return(true)
38
38
 
@@ -32,7 +32,7 @@ describe Chef::Knife::RoleRunListRemove do
32
32
  @knife.name_args = [ "will", "role[monkey]" ]
33
33
  allow(@knife).to receive(:output).and_return(true)
34
34
 
35
- @role = Chef::Role.new()
35
+ @role = Chef::Role.new
36
36
  @role.name("will")
37
37
  allow(@role).to receive(:save).and_return(true)
38
38
 
@@ -32,7 +32,7 @@ describe Chef::Knife::RoleRunListReplace do
32
32
  @knife.name_args = [ "will", "role[dude]", "role[person]" ]
33
33
  allow(@knife).to receive(:output).and_return(true)
34
34
 
35
- @role = Chef::Role.new()
35
+ @role = Chef::Role.new
36
36
  @role.name("will")
37
37
  allow(@role).to receive(:save).and_return(true)
38
38
 
@@ -32,7 +32,7 @@ describe Chef::Knife::RoleRunListSet do
32
32
  @knife.name_args = [ "will", "role[owen]", "role[mauntel]" ]
33
33
  allow(@knife).to receive(:output).and_return(true)
34
34
 
35
- @role = Chef::Role.new()
35
+ @role = Chef::Role.new
36
36
  @role.name("will")
37
37
  allow(@role).to receive(:save).and_return(true)
38
38
 
@@ -40,7 +40,8 @@ describe Chef::Knife::Status do
40
40
  { filter_result:
41
41
  { name: ["name"], ipaddress: ["ipaddress"], ohai_time: ["ohai_time"],
42
42
  ec2: ["ec2"], run_list: ["run_list"], platform: ["platform"],
43
- platform_version: ["platform_version"], chef_environment: ["chef_environment"] } } end
43
+ platform_version: ["platform_version"], chef_environment: ["chef_environment"] } }
44
+ end
44
45
 
45
46
  it "should default to searching for everything" do
46
47
  expect(@query).to receive(:search).with(:node, "*:*", opts)
@@ -23,12 +23,13 @@ describe Chef::Knife::SupermarketInstall do
23
23
  let(:knife) { Chef::Knife::SupermarketInstall.new }
24
24
  let(:stdout) { StringIO.new }
25
25
  let(:stderr) { StringIO.new }
26
- let(:downloader) { Hash.new }
26
+ let(:downloader) { {} }
27
27
  let(:archive) { double(Mixlib::Archive, extract: true) }
28
28
  let(:repo) do
29
29
  double(sanity_check: true, reset_to_default_state: true,
30
30
  prepare_to_import: true, finalize_updates_to: true,
31
- merge_updates_from: true) end
31
+ merge_updates_from: true)
32
+ end
32
33
  let(:install_path) do
33
34
  if Chef::Platform.windows?
34
35
  "C:/tmp/chef"
@@ -81,7 +82,7 @@ describe Chef::Knife::SupermarketInstall do
81
82
  end
82
83
 
83
84
  it "raises an error if the second argument is not a version" do
84
- knife.name_args = ["getting-started", "1pass"]
85
+ knife.name_args = %w{getting-started 1pass}
85
86
  expect(knife.ui).to receive(:error).with("Installing multiple cookbooks at once is not supported.")
86
87
  expect { knife.run }.to raise_error(SystemExit)
87
88
  end
@@ -93,7 +94,7 @@ describe Chef::Knife::SupermarketInstall do
93
94
  end
94
95
 
95
96
  it "raises an error if the second argument is a one-digit version" do
96
- knife.name_args = ["getting-started", "1"]
97
+ knife.name_args = %w{getting-started 1}
97
98
  expect(knife.ui).to receive(:error).with("Installing multiple cookbooks at once is not supported.")
98
99
  expect { knife.run }.to raise_error(SystemExit)
99
100
  end
@@ -175,7 +175,7 @@ describe Chef::Knife::SupermarketShare do
175
175
  response_text = Chef::JSONCompat.to_json({ uri: "https://supermarket.chef.io/cookbooks/cookbook_name" })
176
176
  allow(@upload_response).to receive(:body).and_return(response_text)
177
177
  allow(@upload_response).to receive(:code).and_return(201)
178
- expect(Chef::CookbookSiteStreamingUploader).to receive(:post).with(/supermarket\.chef\.io/, anything(), anything(), anything())
178
+ expect(Chef::CookbookSiteStreamingUploader).to receive(:post).with(/supermarket\.chef\.io/, anything, anything, anything)
179
179
  @knife.run
180
180
  end
181
181
 
@@ -35,9 +35,9 @@ describe Chef::Knife do
35
35
 
36
36
  let(:config_loader) do
37
37
  instance_double("WorkstationConfigLoader",
38
- load: nil, no_config_found?: false,
39
- config_location: config_location,
40
- chef_config_dir: "/etc/chef")
38
+ load: nil, no_config_found?: false,
39
+ config_location: config_location,
40
+ chef_config_dir: "/etc/chef")
41
41
  end
42
42
 
43
43
  before(:each) do
@@ -55,7 +55,7 @@ describe Chef::Knife do
55
55
  allow(knife.ui).to receive(:print)
56
56
  allow(Chef::Log).to receive(:init)
57
57
  allow(Chef::Log).to receive(:level)
58
- [:debug, :info, :warn, :error, :crit].each do |level_sym|
58
+ %i{debug info warn error crit}.each do |level_sym|
59
59
  allow(Chef::Log).to receive(level_sym)
60
60
  end
61
61
  allow(Chef::Knife).to receive(:puts)
@@ -166,7 +166,8 @@ describe Chef::Knife do
166
166
  "X-Chef-Version" => Chef::VERSION,
167
167
  "Host" => "api.opscode.piab",
168
168
  "X-REMOTE-REQUEST-ID" => request_id,
169
- } end
169
+ }
170
+ end
170
171
 
171
172
  let(:request_id) { "1234" }
172
173
 
@@ -205,7 +206,7 @@ describe Chef::Knife do
205
206
  KnifeSpecs.send :remove_const, :TestYourself
206
207
  end
207
208
  Kernel.load(File.join(CHEF_SPEC_DATA, "knife_subcommand", "test_yourself.rb"))
208
- Chef::Knife.subcommands.each { |name, klass| Chef::Knife.subcommands.delete(name) unless klass.kind_of?(Class) }
209
+ Chef::Knife.subcommands.each { |name, klass| Chef::Knife.subcommands.delete(name) unless klass.is_a?(Class) }
209
210
  end
210
211
 
211
212
  it "confirms that the headers include X-Remote-Request-Id" do
@@ -220,7 +221,7 @@ describe Chef::Knife do
220
221
  KnifeSpecs.send :remove_const, :TestYourself
221
222
  end
222
223
  Kernel.load(File.join(CHEF_SPEC_DATA, "knife_subcommand", "test_yourself.rb"))
223
- Chef::Knife.subcommands.each { |name, klass| Chef::Knife.subcommands.delete(name) unless klass.kind_of?(Class) }
224
+ Chef::Knife.subcommands.each { |name, klass| Chef::Knife.subcommands.delete(name) unless klass.is_a?(Class) }
224
225
  end
225
226
 
226
227
  it "merges the global knife CLI options" do
@@ -285,8 +286,8 @@ describe Chef::Knife do
285
286
 
286
287
  before do
287
288
  KnifeSpecs::TestYourself.option(:opt_with_default,
288
- short: "-D VALUE",
289
- default: "default-value")
289
+ short: "-D VALUE",
290
+ default: "default-value")
290
291
  end
291
292
  # This supports a use case used by plugins, where the pattern
292
293
  # seems to follow:
@@ -308,8 +309,8 @@ describe Chef::Knife do
308
309
  describe "merging configuration options" do
309
310
  before do
310
311
  KnifeSpecs::TestYourself.option(:opt_with_default,
311
- short: "-D VALUE",
312
- default: "default-value")
312
+ short: "-D VALUE",
313
+ default: "default-value")
313
314
  end
314
315
 
315
316
  it "sets the default log_location to STDERR for Chef::Log warnings" do
@@ -468,8 +469,8 @@ describe Chef::Knife do
468
469
  allow(knife).to receive(:run).and_raise(Net::HTTPClientException.new("403 Forbidden", response))
469
470
  allow(knife).to receive(:username).and_return("sadpanda")
470
471
  knife.run_with_pretty_exceptions
471
- expect(stderr.string).to match(%r{ERROR: You authenticated successfully to http.+ as sadpanda but you are not authorized for this action})
472
- expect(stderr.string).to match(%r{Response: y u no administrator})
472
+ expect(stderr.string).to match(/ERROR: You authenticated successfully to http.+ as sadpanda but you are not authorized for this action/)
473
+ expect(stderr.string).to match(/Response: y u no administrator/)
473
474
  end
474
475
 
475
476
  context "when proxy servers are set" do
@@ -488,9 +489,9 @@ describe Chef::Knife do
488
489
  allow(knife).to receive(:run).and_raise(Net::HTTPClientException.new("403 Forbidden", response))
489
490
  allow(knife).to receive(:username).and_return("sadpanda")
490
491
  knife.run_with_pretty_exceptions
491
- expect(stderr.string).to match(%r{ERROR: You authenticated successfully to http.+ as sadpanda but you are not authorized for this action})
492
- expect(stderr.string).to match(%r{ERROR: There are proxy servers configured, your server url may need to be added to NO_PROXY.})
493
- expect(stderr.string).to match(%r{Response: y u no administrator})
492
+ expect(stderr.string).to match(/ERROR: You authenticated successfully to http.+ as sadpanda but you are not authorized for this action/)
493
+ expect(stderr.string).to match(/ERROR: There are proxy servers configured, your server url may need to be added to NO_PROXY./)
494
+ expect(stderr.string).to match(/Response: y u no administrator/)
494
495
  end
495
496
  end
496
497
 
@@ -500,8 +501,8 @@ describe Chef::Knife do
500
501
  allow(response).to receive(:body).and_return(Chef::JSONCompat.to_json(error: "y u search wrong"))
501
502
  allow(knife).to receive(:run).and_raise(Net::HTTPClientException.new("400 Bad Request", response))
502
503
  knife.run_with_pretty_exceptions
503
- expect(stderr.string).to match(%r{ERROR: The data in your request was invalid})
504
- expect(stderr.string).to match(%r{Response: y u search wrong})
504
+ expect(stderr.string).to match(/ERROR: The data in your request was invalid/)
505
+ expect(stderr.string).to match(/Response: y u search wrong/)
505
506
  end
506
507
 
507
508
  it "formats 404s nicely" do
@@ -510,8 +511,8 @@ describe Chef::Knife do
510
511
  allow(response).to receive(:body).and_return(Chef::JSONCompat.to_json(error: "nothing to see here"))
511
512
  allow(knife).to receive(:run).and_raise(Net::HTTPClientException.new("404 Not Found", response))
512
513
  knife.run_with_pretty_exceptions
513
- expect(stderr.string).to match(%r{ERROR: The object you are looking for could not be found})
514
- expect(stderr.string).to match(%r{Response: nothing to see here})
514
+ expect(stderr.string).to match(/ERROR: The object you are looking for could not be found/)
515
+ expect(stderr.string).to match(/Response: nothing to see here/)
515
516
  end
516
517
 
517
518
  it "formats 406s (non-supported API version error) nicely" do
@@ -536,8 +537,8 @@ describe Chef::Knife do
536
537
  allow(response).to receive(:body).and_return(Chef::JSONCompat.to_json(error: "sad trombone"))
537
538
  allow(knife).to receive(:run).and_raise(Net::HTTPFatalError.new("500 Internal Server Error", response))
538
539
  knife.run_with_pretty_exceptions
539
- expect(stderr.string).to match(%r{ERROR: internal server error})
540
- expect(stderr.string).to match(%r{Response: sad trombone})
540
+ expect(stderr.string).to match(/ERROR: internal server error/)
541
+ expect(stderr.string).to match(/Response: sad trombone/)
541
542
  end
542
543
 
543
544
  it "formats 502s nicely" do
@@ -546,8 +547,8 @@ describe Chef::Knife do
546
547
  allow(response).to receive(:body).and_return(Chef::JSONCompat.to_json(error: "sadder trombone"))
547
548
  allow(knife).to receive(:run).and_raise(Net::HTTPFatalError.new("502 Bad Gateway", response))
548
549
  knife.run_with_pretty_exceptions
549
- expect(stderr.string).to match(%r{ERROR: bad gateway})
550
- expect(stderr.string).to match(%r{Response: sadder trombone})
550
+ expect(stderr.string).to match(/ERROR: bad gateway/)
551
+ expect(stderr.string).to match(/Response: sadder trombone/)
551
552
  end
552
553
 
553
554
  it "formats 503s nicely" do
@@ -556,8 +557,8 @@ describe Chef::Knife do
556
557
  allow(response).to receive(:body).and_return(Chef::JSONCompat.to_json(error: "saddest trombone"))
557
558
  allow(knife).to receive(:run).and_raise(Net::HTTPFatalError.new("503 Service Unavailable", response))
558
559
  knife.run_with_pretty_exceptions
559
- expect(stderr.string).to match(%r{ERROR: Service temporarily unavailable})
560
- expect(stderr.string).to match(%r{Response: saddest trombone})
560
+ expect(stderr.string).to match(/ERROR: Service temporarily unavailable/)
561
+ expect(stderr.string).to match(/Response: saddest trombone/)
561
562
  end
562
563
 
563
564
  it "formats other HTTP errors nicely" do
@@ -566,16 +567,16 @@ describe Chef::Knife do
566
567
  allow(response).to receive(:body).and_return(Chef::JSONCompat.to_json(error: "nobugfixtillyoubuy"))
567
568
  allow(knife).to receive(:run).and_raise(Net::HTTPClientException.new("402 Payment Required", response))
568
569
  knife.run_with_pretty_exceptions
569
- expect(stderr.string).to match(%r{ERROR: Payment Required})
570
- expect(stderr.string).to match(%r{Response: nobugfixtillyoubuy})
570
+ expect(stderr.string).to match(/ERROR: Payment Required/)
571
+ expect(stderr.string).to match(/Response: nobugfixtillyoubuy/)
571
572
  end
572
573
 
573
574
  it "formats NameError and NoMethodError nicely" do
574
575
  allow(knife).to receive(:run).and_raise(NameError.new("Undefined constant FUUU"))
575
576
  knife.run_with_pretty_exceptions
576
- expect(stderr.string).to match(%r{ERROR: .* encountered an unexpected error})
577
- expect(stderr.string).to match(%r{This may be a bug in the 'knife' .* command or plugin})
578
- expect(stderr.string).to match(%r{Exception: NameError: Undefined constant FUUU})
577
+ expect(stderr.string).to match(/ERROR: .* encountered an unexpected error/)
578
+ expect(stderr.string).to match(/This may be a bug in the 'knife' .* command or plugin/)
579
+ expect(stderr.string).to match(/Exception: NameError: Undefined constant FUUU/)
579
580
  end
580
581
 
581
582
  it "formats missing private key errors nicely" do
@@ -583,7 +584,7 @@ describe Chef::Knife do
583
584
  allow(knife).to receive(:api_key).and_return("/home/root/.chef/no-key-here.pem")
584
585
  knife.run_with_pretty_exceptions
585
586
  expect(stderr.string).to match(%r{ERROR: Your private key could not be loaded from /home/root/.chef/no-key-here.pem})
586
- expect(stderr.string).to match(%r{Check your configuration file and ensure that your private key is readable})
587
+ expect(stderr.string).to match(/Check your configuration file and ensure that your private key is readable/)
587
588
  end
588
589
 
589
590
  it "formats connection refused errors nicely" do
@@ -592,8 +593,8 @@ describe Chef::Knife do
592
593
  # Errno::ECONNREFUSED message differs by platform
593
594
  # *nix = Errno::ECONNREFUSED: Connection refused
594
595
  # win32: Errno::ECONNREFUSED: No connection could be made because the target machine actively refused it.
595
- expect(stderr.string).to match(%r{ERROR: Network Error: .* - y u no shut up})
596
- expect(stderr.string).to match(%r{Check your .* configuration and network settings})
596
+ expect(stderr.string).to match(/ERROR: Network Error: .* - y u no shut up/)
597
+ expect(stderr.string).to match(/Check your .* configuration and network settings/)
597
598
  end
598
599
 
599
600
  it "formats SSL errors nicely and suggests to use `knife ssl check` and `knife ssl fetch`" do
@@ -199,7 +199,7 @@ describe "LWRP" do
199
199
  end
200
200
 
201
201
  it "should create a method for each attribute" do
202
- expect(get_lwrp(:lwrp_foo).new("blah").methods.map { |m| m.to_sym }).to include(:monkey)
202
+ expect(get_lwrp(:lwrp_foo).new("blah").methods.map(&:to_sym)).to include(:monkey)
203
203
  end
204
204
 
205
205
  it "should build attribute methods that respect validation rules" do
@@ -264,12 +264,12 @@ describe "LWRP" do
264
264
  let(:lwrp) do
265
265
  Class.new(Chef::Resource::LWRPBase) do
266
266
  actions :eat, :sleep
267
- default_action [:eat, :sleep]
267
+ default_action %i{eat sleep}
268
268
  end
269
269
  end
270
270
 
271
271
  it "returns the array of default actions" do
272
- expect(lwrp.default_action).to eq([:eat, :sleep])
272
+ expect(lwrp.default_action).to eq(%i{eat sleep})
273
273
  end
274
274
  end
275
275
 
@@ -287,7 +287,7 @@ describe "LWRP" do
287
287
  end
288
288
 
289
289
  it "delegates #actions to the parent" do
290
- expect(child.actions).to eq([:nothing, :eat, :sleep])
290
+ expect(child.actions).to eq(%i{nothing eat sleep})
291
291
  end
292
292
 
293
293
  it "delegates #default_action to the parent" do
@@ -304,7 +304,7 @@ describe "LWRP" do
304
304
  end
305
305
 
306
306
  it "does not delegate #actions to the parent" do
307
- expect(child.actions).to eq([:nothing, :dont_eat, :dont_sleep])
307
+ expect(child.actions).to eq(%i{nothing dont_eat dont_sleep})
308
308
  end
309
309
 
310
310
  it "does not delegate #default_action to the parent" do
@@ -322,7 +322,7 @@ describe "LWRP" do
322
322
  end
323
323
 
324
324
  it "amends actions when they are already defined" do
325
- expect(child.actions).to eq([:nothing, :eat, :sleep, :drink])
325
+ expect(child.actions).to eq(%i{nothing eat sleep drink})
326
326
  end
327
327
  end
328
328
  end
@@ -330,40 +330,40 @@ describe "LWRP" do
330
330
  describe "when actions is set to an array" do
331
331
  let(:resource_class) do
332
332
  Class.new(Chef::Resource::LWRPBase) do
333
- actions [ :eat, :sleep ]
333
+ actions %i{eat sleep}
334
334
  end
335
335
  end
336
336
  let(:resource) do
337
337
  resource_class.new("blah")
338
338
  end
339
339
  it "actions includes those actions" do
340
- expect(resource_class.actions).to eq [ :nothing, :eat, :sleep ]
340
+ expect(resource_class.actions).to eq %i{nothing eat sleep}
341
341
  end
342
342
  it "allowed_actions includes those actions" do
343
- expect(resource_class.allowed_actions).to eq [ :nothing, :eat, :sleep ]
343
+ expect(resource_class.allowed_actions).to eq %i{nothing eat sleep}
344
344
  end
345
345
  it "resource.allowed_actions includes those actions" do
346
- expect(resource.allowed_actions).to eq [ :nothing, :eat, :sleep ]
346
+ expect(resource.allowed_actions).to eq %i{nothing eat sleep}
347
347
  end
348
348
  end
349
349
 
350
350
  describe "when allowed_actions is set to an array" do
351
351
  let(:resource_class) do
352
352
  Class.new(Chef::Resource::LWRPBase) do
353
- allowed_actions [ :eat, :sleep ]
353
+ allowed_actions %i{eat sleep}
354
354
  end
355
355
  end
356
356
  let(:resource) do
357
357
  resource_class.new("blah")
358
358
  end
359
359
  it "actions includes those actions" do
360
- expect(resource_class.actions).to eq [ :nothing, :eat, :sleep ]
360
+ expect(resource_class.actions).to eq %i{nothing eat sleep}
361
361
  end
362
362
  it "allowed_actions includes those actions" do
363
- expect(resource_class.allowed_actions).to eq [ :nothing, :eat, :sleep ]
363
+ expect(resource_class.allowed_actions).to eq %i{nothing eat sleep}
364
364
  end
365
365
  it "resource.allowed_actions includes those actions" do
366
- expect(resource.allowed_actions).to eq [ :nothing, :eat, :sleep ]
366
+ expect(resource.allowed_actions).to eq %i{nothing eat sleep}
367
367
  end
368
368
  end
369
369
  end
@@ -590,7 +590,7 @@ describe "LWRP" do
590
590
 
591
591
  it "get_lwrp(:lwrp_once).new is an instance of the LWRP class" do
592
592
  lwrp = get_lwrp(:lwrp_once).new("hi")
593
- expect(lwrp.kind_of?(test_lwrp_class)).to be_truthy
593
+ expect(lwrp.is_a?(test_lwrp_class)).to be_truthy
594
594
  expect(lwrp.is_a?(test_lwrp_class)).to be_truthy
595
595
  expect(get_lwrp(:lwrp_once) === lwrp).to be_truthy
596
596
  expect(test_lwrp_class === lwrp).to be_truthy
@@ -603,28 +603,28 @@ describe "LWRP" do
603
603
 
604
604
  it "subclass.new is a subclass" do
605
605
  lwrp = subclass.new("hi")
606
- expect(lwrp.kind_of?(subclass)).to be_truthy
606
+ expect(lwrp.is_a?(subclass)).to be_truthy
607
607
  expect(lwrp.is_a?(subclass)).to be_truthy
608
608
  expect(subclass === lwrp).to be_truthy
609
609
  expect(lwrp.class === subclass)
610
610
  end
611
611
  it "subclass.new is an instance of the LWRP class" do
612
612
  lwrp = subclass.new("hi")
613
- expect(lwrp.kind_of?(test_lwrp_class)).to be_truthy
613
+ expect(lwrp.is_a?(test_lwrp_class)).to be_truthy
614
614
  expect(lwrp.is_a?(test_lwrp_class)).to be_truthy
615
615
  expect(test_lwrp_class === lwrp).to be_truthy
616
616
  expect(lwrp.class === test_lwrp_class)
617
617
  end
618
618
  it "subclass.new is a get_lwrp(:lwrp_once)" do
619
619
  lwrp = subclass.new("hi")
620
- expect(lwrp.kind_of?(get_lwrp(:lwrp_once))).to be_truthy
620
+ expect(lwrp.is_a?(get_lwrp(:lwrp_once))).to be_truthy
621
621
  expect(lwrp.is_a?(get_lwrp(:lwrp_once))).to be_truthy
622
622
  expect(get_lwrp(:lwrp_once) === lwrp).to be_truthy
623
623
  expect(lwrp.class === get_lwrp(:lwrp_once))
624
624
  end
625
625
  it "get_lwrp(:lwrp_once).new is *not* a subclass" do
626
626
  lwrp = get_lwrp(:lwrp_once).new("hi")
627
- expect(lwrp.kind_of?(subclass)).to be_falsey
627
+ expect(lwrp.is_a?(subclass)).to be_falsey
628
628
  expect(lwrp.is_a?(subclass)).to be_falsey
629
629
  expect(subclass === lwrp.class).to be_falsey
630
630
  expect(subclass === get_lwrp(:lwrp_once)).to be_falsey