chef 14.2.0-universal-mingw32 → 14.3.37-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 (845) hide show
  1. checksums.yaml +4 -4
  2. data/CONTRIBUTING.md +13 -12
  3. data/Gemfile +15 -0
  4. data/README.md +36 -40
  5. data/Rakefile +1 -1
  6. data/VERSION +1 -1
  7. data/bin/chef-apply +0 -1
  8. data/bin/chef-client +1 -2
  9. data/bin/chef-service-manager +7 -8
  10. data/bin/chef-shell +1 -6
  11. data/bin/chef-solo +1 -2
  12. data/bin/chef-windows-service +1 -2
  13. data/bin/knife +1 -2
  14. data/chef-universal-mingw32.gemspec +2 -2
  15. data/chef.gemspec +1 -1
  16. data/distro/ruby_bin_folder/Chef.PowerShell.Wrapper.dll +0 -0
  17. data/distro/ruby_bin_folder/Chef.PowerShell.dll +0 -0
  18. data/distro/{powershell/chef → ruby_bin_folder}/Newtonsoft.Json.dll +0 -0
  19. data/ext/win32-eventlog/Rakefile +14 -14
  20. data/lib/chef/api_client.rb +10 -10
  21. data/lib/chef/api_client/registration.rb +5 -5
  22. data/lib/chef/api_client_v1.rb +15 -15
  23. data/lib/chef/application.rb +1 -1
  24. data/lib/chef/application/apply.rb +56 -56
  25. data/lib/chef/application/client.rb +169 -170
  26. data/lib/chef/application/exit_code.rb +2 -2
  27. data/lib/chef/application/knife.rb +79 -78
  28. data/lib/chef/application/solo.rb +120 -120
  29. data/lib/chef/application/windows_service.rb +21 -21
  30. data/lib/chef/application/windows_service_manager.rb +39 -39
  31. data/lib/chef/audit/audit_event_proxy.rb +6 -6
  32. data/lib/chef/audit/audit_reporter.rb +2 -2
  33. data/lib/chef/audit/control_group_data.rb +15 -15
  34. data/lib/chef/audit/runner.rb +1 -1
  35. data/lib/chef/chef_class.rb +16 -8
  36. data/lib/chef/chef_fs/chef_fs_data_store.rb +8 -8
  37. data/lib/chef/chef_fs/config.rb +2 -2
  38. data/lib/chef/chef_fs/file_system/chef_server/acl_entry.rb +1 -1
  39. data/lib/chef/chef_fs/file_system/chef_server/acls_dir.rb +1 -1
  40. data/lib/chef/chef_fs/file_system/chef_server/chef_server_root_dir.rb +2 -2
  41. data/lib/chef/chef_fs/file_system/chef_server/cookbooks_dir.rb +1 -1
  42. data/lib/chef/chef_fs/file_system/chef_server/organization_invites_entry.rb +1 -1
  43. data/lib/chef/chef_fs/file_system/chef_server/organization_members_entry.rb +1 -1
  44. data/lib/chef/chef_fs/file_system/chef_server/rest_list_entry.rb +1 -1
  45. data/lib/chef/chef_fs/file_system/chef_server/versioned_cookbooks_dir.rb +1 -1
  46. data/lib/chef/chef_fs/file_system/repository/acls_dir.rb +1 -1
  47. data/lib/chef/chef_fs/file_system/repository/chef_repository_file_system_cookbook_dir.rb +1 -1
  48. data/lib/chef/chef_fs/file_system/repository/chef_repository_file_system_cookbook_entry.rb +3 -3
  49. data/lib/chef/chef_fs/file_system/repository/chef_repository_file_system_root_dir.rb +2 -2
  50. data/lib/chef/chef_fs/file_system/repository/directory.rb +3 -3
  51. data/lib/chef/chef_fs/file_system/repository/file_system_entry.rb +3 -3
  52. data/lib/chef/chef_fs/knife.rb +6 -6
  53. data/lib/chef/chef_fs/parallelizer.rb +1 -1
  54. data/lib/chef/client.rb +3 -0
  55. data/lib/chef/cookbook/cookbook_version_loader.rb +1 -1
  56. data/lib/chef/cookbook/file_system_file_vendor.rb +1 -1
  57. data/lib/chef/cookbook/manifest_v0.rb +1 -1
  58. data/lib/chef/cookbook/metadata.rb +61 -61
  59. data/lib/chef/cookbook/remote_file_vendor.rb +1 -1
  60. data/lib/chef/cookbook/synchronizer.rb +2 -2
  61. data/lib/chef/cookbook_loader.rb +3 -3
  62. data/lib/chef/cookbook_manifest.rb +5 -5
  63. data/lib/chef/cookbook_site_streaming_uploader.rb +5 -5
  64. data/lib/chef/cookbook_uploader.rb +2 -2
  65. data/lib/chef/cookbook_version.rb +2 -2
  66. data/lib/chef/data_bag.rb +3 -3
  67. data/lib/chef/data_bag_item.rb +2 -2
  68. data/lib/chef/deprecated.rb +110 -176
  69. data/lib/chef/dsl/audit.rb +1 -1
  70. data/lib/chef/dsl/definitions.rb +1 -1
  71. data/lib/chef/dsl/platform_introspection.rb +5 -0
  72. data/lib/chef/dsl/reboot_pending.rb +1 -1
  73. data/lib/chef/encrypted_data_bag_item.rb +2 -2
  74. data/lib/chef/encrypted_data_bag_item/check_encrypted.rb +1 -1
  75. data/lib/chef/encrypted_data_bag_item/encryptor.rb +1 -1
  76. data/lib/chef/environment.rb +10 -10
  77. data/lib/chef/event_loggers/windows_eventlog.rb +21 -21
  78. data/lib/chef/exceptions.rb +3 -3
  79. data/lib/chef/file_cache.rb +18 -16
  80. data/lib/chef/formatters/base.rb +9 -10
  81. data/lib/chef/formatters/doc.rb +12 -16
  82. data/lib/chef/formatters/error_inspectors/api_error_formatting.rb +51 -51
  83. data/lib/chef/formatters/error_inspectors/cookbook_resolve_error_inspector.rb +10 -10
  84. data/lib/chef/formatters/error_inspectors/node_load_error_inspector.rb +13 -13
  85. data/lib/chef/formatters/error_inspectors/registration_error_inspector.rb +39 -39
  86. data/lib/chef/formatters/error_inspectors/resource_failure_inspector.rb +1 -1
  87. data/lib/chef/formatters/error_inspectors/run_list_expansion_error_inspector.rb +16 -16
  88. data/lib/chef/formatters/indentable_output_stream.rb +4 -4
  89. data/lib/chef/guard_interpreter/resource_guard_interpreter.rb +3 -3
  90. data/lib/chef/handler/json_file.rb +1 -1
  91. data/lib/chef/http/auth_credentials.rb +2 -2
  92. data/lib/chef/http/authenticator.rb +6 -6
  93. data/lib/chef/http/cookie_manager.rb +1 -1
  94. data/lib/chef/http/http_request.rb +3 -3
  95. data/lib/chef/http/json_input.rb +1 -1
  96. data/lib/chef/http/json_to_model_output.rb +1 -1
  97. data/lib/chef/http/socketless_chef_zero_client.rb +1 -1
  98. data/lib/chef/json_compat.rb +1 -1
  99. data/lib/chef/key.rb +9 -9
  100. data/lib/chef/knife.rb +5 -5
  101. data/lib/chef/knife/bootstrap.rb +116 -116
  102. data/lib/chef/knife/bootstrap/client_builder.rb +1 -1
  103. data/lib/chef/knife/client_bulk_delete.rb +3 -3
  104. data/lib/chef/knife/client_create.rb +17 -17
  105. data/lib/chef/knife/client_delete.rb +3 -3
  106. data/lib/chef/knife/client_list.rb +3 -3
  107. data/lib/chef/knife/client_reregister.rb +3 -3
  108. data/lib/chef/knife/config_get.rb +126 -0
  109. data/lib/chef/knife/configure.rb +25 -25
  110. data/lib/chef/knife/cookbook_bulk_delete.rb +1 -1
  111. data/lib/chef/knife/cookbook_delete.rb +2 -2
  112. data/lib/chef/knife/cookbook_download.rb +11 -11
  113. data/lib/chef/knife/cookbook_list.rb +6 -6
  114. data/lib/chef/knife/cookbook_metadata.rb +7 -8
  115. data/lib/chef/knife/cookbook_metadata_from_file.rb +0 -1
  116. data/lib/chef/knife/cookbook_show.rb +16 -16
  117. data/lib/chef/knife/cookbook_site_download.rb +11 -10
  118. data/lib/chef/knife/cookbook_site_install.rb +24 -24
  119. data/lib/chef/knife/cookbook_site_list.rb +8 -8
  120. data/lib/chef/knife/cookbook_site_search.rb +6 -5
  121. data/lib/chef/knife/cookbook_site_share.rb +20 -19
  122. data/lib/chef/knife/cookbook_site_show.rb +6 -5
  123. data/lib/chef/knife/cookbook_site_unshare.rb +5 -5
  124. data/lib/chef/knife/cookbook_test.rb +8 -8
  125. data/lib/chef/knife/cookbook_upload.rb +32 -32
  126. data/lib/chef/knife/core/bootstrap_context.rb +7 -7
  127. data/lib/chef/knife/core/cookbook_scm_repo.rb +1 -1
  128. data/lib/chef/knife/core/generic_presenter.rb +7 -7
  129. data/lib/chef/knife/core/hashed_command_loader.rb +1 -1
  130. data/lib/chef/knife/core/node_presenter.rb +37 -37
  131. data/lib/chef/knife/core/status_presenter.rb +11 -11
  132. data/lib/chef/knife/data_bag_from_file.rb +4 -4
  133. data/lib/chef/knife/data_bag_list.rb +3 -3
  134. data/lib/chef/knife/data_bag_secret_options.rb +13 -13
  135. data/lib/chef/knife/delete.rb +29 -13
  136. data/lib/chef/knife/deps.rb +25 -9
  137. data/lib/chef/knife/diff.rb +30 -14
  138. data/lib/chef/knife/download.rb +39 -23
  139. data/lib/chef/knife/edit.rb +19 -3
  140. data/lib/chef/knife/environment_compare.rb +8 -8
  141. data/lib/chef/knife/environment_create.rb +3 -3
  142. data/lib/chef/knife/environment_from_file.rb +5 -3
  143. data/lib/chef/knife/environment_list.rb +3 -3
  144. data/lib/chef/knife/exec.rb +7 -7
  145. data/lib/chef/knife/key_create.rb +4 -4
  146. data/lib/chef/knife/key_create_base.rb +12 -12
  147. data/lib/chef/knife/key_edit.rb +5 -5
  148. data/lib/chef/knife/key_edit_base.rb +15 -15
  149. data/lib/chef/knife/key_list.rb +3 -3
  150. data/lib/chef/knife/key_list_base.rb +9 -9
  151. data/lib/chef/knife/list.rb +35 -19
  152. data/lib/chef/knife/node_edit.rb +4 -4
  153. data/lib/chef/knife/node_list.rb +3 -3
  154. data/lib/chef/knife/node_run_list_add.rb +6 -6
  155. data/lib/chef/knife/node_show.rb +6 -6
  156. data/lib/chef/knife/osc_user_create.rb +13 -13
  157. data/lib/chef/knife/osc_user_list.rb +3 -3
  158. data/lib/chef/knife/osc_user_reregister.rb +3 -3
  159. data/lib/chef/knife/raw.rb +32 -16
  160. data/lib/chef/knife/role_create.rb +3 -3
  161. data/lib/chef/knife/role_env_run_list_add.rb +4 -3
  162. data/lib/chef/knife/role_env_run_list_remove.rb +2 -2
  163. data/lib/chef/knife/role_env_run_list_replace.rb +1 -0
  164. data/lib/chef/knife/role_list.rb +3 -3
  165. data/lib/chef/knife/role_run_list_add.rb +4 -3
  166. data/lib/chef/knife/role_run_list_remove.rb +2 -2
  167. data/lib/chef/knife/role_run_list_replace.rb +1 -0
  168. data/lib/chef/knife/search.rb +23 -23
  169. data/lib/chef/knife/serve.rb +22 -6
  170. data/lib/chef/knife/show.rb +19 -3
  171. data/lib/chef/knife/ssh.rb +68 -68
  172. data/lib/chef/knife/ssl_check.rb +31 -31
  173. data/lib/chef/knife/ssl_fetch.rb +5 -5
  174. data/lib/chef/knife/status.rb +11 -11
  175. data/lib/chef/knife/upload.rb +41 -25
  176. data/lib/chef/knife/user_create.rb +28 -28
  177. data/lib/chef/knife/user_delete.rb +9 -9
  178. data/lib/chef/knife/user_edit.rb +9 -9
  179. data/lib/chef/knife/user_list.rb +3 -3
  180. data/lib/chef/knife/user_reregister.rb +12 -12
  181. data/lib/chef/knife/user_show.rb +9 -9
  182. data/lib/chef/knife/xargs.rb +52 -36
  183. data/lib/chef/log.rb +10 -8
  184. data/lib/chef/log/winevt.rb +21 -21
  185. data/lib/chef/mixin/api_version_request_handling.rb +6 -6
  186. data/lib/chef/mixin/deep_merge.rb +1 -1
  187. data/lib/chef/mixin/deprecation.rb +2 -2
  188. data/lib/chef/mixin/params_validate.rb +9 -9
  189. data/lib/chef/mixin/properties.rb +2 -2
  190. data/lib/chef/mixin/securable.rb +11 -11
  191. data/lib/chef/mixin/shell_out.rb +138 -82
  192. data/lib/chef/mixin/wide_string.rb +5 -23
  193. data/lib/chef/mixin/windows_env_helper.rb +1 -1
  194. data/lib/chef/mixin/xml_escape.rb +3 -3
  195. data/lib/chef/node.rb +15 -15
  196. data/lib/chef/node/attribute.rb +6 -6
  197. data/lib/chef/node/attribute_collections.rb +2 -2
  198. data/lib/chef/node/mixin/deep_merge_cache.rb +1 -1
  199. data/lib/chef/node/mixin/immutablize_array.rb +2 -2
  200. data/lib/chef/node/mixin/immutablize_hash.rb +2 -2
  201. data/lib/chef/node_map.rb +77 -3
  202. data/lib/chef/org.rb +8 -8
  203. data/lib/chef/policy_builder/expand_node_object.rb +1 -1
  204. data/lib/chef/powershell.rb +9 -7
  205. data/lib/chef/property.rb +14 -14
  206. data/lib/chef/provider/apt_update.rb +2 -2
  207. data/lib/chef/provider/cron.rb +3 -3
  208. data/lib/chef/provider/cron/unix.rb +2 -2
  209. data/lib/chef/provider/dsc_resource.rb +1 -1
  210. data/lib/chef/provider/dsc_script.rb +8 -8
  211. data/lib/chef/provider/execute.rb +1 -1
  212. data/lib/chef/provider/group/aix.rb +6 -6
  213. data/lib/chef/provider/group/dscl.rb +1 -1
  214. data/lib/chef/provider/group/gpasswd.rb +4 -4
  215. data/lib/chef/provider/group/groupadd.rb +3 -3
  216. data/lib/chef/provider/group/groupmod.rb +6 -6
  217. data/lib/chef/provider/group/pw.rb +4 -4
  218. data/lib/chef/provider/group/suse.rb +2 -2
  219. data/lib/chef/provider/group/usermod.rb +1 -1
  220. data/lib/chef/provider/http_request.rb +6 -6
  221. data/lib/chef/provider/ifconfig.rb +4 -4
  222. data/lib/chef/provider/ifconfig/aix.rb +1 -1
  223. data/lib/chef/provider/mdadm.rb +1 -1
  224. data/lib/chef/provider/mount/mount.rb +1 -1
  225. data/lib/chef/provider/mount/windows.rb +7 -7
  226. data/lib/chef/provider/package.rb +3 -18
  227. data/lib/chef/provider/package/apt.rb +4 -4
  228. data/lib/chef/provider/package/bff.rb +9 -9
  229. data/lib/chef/provider/package/chocolatey.rb +7 -7
  230. data/lib/chef/provider/package/dnf.rb +2 -2
  231. data/lib/chef/provider/package/dpkg.rb +6 -6
  232. data/lib/chef/provider/package/freebsd/base.rb +2 -2
  233. data/lib/chef/provider/package/freebsd/pkg.rb +6 -6
  234. data/lib/chef/provider/package/freebsd/pkgng.rb +5 -5
  235. data/lib/chef/provider/package/freebsd/port.rb +4 -4
  236. data/lib/chef/provider/package/homebrew.rb +1 -1
  237. data/lib/chef/provider/package/ips.rb +6 -6
  238. data/lib/chef/provider/package/macports.rb +6 -6
  239. data/lib/chef/provider/package/msu.rb +1 -1
  240. data/lib/chef/provider/package/openbsd.rb +5 -5
  241. data/lib/chef/provider/package/pacman.rb +4 -4
  242. data/lib/chef/provider/package/paludis.rb +3 -3
  243. data/lib/chef/provider/package/portage.rb +5 -5
  244. data/lib/chef/provider/package/powershell.rb +6 -2
  245. data/lib/chef/provider/package/rpm.rb +10 -10
  246. data/lib/chef/provider/package/rubygems.rb +4 -4
  247. data/lib/chef/provider/package/smartos.rb +4 -4
  248. data/lib/chef/provider/package/solaris.rb +9 -9
  249. data/lib/chef/provider/package/windows.rb +4 -3
  250. data/lib/chef/provider/package/yum.rb +2 -2
  251. data/lib/chef/provider/package/zypper.rb +4 -4
  252. data/lib/chef/provider/powershell_script.rb +73 -73
  253. data/lib/chef/provider/reboot.rb +4 -4
  254. data/lib/chef/provider/registry_key.rb +4 -4
  255. data/lib/chef/provider/remote_file/cache_control_data.rb +2 -2
  256. data/lib/chef/provider/remote_file/sftp.rb +1 -1
  257. data/lib/chef/provider/resource_update.rb +1 -1
  258. data/lib/chef/provider/route.rb +2 -2
  259. data/lib/chef/provider/service/openbsd.rb +3 -3
  260. data/lib/chef/provider/service/redhat.rb +1 -1
  261. data/lib/chef/provider/service/simple.rb +1 -0
  262. data/lib/chef/provider/service/solaris.rb +1 -1
  263. data/lib/chef/provider/service/systemd.rb +2 -2
  264. data/lib/chef/provider/service/windows.rb +17 -17
  265. data/lib/chef/provider/subversion.rb +3 -3
  266. data/lib/chef/provider/systemd_unit.rb +2 -2
  267. data/lib/chef/provider/template/content.rb +1 -1
  268. data/lib/chef/provider/user/aix.rb +6 -6
  269. data/lib/chef/provider/user/dscl.rb +6 -6
  270. data/lib/chef/provider/user/linux.rb +6 -6
  271. data/lib/chef/provider/user/pw.rb +5 -5
  272. data/lib/chef/provider/user/solaris.rb +6 -6
  273. data/lib/chef/provider/user/useradd.rb +7 -7
  274. data/lib/chef/provider/windows_env.rb +6 -6
  275. data/lib/chef/provider/windows_task.rb +22 -24
  276. data/lib/chef/resource.rb +26 -4
  277. data/lib/chef/resource/chef_handler.rb +2 -0
  278. data/lib/chef/resource/chocolatey_config.rb +83 -0
  279. data/lib/chef/resource/chocolatey_source.rb +95 -0
  280. data/lib/chef/resource/cron.rb +5 -5
  281. data/lib/chef/resource/dsc_script.rb +12 -11
  282. data/lib/chef/resource/execute.rb +1 -1
  283. data/lib/chef/resource/file/verification.rb +1 -1
  284. data/lib/chef/resource/freebsd_package.rb +3 -1
  285. data/lib/chef/resource/group.rb +2 -2
  286. data/lib/chef/resource/homebrew_package.rb +2 -1
  287. data/lib/chef/resource/homebrew_tap.rb +1 -1
  288. data/lib/chef/resource/hostname.rb +23 -7
  289. data/lib/chef/resource/http_request.rb +6 -3
  290. data/lib/chef/resource/ifconfig.rb +57 -17
  291. data/lib/chef/resource/ips_package.rb +3 -1
  292. data/lib/chef/resource/kernel_module.rb +129 -0
  293. data/lib/chef/resource/launchd.rb +205 -98
  294. data/lib/chef/resource/log.rb +7 -2
  295. data/lib/chef/resource/mdadm.rb +29 -8
  296. data/lib/chef/resource/ohai.rb +2 -0
  297. data/lib/chef/resource/ohai_hint.rb +5 -3
  298. data/lib/chef/resource/openssl_dhparam.rb +1 -1
  299. data/lib/chef/resource/openssl_rsa_private_key.rb +2 -0
  300. data/lib/chef/resource/paludis_package.rb +1 -1
  301. data/lib/chef/resource/portage_package.rb +2 -0
  302. data/lib/chef/resource/powershell_package.rb +2 -0
  303. data/lib/chef/resource/powershell_package_source.rb +165 -0
  304. data/lib/chef/resource/powershell_script.rb +2 -2
  305. data/lib/chef/resource/registry_key.rb +1 -1
  306. data/lib/chef/resource/remote_directory.rb +3 -3
  307. data/lib/chef/resource/remote_file.rb +2 -2
  308. data/lib/chef/resource/resource_notification.rb +16 -16
  309. data/lib/chef/resource/rhsm_errata.rb +1 -1
  310. data/lib/chef/resource/rhsm_errata_level.rb +1 -1
  311. data/lib/chef/resource/rhsm_register.rb +4 -4
  312. data/lib/chef/resource/rhsm_repo.rb +2 -2
  313. data/lib/chef/resource/rhsm_subscription.rb +2 -2
  314. data/lib/chef/resource/script.rb +1 -1
  315. data/lib/chef/resource/service.rb +18 -18
  316. data/lib/chef/resource/ssh_known_hosts_entry.rb +146 -0
  317. data/lib/chef/resource/sudo.rb +4 -4
  318. data/lib/chef/resource/support/ssh_known_hosts.erb +3 -0
  319. data/lib/chef/resource/sysctl.rb +9 -5
  320. data/lib/chef/resource/template.rb +1 -1
  321. data/lib/chef/resource/user.rb +15 -15
  322. data/lib/chef/resource/windows_feature_dism.rb +10 -9
  323. data/lib/chef/resource/windows_feature_powershell.rb +24 -13
  324. data/lib/chef/resource/windows_script.rb +1 -1
  325. data/lib/chef/resource/windows_service.rb +2 -2
  326. data/lib/chef/resource/windows_task.rb +3 -3
  327. data/lib/chef/resource_definition.rb +1 -1
  328. data/lib/chef/resource_inspector.rb +1 -0
  329. data/lib/chef/resource_reporter.rb +4 -4
  330. data/lib/chef/resources.rb +5 -0
  331. data/lib/chef/role.rb +8 -8
  332. data/lib/chef/run_context.rb +8 -8
  333. data/lib/chef/run_list/run_list_expansion.rb +6 -6
  334. data/lib/chef/run_list/run_list_item.rb +1 -1
  335. data/lib/chef/run_list/versioned_recipe_list.rb +3 -3
  336. data/lib/chef/run_status.rb +10 -10
  337. data/lib/chef/shell.rb +60 -60
  338. data/lib/chef/shell/ext.rb +151 -151
  339. data/lib/chef/shell/shell_session.rb +2 -2
  340. data/lib/chef/user.rb +11 -11
  341. data/lib/chef/user_v1.rb +26 -26
  342. data/lib/chef/util/backup.rb +2 -2
  343. data/lib/chef/util/diff.rb +1 -1
  344. data/lib/chef/util/dsc/configuration_generator.rb +11 -11
  345. data/lib/chef/util/dsc/lcm_output_parser.rb +1 -1
  346. data/lib/chef/util/file_edit.rb +14 -14
  347. data/lib/chef/util/powershell/cmdlet.rb +4 -4
  348. data/lib/chef/util/selinux.rb +2 -2
  349. data/lib/chef/util/windows/net_group.rb +1 -1
  350. data/lib/chef/util/windows/net_use.rb +3 -3
  351. data/lib/chef/util/windows/net_user.rb +12 -12
  352. data/lib/chef/util/windows/volume.rb +2 -2
  353. data/lib/chef/version.rb +3 -3
  354. data/lib/chef/version_constraint.rb +3 -3
  355. data/lib/chef/win32/api.rb +6 -6
  356. data/lib/chef/win32/api/error.rb +2 -2
  357. data/lib/chef/win32/api/file.rb +12 -12
  358. data/lib/chef/win32/api/net.rb +58 -58
  359. data/lib/chef/win32/registry.rb +8 -8
  360. data/lib/chef/win32/security.rb +6 -6
  361. data/lib/chef/win32/security/securable_object.rb +10 -10
  362. data/lib/chef/win32/unicode.rb +6 -0
  363. data/lib/chef/win32/version.rb +16 -16
  364. data/spec/functional/audit/rspec_formatter_spec.rb +1 -1
  365. data/spec/functional/audit/runner_spec.rb +1 -1
  366. data/spec/functional/dsl/reboot_pending_spec.rb +3 -3
  367. data/spec/functional/dsl/registry_helper_spec.rb +3 -3
  368. data/spec/functional/http/simple_spec.rb +1 -1
  369. data/spec/functional/knife/exec_spec.rb +1 -1
  370. data/spec/functional/knife/ssh_spec.rb +2 -2
  371. data/spec/functional/mixin/shell_out_spec.rb +8 -4
  372. data/spec/functional/rebooter_spec.rb +6 -6
  373. data/spec/functional/resource/aixinit_service_spec.rb +2 -2
  374. data/spec/functional/resource/apt_package_spec.rb +17 -17
  375. data/spec/functional/resource/bash_spec.rb +1 -1
  376. data/spec/functional/resource/bff_spec.rb +1 -1
  377. data/spec/functional/resource/cron_spec.rb +1 -1
  378. data/spec/functional/resource/dnf_package_spec.rb +7 -7
  379. data/spec/functional/resource/dsc_script_spec.rb +94 -94
  380. data/spec/functional/resource/execute_spec.rb +4 -4
  381. data/spec/functional/resource/file_spec.rb +1 -1
  382. data/spec/functional/resource/git_spec.rb +19 -19
  383. data/spec/functional/resource/ifconfig_spec.rb +5 -5
  384. data/spec/functional/resource/link_spec.rb +1 -1
  385. data/spec/functional/resource/mount_spec.rb +2 -2
  386. data/spec/functional/resource/powershell_script_spec.rb +13 -13
  387. data/spec/functional/resource/reboot_spec.rb +3 -3
  388. data/spec/functional/resource/registry_spec.rb +82 -82
  389. data/spec/functional/resource/remote_file_spec.rb +2 -2
  390. data/spec/functional/resource/rpm_spec.rb +1 -1
  391. data/spec/functional/resource/template_spec.rb +5 -5
  392. data/spec/functional/resource/user/dscl_spec.rb +3 -3
  393. data/spec/functional/resource/windows_env_spec.rb +1 -1
  394. data/spec/functional/resource/windows_service_spec.rb +1 -1
  395. data/spec/functional/resource/windows_task_spec.rb +92 -38
  396. data/spec/functional/resource/yum_package_spec.rb +8 -8
  397. data/spec/functional/run_lock_spec.rb +4 -4
  398. data/spec/functional/shell_spec.rb +1 -1
  399. data/spec/functional/util/powershell/cmdlet_spec.rb +7 -7
  400. data/spec/functional/version_spec.rb +1 -1
  401. data/spec/functional/win32/crypto_spec.rb +9 -9
  402. data/spec/functional/win32/registry_spec.rb +66 -66
  403. data/spec/integration/client/client_spec.rb +219 -219
  404. data/spec/integration/client/exit_code_spec.rb +19 -19
  405. data/spec/integration/client/ipv6_spec.rb +36 -36
  406. data/spec/integration/knife/chef_fs_data_store_spec.rb +130 -130
  407. data/spec/integration/knife/chef_repo_path_spec.rb +418 -418
  408. data/spec/integration/knife/chef_repository_file_system_spec.rb +35 -35
  409. data/spec/integration/knife/chefignore_spec.rb +88 -88
  410. data/spec/integration/knife/client_bulk_delete_spec.rb +49 -49
  411. data/spec/integration/knife/client_create_spec.rb +5 -5
  412. data/spec/integration/knife/client_delete_spec.rb +13 -13
  413. data/spec/integration/knife/client_key_delete_spec.rb +2 -2
  414. data/spec/integration/knife/client_key_list_spec.rb +4 -4
  415. data/spec/integration/knife/client_list_spec.rb +8 -8
  416. data/spec/integration/knife/common_options_spec.rb +31 -31
  417. data/spec/integration/knife/config_get_spec.rb +183 -0
  418. data/spec/integration/knife/cookbook_api_ipv6_spec.rb +38 -38
  419. data/spec/integration/knife/cookbook_bulk_delete_spec.rb +14 -14
  420. data/spec/integration/knife/cookbook_download_spec.rb +12 -12
  421. data/spec/integration/knife/cookbook_list_spec.rb +8 -8
  422. data/spec/integration/knife/cookbook_show_spec.rb +81 -81
  423. data/spec/integration/knife/cookbook_upload_spec.rb +24 -24
  424. data/spec/integration/knife/data_bag_delete_spec.rb +8 -8
  425. data/spec/integration/knife/data_bag_from_file_spec.rb +47 -47
  426. data/spec/integration/knife/data_bag_list_spec.rb +4 -4
  427. data/spec/integration/knife/data_bag_show_spec.rb +7 -7
  428. data/spec/integration/knife/delete_spec.rb +593 -593
  429. data/spec/integration/knife/deps_spec.rb +185 -185
  430. data/spec/integration/knife/diff_spec.rb +116 -116
  431. data/spec/integration/knife/download_spec.rb +510 -510
  432. data/spec/integration/knife/environment_compare_spec.rb +15 -15
  433. data/spec/integration/knife/environment_from_file_spec.rb +59 -59
  434. data/spec/integration/knife/environment_list_spec.rb +4 -4
  435. data/spec/integration/knife/environment_show_spec.rb +25 -25
  436. data/spec/integration/knife/list_spec.rb +731 -731
  437. data/spec/integration/knife/node_bulk_delete_spec.rb +8 -8
  438. data/spec/integration/knife/node_delete_spec.rb +6 -6
  439. data/spec/integration/knife/node_environment_set_spec.rb +3 -3
  440. data/spec/integration/knife/node_from_file_spec.rb +16 -16
  441. data/spec/integration/knife/node_list_spec.rb +5 -5
  442. data/spec/integration/knife/raw_spec.rb +117 -117
  443. data/spec/integration/knife/role_bulk_delete_spec.rb +8 -8
  444. data/spec/integration/knife/role_delete_spec.rb +6 -6
  445. data/spec/integration/knife/role_from_file_spec.rb +42 -42
  446. data/spec/integration/knife/role_list_spec.rb +5 -5
  447. data/spec/integration/knife/role_show_spec.rb +9 -9
  448. data/spec/integration/knife/show_spec.rb +57 -57
  449. data/spec/integration/knife/upload_spec.rb +396 -396
  450. data/spec/integration/recipes/accumulator_spec.rb +2 -2
  451. data/spec/integration/recipes/lwrp_inline_resources_spec.rb +8 -8
  452. data/spec/integration/recipes/lwrp_spec.rb +12 -12
  453. data/spec/integration/recipes/notifies_spec.rb +167 -167
  454. data/spec/integration/recipes/notifying_block_spec.rb +2 -2
  455. data/spec/integration/recipes/remote_directory.rb +1 -1
  456. data/spec/integration/recipes/resource_converge_if_changed_spec.rb +99 -99
  457. data/spec/integration/recipes/resource_load_spec.rb +8 -8
  458. data/spec/integration/solo/solo_spec.rb +40 -40
  459. data/spec/scripts/ssl-serve.rb +12 -12
  460. data/spec/spec_helper.rb +73 -73
  461. data/spec/stress/win32/file_spec.rb +2 -2
  462. data/spec/stress/win32/security_spec.rb +2 -2
  463. data/spec/support/platform_helpers.rb +1 -1
  464. data/spec/support/shared/context/client.rb +25 -25
  465. data/spec/support/shared/functional/securable_resource.rb +13 -13
  466. data/spec/support/shared/functional/securable_resource_with_reporting.rb +6 -6
  467. data/spec/support/shared/functional/win32_service.rb +5 -5
  468. data/spec/support/shared/functional/windows_script.rb +3 -3
  469. data/spec/support/shared/integration/app_server_support.rb +3 -3
  470. data/spec/support/shared/integration/integration_helper.rb +2 -2
  471. data/spec/support/shared/integration/knife_support.rb +9 -3
  472. data/spec/support/shared/unit/api_error_inspector.rb +6 -6
  473. data/spec/support/shared/unit/api_versioning.rb +2 -2
  474. data/spec/support/shared/unit/execute_resource.rb +2 -2
  475. data/spec/support/shared/unit/provider/file.rb +12 -12
  476. data/spec/support/shared/unit/provider/useradd_based_user_provider.rb +34 -34
  477. data/spec/support/shared/unit/user_and_client_shared.rb +3 -3
  478. data/spec/tiny_server.rb +8 -8
  479. data/spec/unit/api_client/registration_spec.rb +30 -30
  480. data/spec/unit/api_client_spec.rb +6 -6
  481. data/spec/unit/api_client_v1_spec.rb +6 -6
  482. data/spec/unit/application/apply_spec.rb +4 -4
  483. data/spec/unit/application/client_spec.rb +11 -11
  484. data/spec/unit/application/knife_spec.rb +3 -3
  485. data/spec/unit/application/solo_spec.rb +5 -5
  486. data/spec/unit/application_spec.rb +11 -11
  487. data/spec/unit/audit/audit_event_proxy_spec.rb +48 -48
  488. data/spec/unit/audit/audit_reporter_spec.rb +51 -55
  489. data/spec/unit/audit/control_group_data_spec.rb +20 -20
  490. data/spec/unit/audit/runner_spec.rb +2 -2
  491. data/spec/unit/chef_class_spec.rb +120 -0
  492. data/spec/unit/chef_fs/data_handler/data_bag_item_data_handler.rb +1 -1
  493. data/spec/unit/chef_fs/data_handler/data_handler_base_spec.rb +3 -3
  494. data/spec/unit/chef_fs/diff_spec.rb +45 -45
  495. data/spec/unit/chef_fs/file_pattern_spec.rb +2 -2
  496. data/spec/unit/chef_fs/file_system/repository/directory_spec.rb +2 -2
  497. data/spec/unit/chef_fs/file_system_spec.rb +8 -8
  498. data/spec/unit/chef_fs/parallelizer.rb +12 -12
  499. data/spec/unit/client_spec.rb +15 -15
  500. data/spec/unit/config_fetcher_spec.rb +23 -23
  501. data/spec/unit/config_spec.rb +2 -2
  502. data/spec/unit/cookbook/metadata_spec.rb +81 -81
  503. data/spec/unit/cookbook/synchronizer_spec.rb +171 -171
  504. data/spec/unit/cookbook_loader_spec.rb +10 -5
  505. data/spec/unit/cookbook_site_streaming_uploader_spec.rb +6 -6
  506. data/spec/unit/cookbook_uploader_spec.rb +8 -8
  507. data/spec/unit/cookbook_version_file_specificity_spec.rb +135 -135
  508. data/spec/unit/daemon_spec.rb +4 -4
  509. data/spec/unit/data_bag_item_spec.rb +3 -3
  510. data/spec/unit/data_bag_spec.rb +1 -1
  511. data/spec/unit/data_collector/resource_report_spec.rb +1 -1
  512. data/spec/unit/data_collector_spec.rb +4 -3
  513. data/spec/unit/deprecated_spec.rb +18 -12
  514. data/spec/unit/dsl/audit_spec.rb +1 -1
  515. data/spec/unit/dsl/platform_introspection_spec.rb +16 -16
  516. data/spec/unit/dsl/reboot_pending_spec.rb +1 -1
  517. data/spec/unit/environment_spec.rb +16 -16
  518. data/spec/unit/file_access_control_spec.rb +8 -8
  519. data/spec/unit/file_content_management/deploy/mv_unix_spec.rb +3 -3
  520. data/spec/unit/file_content_management/deploy/mv_windows_spec.rb +26 -26
  521. data/spec/unit/formatters/error_description_spec.rb +39 -39
  522. data/spec/unit/formatters/error_inspectors/compile_error_inspector_spec.rb +16 -16
  523. data/spec/unit/formatters/error_inspectors/cookbook_sync_error_inspector_spec.rb +1 -1
  524. data/spec/unit/formatters/error_inspectors/node_load_error_inspector_spec.rb +1 -1
  525. data/spec/unit/formatters/error_inspectors/registration_error_inspector_spec.rb +1 -1
  526. data/spec/unit/formatters/error_inspectors/resource_failure_inspector_spec.rb +1 -1
  527. data/spec/unit/formatters/error_inspectors/run_list_expansion_error_inspector_spec.rb +5 -5
  528. data/spec/unit/guard_interpreter/resource_guard_interpreter_spec.rb +4 -4
  529. data/spec/unit/handler/json_file_spec.rb +1 -1
  530. data/spec/unit/http/api_versions_spec.rb +1 -1
  531. data/spec/unit/http/authenticator_spec.rb +17 -17
  532. data/spec/unit/http/ssl_policies_spec.rb +1 -1
  533. data/spec/unit/http/validate_content_length_spec.rb +2 -2
  534. data/spec/unit/key_spec.rb +12 -12
  535. data/spec/unit/knife/bootstrap/client_builder_spec.rb +3 -3
  536. data/spec/unit/knife/client_bulk_delete_spec.rb +1 -1
  537. data/spec/unit/knife/client_delete_spec.rb +1 -1
  538. data/spec/unit/knife/client_reregister_spec.rb +1 -1
  539. data/spec/unit/knife/configure_client_spec.rb +4 -4
  540. data/spec/unit/knife/configure_spec.rb +1 -1
  541. data/spec/unit/knife/cookbook_bulk_delete_spec.rb +1 -1
  542. data/spec/unit/knife/cookbook_delete_spec.rb +4 -4
  543. data/spec/unit/knife/cookbook_download_spec.rb +21 -21
  544. data/spec/unit/knife/cookbook_list_spec.rb +7 -7
  545. data/spec/unit/knife/cookbook_show_spec.rb +24 -24
  546. data/spec/unit/knife/cookbook_site_download_spec.rb +23 -23
  547. data/spec/unit/knife/cookbook_site_install_spec.rb +4 -4
  548. data/spec/unit/knife/cookbook_site_share_spec.rb +10 -10
  549. data/spec/unit/knife/cookbook_site_unshare_spec.rb +2 -2
  550. data/spec/unit/knife/cookbook_upload_spec.rb +19 -19
  551. data/spec/unit/knife/core/bootstrap_context_spec.rb +37 -37
  552. data/spec/unit/knife/core/cookbook_scm_repo_spec.rb +20 -20
  553. data/spec/unit/knife/core/object_loader_spec.rb +1 -1
  554. data/spec/unit/knife/core/ui_spec.rb +55 -55
  555. data/spec/unit/knife/data_bag_create_spec.rb +2 -2
  556. data/spec/unit/knife/data_bag_edit_spec.rb +1 -1
  557. data/spec/unit/knife/data_bag_secret_options_spec.rb +5 -5
  558. data/spec/unit/knife/environment_from_file_spec.rb +1 -1
  559. data/spec/unit/knife/key_create_spec.rb +4 -4
  560. data/spec/unit/knife/key_delete_spec.rb +3 -3
  561. data/spec/unit/knife/key_edit_spec.rb +3 -3
  562. data/spec/unit/knife/key_list_spec.rb +3 -3
  563. data/spec/unit/knife/key_show_spec.rb +3 -3
  564. data/spec/unit/knife/node_delete_spec.rb +1 -1
  565. data/spec/unit/knife/node_edit_spec.rb +7 -7
  566. data/spec/unit/knife/node_from_file_spec.rb +1 -1
  567. data/spec/unit/knife/node_run_list_add_spec.rb +1 -1
  568. data/spec/unit/knife/osc_user_edit_spec.rb +1 -1
  569. data/spec/unit/knife/osc_user_reregister_spec.rb +1 -1
  570. data/spec/unit/knife/role_bulk_delete_spec.rb +1 -1
  571. data/spec/unit/knife/role_create_spec.rb +1 -1
  572. data/spec/unit/knife/role_delete_spec.rb +1 -1
  573. data/spec/unit/knife/role_env_run_list_add_spec.rb +4 -4
  574. data/spec/unit/knife/role_env_run_list_clear_spec.rb +1 -1
  575. data/spec/unit/knife/role_env_run_list_remove_spec.rb +1 -1
  576. data/spec/unit/knife/role_env_run_list_replace_spec.rb +1 -1
  577. data/spec/unit/knife/role_env_run_list_set_spec.rb +1 -1
  578. data/spec/unit/knife/role_from_file_spec.rb +1 -1
  579. data/spec/unit/knife/role_run_list_add_spec.rb +4 -4
  580. data/spec/unit/knife/role_run_list_clear_spec.rb +1 -1
  581. data/spec/unit/knife/role_run_list_remove_spec.rb +1 -1
  582. data/spec/unit/knife/role_run_list_replace_spec.rb +1 -1
  583. data/spec/unit/knife/role_run_list_set_spec.rb +1 -1
  584. data/spec/unit/knife/ssh_spec.rb +25 -25
  585. data/spec/unit/knife/ssl_check_spec.rb +23 -23
  586. data/spec/unit/knife/ssl_fetch_spec.rb +11 -11
  587. data/spec/unit/knife/user_delete_spec.rb +1 -1
  588. data/spec/unit/knife/user_reregister_spec.rb +1 -1
  589. data/spec/unit/knife_spec.rb +26 -26
  590. data/spec/unit/log/syslog_spec.rb +1 -1
  591. data/spec/unit/lwrp_spec.rb +4 -4
  592. data/spec/unit/mash_spec.rb +3 -3
  593. data/spec/unit/mixin/api_version_request_handling_spec.rb +16 -16
  594. data/spec/unit/mixin/checksum_spec.rb +1 -1
  595. data/spec/unit/mixin/enforce_ownership_and_permissions_spec.rb +8 -8
  596. data/spec/unit/mixin/homebrew_user_spec.rb +1 -1
  597. data/spec/unit/mixin/params_validate_spec.rb +96 -96
  598. data/spec/unit/mixin/powershell_exec_spec.rb +1 -1
  599. data/spec/unit/mixin/powershell_type_coercions_spec.rb +1 -1
  600. data/spec/unit/mixin/securable_spec.rb +27 -27
  601. data/spec/unit/mixin/shell_out_spec.rb +286 -132
  602. data/spec/unit/mixin/user_context_spec.rb +1 -1
  603. data/spec/unit/mixin/xml_escape_spec.rb +1 -1
  604. data/spec/unit/node/attribute_spec.rb +10 -10
  605. data/spec/unit/node/vivid_mash_spec.rb +3 -3
  606. data/spec/unit/node_map_spec.rb +71 -3
  607. data/spec/unit/node_spec.rb +15 -15
  608. data/spec/unit/org_spec.rb +2 -2
  609. data/spec/unit/platform/query_helpers_spec.rb +26 -26
  610. data/spec/unit/policy_builder/expand_node_object_spec.rb +4 -4
  611. data/spec/unit/policy_builder/policyfile_spec.rb +29 -29
  612. data/spec/unit/property_spec.rb +5 -5
  613. data/spec/unit/provider/apt_repository_spec.rb +19 -19
  614. data/spec/unit/provider/cookbook_file/content_spec.rb +1 -1
  615. data/spec/unit/provider/cookbook_file_spec.rb +1 -1
  616. data/spec/unit/provider/cron/unix_spec.rb +12 -12
  617. data/spec/unit/provider/cron_spec.rb +279 -279
  618. data/spec/unit/provider/dsc_resource_spec.rb +6 -6
  619. data/spec/unit/provider/execute_spec.rb +2 -2
  620. data/spec/unit/provider/file/content_spec.rb +1 -1
  621. data/spec/unit/provider/file_spec.rb +1 -1
  622. data/spec/unit/provider/git_spec.rb +123 -123
  623. data/spec/unit/provider/group/dscl_spec.rb +18 -18
  624. data/spec/unit/provider/group/gpasswd_spec.rb +7 -7
  625. data/spec/unit/provider/group/groupadd_spec.rb +7 -7
  626. data/spec/unit/provider/group/groupmod_spec.rb +13 -13
  627. data/spec/unit/provider/group/pw_spec.rb +4 -4
  628. data/spec/unit/provider/group/suse_spec.rb +2 -2
  629. data/spec/unit/provider/group/usermod_spec.rb +4 -4
  630. data/spec/unit/provider/group_spec.rb +3 -3
  631. data/spec/unit/provider/ifconfig/aix_spec.rb +17 -17
  632. data/spec/unit/provider/ifconfig/debian_spec.rb +16 -16
  633. data/spec/unit/provider/ifconfig_spec.rb +16 -16
  634. data/spec/unit/provider/launchd_spec.rb +52 -52
  635. data/spec/unit/provider/link_spec.rb +7 -7
  636. data/spec/unit/provider/mdadm_spec.rb +3 -3
  637. data/spec/unit/provider/mount/aix_spec.rb +39 -39
  638. data/spec/unit/provider/mount/mount_spec.rb +26 -26
  639. data/spec/unit/provider/mount/solaris_spec.rb +2 -2
  640. data/spec/unit/provider/mount/windows_spec.rb +6 -6
  641. data/spec/unit/provider/ohai_spec.rb +9 -9
  642. data/spec/unit/provider/osx_profile_spec.rb +1 -1
  643. data/spec/unit/provider/package/apt_spec.rb +186 -186
  644. data/spec/unit/provider/package/bff_spec.rb +36 -36
  645. data/spec/unit/provider/package/cab_spec.rb +58 -58
  646. data/spec/unit/provider/package/chocolatey_spec.rb +34 -34
  647. data/spec/unit/provider/package/dpkg_spec.rb +33 -33
  648. data/spec/unit/provider/package/freebsd/pkg_spec.rb +35 -35
  649. data/spec/unit/provider/package/freebsd/pkgng_spec.rb +22 -22
  650. data/spec/unit/provider/package/freebsd/port_spec.rb +21 -21
  651. data/spec/unit/provider/package/homebrew_spec.rb +4 -4
  652. data/spec/unit/provider/package/ips_spec.rb +94 -94
  653. data/spec/unit/provider/package/macports_spec.rb +23 -23
  654. data/spec/unit/provider/package/msu_spec.rb +44 -44
  655. data/spec/unit/provider/package/openbsd_spec.rb +19 -19
  656. data/spec/unit/provider/package/pacman_spec.rb +50 -50
  657. data/spec/unit/provider/package/paludis_spec.rb +33 -33
  658. data/spec/unit/provider/package/portage_spec.rb +25 -25
  659. data/spec/unit/provider/package/powershell_spec.rb +98 -85
  660. data/spec/unit/provider/package/rpm_spec.rb +21 -21
  661. data/spec/unit/provider/package/rubygems_spec.rb +71 -71
  662. data/spec/unit/provider/package/smartos_spec.rb +21 -21
  663. data/spec/unit/provider/package/solaris_spec.rb +38 -38
  664. data/spec/unit/provider/package/windows/exe_spec.rb +1 -1
  665. data/spec/unit/provider/package/windows/msi_spec.rb +1 -1
  666. data/spec/unit/provider/package/windows_spec.rb +11 -4
  667. data/spec/unit/provider/package/zypper_spec.rb +42 -46
  668. data/spec/unit/provider/package_spec.rb +2 -2
  669. data/spec/unit/provider/powershell_script_spec.rb +1 -1
  670. data/spec/unit/provider/registry_key_spec.rb +22 -22
  671. data/spec/unit/provider/remote_file/cache_control_data_spec.rb +7 -7
  672. data/spec/unit/provider/remote_file/content_spec.rb +4 -4
  673. data/spec/unit/provider/remote_file/fetcher_spec.rb +5 -5
  674. data/spec/unit/provider/remote_file/ftp_spec.rb +1 -1
  675. data/spec/unit/provider/remote_file/http_spec.rb +1 -1
  676. data/spec/unit/provider/remote_file/local_file_spec.rb +2 -2
  677. data/spec/unit/provider/remote_file/network_file_spec.rb +3 -3
  678. data/spec/unit/provider/remote_file/sftp_spec.rb +2 -2
  679. data/spec/unit/provider/remote_file_spec.rb +1 -1
  680. data/spec/unit/provider/script_spec.rb +1 -1
  681. data/spec/unit/provider/service/aix_service_spec.rb +8 -8
  682. data/spec/unit/provider/service/aixinit_service_spec.rb +3 -3
  683. data/spec/unit/provider/service/arch_service_spec.rb +21 -21
  684. data/spec/unit/provider/service/debian_service_spec.rb +2 -2
  685. data/spec/unit/provider/service/freebsd_service_spec.rb +30 -30
  686. data/spec/unit/provider/service/gentoo_service_spec.rb +1 -1
  687. data/spec/unit/provider/service/init_service_spec.rb +14 -14
  688. data/spec/unit/provider/service/insserv_service_spec.rb +2 -2
  689. data/spec/unit/provider/service/invokercd_service_spec.rb +17 -17
  690. data/spec/unit/provider/service/macosx_spec.rb +59 -59
  691. data/spec/unit/provider/service/openbsd_service_spec.rb +6 -6
  692. data/spec/unit/provider/service/redhat_spec.rb +27 -27
  693. data/spec/unit/provider/service/simple_service_spec.rb +14 -14
  694. data/spec/unit/provider/service/solaris_smf_service_spec.rb +19 -19
  695. data/spec/unit/provider/service/systemd_service_spec.rb +13 -13
  696. data/spec/unit/provider/service/upstart_service_spec.rb +5 -5
  697. data/spec/unit/provider/service/windows_spec.rb +38 -38
  698. data/spec/unit/provider/service_spec.rb +3 -3
  699. data/spec/unit/provider/subversion_spec.rb +13 -13
  700. data/spec/unit/provider/systemd_unit_spec.rb +10 -10
  701. data/spec/unit/provider/template/content_spec.rb +44 -44
  702. data/spec/unit/provider/template_spec.rb +2 -2
  703. data/spec/unit/provider/user/aix_spec.rb +5 -5
  704. data/spec/unit/provider/user/dscl_spec.rb +12 -12
  705. data/spec/unit/provider/user/pw_spec.rb +12 -12
  706. data/spec/unit/provider/user/solaris_spec.rb +6 -6
  707. data/spec/unit/provider/windows_env_spec.rb +2 -2
  708. data/spec/unit/provider/windows_task_spec.rb +16 -16
  709. data/spec/unit/provider/zypper_repository_spec.rb +7 -7
  710. data/spec/unit/provider_resolver_spec.rb +3 -3
  711. data/spec/unit/recipe_spec.rb +13 -13
  712. data/spec/unit/resource/chocolatey_config_spec.rb +98 -0
  713. data/spec/unit/resource/chocolatey_source_spec.rb +102 -0
  714. data/spec/unit/resource/conditional_spec.rb +1 -1
  715. data/spec/unit/resource/cookbook_file_spec.rb +3 -3
  716. data/spec/unit/resource/dnf_package_spec.rb +3 -3
  717. data/spec/unit/resource/dsc_script_spec.rb +10 -10
  718. data/spec/unit/resource/execute_spec.rb +2 -2
  719. data/spec/unit/resource/file/verification/systemd_unit_spec.rb +1 -1
  720. data/spec/unit/resource/file/verification_spec.rb +1 -1
  721. data/spec/unit/resource/file_spec.rb +3 -3
  722. data/spec/unit/resource/freebsd_package_spec.rb +5 -4
  723. data/spec/unit/resource/group_spec.rb +4 -4
  724. data/spec/unit/resource/kernel_module_spec.rb +48 -0
  725. data/spec/unit/resource/mount_spec.rb +13 -3
  726. data/spec/unit/resource/package_spec.rb +2 -2
  727. data/spec/unit/resource/powershell_package_source_spec.rb +219 -0
  728. data/spec/unit/resource/powershell_package_spec.rb +10 -1
  729. data/spec/unit/resource/powershell_script_spec.rb +8 -8
  730. data/spec/unit/resource/registry_key_spec.rb +19 -19
  731. data/spec/unit/resource/remote_file_spec.rb +2 -2
  732. data/spec/unit/resource/resource_notification_spec.rb +8 -8
  733. data/spec/unit/resource/service_spec.rb +3 -3
  734. data/spec/unit/resource/ssh_known_hosts_entry_spec.rb +55 -0
  735. data/spec/unit/resource/template_spec.rb +2 -2
  736. data/spec/unit/resource/user_spec.rb +2 -2
  737. data/spec/unit/resource/windows_feature_dism.rb +5 -5
  738. data/spec/unit/resource/windows_feature_powershell.rb +27 -6
  739. data/spec/unit/resource/yum_package_spec.rb +3 -3
  740. data/spec/unit/resource_collection/resource_set_spec.rb +6 -6
  741. data/spec/unit/resource_collection_spec.rb +5 -5
  742. data/spec/unit/resource_definition_spec.rb +2 -2
  743. data/spec/unit/resource_inspector_spec.rb +3 -3
  744. data/spec/unit/resource_reporter_spec.rb +24 -24
  745. data/spec/unit/resource_spec.rb +65 -31
  746. data/spec/unit/role_spec.rb +22 -22
  747. data/spec/unit/run_context_spec.rb +1 -1
  748. data/spec/unit/run_list/run_list_item_spec.rb +3 -3
  749. data/spec/unit/run_list/versioned_recipe_list_spec.rb +12 -12
  750. data/spec/unit/run_list_spec.rb +6 -6
  751. data/spec/unit/runner_spec.rb +4 -4
  752. data/spec/unit/scan_access_control_spec.rb +3 -3
  753. data/spec/unit/shell/model_wrapper_spec.rb +4 -4
  754. data/spec/unit/shell/shell_ext_spec.rb +4 -4
  755. data/spec/unit/shell/shell_session_spec.rb +28 -28
  756. data/spec/unit/user_spec.rb +2 -2
  757. data/spec/unit/user_v1_spec.rb +25 -25
  758. data/spec/unit/util/diff_spec.rb +1 -1
  759. data/spec/unit/util/dsc/configuration_generator_spec.rb +4 -4
  760. data/spec/unit/util/dsc/lcm_output_parser_spec.rb +105 -105
  761. data/spec/unit/util/dsc/local_configuration_manager_spec.rb +16 -16
  762. data/spec/unit/util/file_edit_spec.rb +38 -38
  763. data/spec/unit/util/powershell/cmdlet_spec.rb +1 -1
  764. data/spec/unit/util/selinux_spec.rb +10 -10
  765. data/spec/unit/win32/registry_spec.rb +3 -3
  766. data/spec/unit/windows_service_spec.rb +2 -2
  767. data/tasks/cbgb.rb +3 -3
  768. data/tasks/dependencies.rb +6 -8
  769. data/tasks/maintainers.rb +7 -7
  770. data/tasks/rspec.rb +2 -2
  771. metadata +24 -83
  772. data/acceptance/.shared/kitchen_acceptance/.kitchen.digitalocean.yml +0 -33
  773. data/acceptance/.shared/kitchen_acceptance/.kitchen.ec2.yml +0 -272
  774. data/acceptance/.shared/kitchen_acceptance/.kitchen.vagrant.yml +0 -57
  775. data/acceptance/.shared/kitchen_acceptance/libraries/kitchen.rb +0 -68
  776. data/acceptance/.shared/kitchen_acceptance/metadata.rb +0 -1
  777. data/acceptance/Gemfile +0 -19
  778. data/acceptance/Gemfile.lock +0 -266
  779. data/acceptance/README.md +0 -137
  780. data/acceptance/basics/.acceptance/acceptance-cookbook/.gitignore +0 -2
  781. data/acceptance/basics/.acceptance/acceptance-cookbook/metadata.rb +0 -3
  782. data/acceptance/basics/.acceptance/acceptance-cookbook/recipes/destroy.rb +0 -1
  783. data/acceptance/basics/.acceptance/acceptance-cookbook/recipes/provision.rb +0 -1
  784. data/acceptance/basics/.acceptance/acceptance-cookbook/recipes/verify.rb +0 -1
  785. data/acceptance/basics/.kitchen.yml +0 -4
  786. data/acceptance/basics/test/integration/chef-current-install/serverspec/chef_client_spec.rb +0 -19
  787. data/acceptance/basics/test/integration/chef-current-install/serverspec/spec_helper.rb +0 -6
  788. data/acceptance/basics/test/integration/helpers/serverspec/Gemfile +0 -8
  789. data/acceptance/data-collector/.acceptance/acceptance-cookbook/.gitignore +0 -2
  790. data/acceptance/data-collector/.acceptance/acceptance-cookbook/metadata.rb +0 -3
  791. data/acceptance/data-collector/.acceptance/acceptance-cookbook/recipes/destroy.rb +0 -2
  792. data/acceptance/data-collector/.acceptance/acceptance-cookbook/recipes/provision.rb +0 -2
  793. data/acceptance/data-collector/.acceptance/acceptance-cookbook/recipes/verify.rb +0 -2
  794. data/acceptance/data-collector/.acceptance/data-collector-test/.gitignore +0 -16
  795. data/acceptance/data-collector/.acceptance/data-collector-test/Berksfile +0 -3
  796. data/acceptance/data-collector/.acceptance/data-collector-test/files/default/api.rb +0 -101
  797. data/acceptance/data-collector/.acceptance/data-collector-test/files/default/apigemfile +0 -3
  798. data/acceptance/data-collector/.acceptance/data-collector-test/files/default/client-rb-both-mode.rb +0 -4
  799. data/acceptance/data-collector/.acceptance/data-collector-test/files/default/client-rb-client-mode.rb +0 -4
  800. data/acceptance/data-collector/.acceptance/data-collector-test/files/default/client-rb-no-endpoint.rb +0 -2
  801. data/acceptance/data-collector/.acceptance/data-collector-test/files/default/client-rb-solo-mode.rb +0 -4
  802. data/acceptance/data-collector/.acceptance/data-collector-test/files/default/config.ru +0 -2
  803. data/acceptance/data-collector/.acceptance/data-collector-test/metadata.rb +0 -7
  804. data/acceptance/data-collector/.acceptance/data-collector-test/recipes/default.rb +0 -44
  805. data/acceptance/data-collector/.kitchen.yml +0 -9
  806. data/acceptance/data-collector/Berksfile +0 -3
  807. data/acceptance/data-collector/test/integration/default/serverspec/default_spec.rb +0 -208
  808. data/acceptance/data-collector/test/integration/helpers/serverspec/Gemfile +0 -8
  809. data/acceptance/omnitruck/.acceptance/acceptance-cookbook/.gitignore +0 -2
  810. data/acceptance/omnitruck/.acceptance/acceptance-cookbook/metadata.rb +0 -1
  811. data/acceptance/omnitruck/.acceptance/acceptance-cookbook/recipes/destroy.rb +0 -1
  812. data/acceptance/omnitruck/.acceptance/acceptance-cookbook/recipes/provision.rb +0 -1
  813. data/acceptance/omnitruck/.acceptance/acceptance-cookbook/recipes/verify.rb +0 -61
  814. data/acceptance/top-cookbooks/.acceptance/acceptance-cookbook/.gitignore +0 -2
  815. data/acceptance/top-cookbooks/.acceptance/acceptance-cookbook/libraries/cookbook_kitchen.rb +0 -43
  816. data/acceptance/top-cookbooks/.acceptance/acceptance-cookbook/libraries/top_cookbooks.rb +0 -41
  817. data/acceptance/top-cookbooks/.acceptance/acceptance-cookbook/metadata.rb +0 -3
  818. data/acceptance/top-cookbooks/.acceptance/acceptance-cookbook/recipes/destroy.rb +0 -1
  819. data/acceptance/top-cookbooks/.acceptance/acceptance-cookbook/recipes/provision.rb +0 -1
  820. data/acceptance/top-cookbooks/.acceptance/acceptance-cookbook/recipes/verify.rb +0 -1
  821. data/acceptance/top-cookbooks/.gitignore +0 -1
  822. data/acceptance/top-cookbooks/.kitchen.chocolatey.yml +0 -6
  823. data/acceptance/top-cookbooks/.kitchen.iis.yml +0 -4
  824. data/acceptance/top-cookbooks/.kitchen.learn-the-basics-rhel.yml +0 -7
  825. data/acceptance/top-cookbooks/.kitchen.learn-the-basics-ubuntu.yml +0 -7
  826. data/acceptance/top-cookbooks/.kitchen.learn-the-basics-windows.yml +0 -7
  827. data/acceptance/top-cookbooks/.kitchen.powershell.yml +0 -4
  828. data/acceptance/top-cookbooks/.kitchen.sql_server.yml +0 -5
  829. data/acceptance/top-cookbooks/.kitchen.winbox.yml +0 -8
  830. data/acceptance/top-cookbooks/.kitchen.windows.yml +0 -38
  831. data/acceptance/trivial/.acceptance/acceptance-cookbook/.gitignore +0 -2
  832. data/acceptance/trivial/.acceptance/acceptance-cookbook/metadata.rb +0 -2
  833. data/acceptance/trivial/.acceptance/acceptance-cookbook/recipes/destroy.rb +0 -1
  834. data/acceptance/trivial/.acceptance/acceptance-cookbook/recipes/provision.rb +0 -1
  835. data/acceptance/trivial/.acceptance/acceptance-cookbook/recipes/verify.rb +0 -1
  836. data/acceptance/trivial/.kitchen.yml +0 -7
  837. data/acceptance/trivial/test/integration/chef-current-install/inspec/chef_client_spec.rb +0 -5
  838. data/acceptance/windows-service/.acceptance/acceptance-cookbook/.gitignore +0 -2
  839. data/acceptance/windows-service/.acceptance/acceptance-cookbook/metadata.rb +0 -2
  840. data/acceptance/windows-service/.acceptance/acceptance-cookbook/recipes/destroy.rb +0 -1
  841. data/acceptance/windows-service/.acceptance/acceptance-cookbook/recipes/provision.rb +0 -1
  842. data/acceptance/windows-service/.acceptance/acceptance-cookbook/recipes/verify.rb +0 -1
  843. data/acceptance/windows-service/.kitchen.yml +0 -7
  844. data/acceptance/windows-service/test/integration/chef-windows-service/inspec/chef_windows_service_spec.rb +0 -58
  845. data/distro/powershell/chef/Chef.PowerShell.dll +0 -0
@@ -30,7 +30,7 @@ describe Chef::Provider::Mount::Mount do
30
30
  @new_resource.device_type :device
31
31
  @new_resource.fstype "ext3"
32
32
 
33
- @new_resource.supports :remount => false
33
+ @new_resource.supports remount: false
34
34
 
35
35
  @provider = Chef::Provider::Mount::Mount.new(@new_resource, @run_context)
36
36
 
@@ -42,7 +42,7 @@ describe Chef::Provider::Mount::Mount do
42
42
 
43
43
  describe "when discovering the current fs state" do
44
44
  before do
45
- allow(@provider).to receive(:shell_out!).and_return(OpenStruct.new(:stdout => ""))
45
+ allow(@provider).to receive(:shell_out!).and_return(OpenStruct.new(stdout: ""))
46
46
  allow(::File).to receive(:foreach).with("/etc/fstab")
47
47
  end
48
48
 
@@ -54,10 +54,10 @@ describe Chef::Provider::Mount::Mount do
54
54
  end
55
55
 
56
56
  it "should accept device_type :uuid", :not_supported_on_solaris do
57
- @status = double(:stdout => "/dev/sdz1\n", :exitstatus => 1)
57
+ @status = double(stdout: "/dev/sdz1\n", exitstatus: 1)
58
58
  @new_resource.device_type :uuid
59
59
  @new_resource.device "d21afe51-a0fe-4dc6-9152-ac733763ae0a"
60
- @stdout_findfs = double("STDOUT", :first => "/dev/sdz1")
60
+ @stdout_findfs = double("STDOUT", first: "/dev/sdz1")
61
61
  expect(@provider).to receive(:shell_out).with("/sbin/findfs UUID=d21afe51-a0fe-4dc6-9152-ac733763ae0a").and_return(@status)
62
62
  @provider.load_current_resource
63
63
  @provider.mountable?
@@ -73,7 +73,7 @@ describe Chef::Provider::Mount::Mount do
73
73
 
74
74
  it "should ignore trailing slash and set mounted to true for network mount (#{type})" do
75
75
  @new_resource.device fs_spec
76
- allow(@provider).to receive(:shell_out!).and_return(OpenStruct.new(:stdout => "#{fs_spec}/ on /tmp/foo type #{type} (rw)\n"))
76
+ allow(@provider).to receive(:shell_out!).and_return(OpenStruct.new(stdout: "#{fs_spec}/ on /tmp/foo type #{type} (rw)\n"))
77
77
  @provider.load_current_resource
78
78
  expect(@provider.current_resource.mounted).to be_truthy
79
79
  end
@@ -94,7 +94,7 @@ describe Chef::Provider::Mount::Mount do
94
94
  end
95
95
 
96
96
  it "should raise an error if the mount device (uuid) does not exist", :not_supported_on_solaris do
97
- status = double(:stdout => "", :exitstatus => 1)
97
+ status = double(stdout: "", exitstatus: 1)
98
98
  @new_resource.device_type :uuid
99
99
  @new_resource.device "d21afe51-a0fe-4dc6-9152-ac733763ae0a"
100
100
  expect(@provider).to receive(:shell_out).with("/sbin/findfs UUID=d21afe51-a0fe-4dc6-9152-ac733763ae0a").and_return(status)
@@ -121,13 +121,13 @@ describe Chef::Provider::Mount::Mount do
121
121
  end
122
122
 
123
123
  it "should set mounted true if the mount point is found in the mounts list" do
124
- allow(@provider).to receive(:shell_out!).and_return(OpenStruct.new(:stdout => "/dev/sdz1 on /tmp/foo type ext3 (rw)\n"))
124
+ allow(@provider).to receive(:shell_out!).and_return(OpenStruct.new(stdout: "/dev/sdz1 on /tmp/foo type ext3 (rw)\n"))
125
125
  @provider.load_current_resource()
126
126
  expect(@provider.current_resource.mounted).to be_truthy
127
127
  end
128
128
 
129
129
  it "should set mounted false if another mount point beginning with the same path is found in the mounts list" do
130
- allow(@provider).to receive(:shell_out!).and_return(OpenStruct.new(:stdout => "/dev/sdz1 on /tmp/foobar type ext3 (rw)\n"))
130
+ allow(@provider).to receive(:shell_out!).and_return(OpenStruct.new(stdout: "/dev/sdz1 on /tmp/foobar type ext3 (rw)\n"))
131
131
  @provider.load_current_resource()
132
132
  expect(@provider.current_resource.mounted).to be_falsey
133
133
  end
@@ -136,10 +136,10 @@ describe Chef::Provider::Mount::Mount do
136
136
  # expand the target path to correct specs on Windows
137
137
  target = ::File.expand_path("/dev/mapper/target")
138
138
 
139
- allow(::File).to receive(:symlink?).with("#{@new_resource.device}").and_return(true)
140
- allow(::File).to receive(:readlink).with("#{@new_resource.device}").and_return(target)
139
+ allow(::File).to receive(:symlink?).with((@new_resource.device).to_s).and_return(true)
140
+ allow(::File).to receive(:readlink).with((@new_resource.device).to_s).and_return(target)
141
141
 
142
- allow(@provider).to receive(:shell_out!).and_return(OpenStruct.new(:stdout => "#{target} on /tmp/foo type ext3 (rw)\n"))
142
+ allow(@provider).to receive(:shell_out!).and_return(OpenStruct.new(stdout: "#{target} on /tmp/foo type ext3 (rw)\n"))
143
143
  @provider.load_current_resource()
144
144
  expect(@provider.current_resource.mounted).to be_truthy
145
145
  end
@@ -150,10 +150,10 @@ describe Chef::Provider::Mount::Mount do
150
150
  # expand the target path to correct specs on Windows
151
151
  absolute_target = ::File.expand_path("/dev/xsdz1")
152
152
 
153
- allow(::File).to receive(:symlink?).with("#{@new_resource.device}").and_return(true)
154
- allow(::File).to receive(:readlink).with("#{@new_resource.device}").and_return(target)
153
+ allow(::File).to receive(:symlink?).with((@new_resource.device).to_s).and_return(true)
154
+ allow(::File).to receive(:readlink).with((@new_resource.device).to_s).and_return(target)
155
155
 
156
- allow(@provider).to receive(:shell_out!).and_return(OpenStruct.new(:stdout => "#{absolute_target} on /tmp/foo type ext3 (rw)\n"))
156
+ allow(@provider).to receive(:shell_out!).and_return(OpenStruct.new(stdout: "#{absolute_target} on /tmp/foo type ext3 (rw)\n"))
157
157
  @provider.load_current_resource()
158
158
  expect(@provider.current_resource.mounted).to be_truthy
159
159
  end
@@ -162,7 +162,7 @@ describe Chef::Provider::Mount::Mount do
162
162
  mount = "/dev/sdy1 on #{@new_resource.mount_point} type ext3 (rw)\n"
163
163
  mount << "#{@new_resource.device} on #{@new_resource.mount_point} type ext3 (rw)\n"
164
164
 
165
- allow(@provider).to receive(:shell_out!).and_return(OpenStruct.new(:stdout => mount))
165
+ allow(@provider).to receive(:shell_out!).and_return(OpenStruct.new(stdout: mount))
166
166
  @provider.load_current_resource()
167
167
  expect(@provider.current_resource.mounted).to be_truthy
168
168
  end
@@ -171,13 +171,13 @@ describe Chef::Provider::Mount::Mount do
171
171
  mount = "#{@new_resource.device} on #{@new_resource.mount_point} type ext3 (rw)\n"
172
172
  mount << "/dev/sdy1 on #{@new_resource.mount_point} type ext3 (rw)\n"
173
173
 
174
- allow(@provider).to receive(:shell_out!).and_return(OpenStruct.new(:stdout => mount))
174
+ allow(@provider).to receive(:shell_out!).and_return(OpenStruct.new(stdout: mount))
175
175
  @provider.load_current_resource()
176
176
  expect(@provider.current_resource.mounted).to be_falsey
177
177
  end
178
178
 
179
179
  it "mounted should be false if the mount point is not found in the mounts list" do
180
- allow(@provider).to receive(:shell_out!).and_return(OpenStruct.new(:stdout => "/dev/sdy1 on /tmp/foo type ext3 (rw)\n"))
180
+ allow(@provider).to receive(:shell_out!).and_return(OpenStruct.new(stdout: "/dev/sdy1 on /tmp/foo type ext3 (rw)\n"))
181
181
  @provider.load_current_resource()
182
182
  expect(@provider.current_resource.mounted).to be_falsey
183
183
  end
@@ -205,8 +205,8 @@ describe Chef::Provider::Mount::Mount do
205
205
  it "should set enabled to true if the symlink target is in fstab" do
206
206
  target = "/dev/mapper/target"
207
207
 
208
- allow(::File).to receive(:symlink?).with("#{@new_resource.device}").and_return(true)
209
- allow(::File).to receive(:readlink).with("#{@new_resource.device}").and_return(target)
208
+ allow(::File).to receive(:symlink?).with((@new_resource.device).to_s).and_return(true)
209
+ allow(::File).to receive(:readlink).with((@new_resource.device).to_s).and_return(target)
210
210
 
211
211
  fstab = "/dev/sdz1 /tmp/foo ext3 defaults 1 2\n"
212
212
 
@@ -219,8 +219,8 @@ describe Chef::Provider::Mount::Mount do
219
219
  it "should set enabled to true if the symlink target is relative and is in fstab - CHEF-4957" do
220
220
  target = "xsdz1"
221
221
 
222
- allow(::File).to receive(:symlink?).with("#{@new_resource.device}").and_return(true)
223
- allow(::File).to receive(:readlink).with("#{@new_resource.device}").and_return(target)
222
+ allow(::File).to receive(:symlink?).with((@new_resource.device).to_s).and_return(true)
223
+ allow(::File).to receive(:readlink).with((@new_resource.device).to_s).and_return(target)
224
224
 
225
225
  fstab = "/dev/sdz1 /tmp/foo ext3 defaults 1 2\n"
226
226
 
@@ -307,7 +307,7 @@ describe Chef::Provider::Mount::Mount do
307
307
  end
308
308
 
309
309
  it "should mount the filesystem specified by uuid", :not_supported_on_solaris do
310
- status = double(:stdout => "/dev/sdz1\n", :exitstatus => 1)
310
+ status = double(stdout: "/dev/sdz1\n", exitstatus: 1)
311
311
  @new_resource.device "d21afe51-a0fe-4dc6-9152-ac733763ae0a"
312
312
  @new_resource.device_type :uuid
313
313
  allow(@provider).to receive(:shell_out).with("/sbin/findfs UUID=d21afe51-a0fe-4dc6-9152-ac733763ae0a").and_return(status)
@@ -341,14 +341,14 @@ describe Chef::Provider::Mount::Mount do
341
341
 
342
342
  describe "remount_fs" do
343
343
  it "should use mount -o remount if remount is supported" do
344
- @new_resource.supports({ :remount => true })
344
+ @new_resource.supports({ remount: true })
345
345
  @current_resource.mounted(true)
346
346
  expect(@provider).to receive(:shell_out!).with("mount -o remount,defaults #{@new_resource.mount_point}")
347
347
  @provider.remount_fs
348
348
  end
349
349
 
350
350
  it "should use mount -o remount with new mount options if remount is supported" do
351
- @new_resource.supports({ :remount => true })
351
+ @new_resource.supports({ remount: true })
352
352
  options = "rw,noexec,noauto"
353
353
  @new_resource.options(%w{rw noexec noauto})
354
354
  @current_resource.mounted(true)
@@ -357,7 +357,7 @@ describe Chef::Provider::Mount::Mount do
357
357
  end
358
358
 
359
359
  it "should umount and mount if remount is not supported" do
360
- @new_resource.supports({ :remount => false })
360
+ @new_resource.supports({ remount: false })
361
361
  @current_resource.mounted(true)
362
362
  expect(@provider).to receive(:umount_fs)
363
363
  expect(@provider).to receive(:sleep).with(1)
@@ -499,7 +499,7 @@ describe Chef::Provider::Mount::Mount do
499
499
  context "when the device is described differently", :not_supported_on_solaris do
500
500
  it "should update the existing line" do
501
501
  @current_resource.enabled(true)
502
- status = double(:stdout => "/dev/sdz1\n", :exitstatus => 1)
502
+ status = double(stdout: "/dev/sdz1\n", exitstatus: 1)
503
503
  expect(@provider).to receive(:shell_out).with("/sbin/findfs UUID=d21afe51-a0fe-4dc6-9152-ac733763ae0a").and_return(status)
504
504
 
505
505
  filesystems = [%q{/dev/sdy1 /tmp/foo ext3 defaults 1 2},
@@ -48,7 +48,7 @@ describe Chef::Provider::Mount::Solaris, :unix_only do
48
48
  new_resource.fsck_device fsck_device
49
49
  new_resource.fstype fstype
50
50
  new_resource.options options
51
- new_resource.supports :remount => false
51
+ new_resource.supports remount: false
52
52
  new_resource
53
53
  end
54
54
 
@@ -92,7 +92,7 @@ describe Chef::Provider::Mount::Solaris, :unix_only do
92
92
 
93
93
  before do
94
94
  stub_const("Chef::Provider::Mount::Solaris::VFSTAB", vfstab_file.path )
95
- allow(provider).to receive(:shell_out!).with("mount -v").and_return(OpenStruct.new(:stdout => mount_output))
95
+ allow(provider).to receive(:shell_out!).with("mount -v").and_return(OpenStruct.new(stdout: mount_output))
96
96
  allow(File).to receive(:symlink?).with(device).and_return(false)
97
97
  allow(File).to receive(:exist?).and_call_original # Tempfile.open on ruby 1.8.7 calls File.exist?
98
98
  allow(File).to receive(:exist?).with(device).and_return(true)
@@ -29,8 +29,8 @@ class Chef
29
29
  end
30
30
  end
31
31
 
32
- GUID = "\\\\?\\Volume{578e72b5-6e70-11df-b5c5-000c29d4a7d9}\\"
33
- REMOTE = "\\\\server-name\\path"
32
+ GUID = "\\\\?\\Volume{578e72b5-6e70-11df-b5c5-000c29d4a7d9}\\".freeze
33
+ REMOTE = "\\\\server-name\\path".freeze
34
34
 
35
35
  describe Chef::Provider::Mount::Windows do
36
36
  before(:each) do
@@ -99,10 +99,10 @@ describe Chef::Provider::Mount::Windows do
99
99
  end
100
100
 
101
101
  it "should mount the filesystem if it is not mounted" do
102
- expect(@vol).to receive(:add).with(:remote => @new_resource.device,
103
- :username => @new_resource.username,
104
- :domainname => @new_resource.domain,
105
- :password => @new_resource.password)
102
+ expect(@vol).to receive(:add).with(remote: @new_resource.device,
103
+ username: @new_resource.username,
104
+ domainname: @new_resource.domain,
105
+ password: @new_resource.password)
106
106
  @provider.mount_fs
107
107
  end
108
108
 
@@ -29,16 +29,16 @@ describe Chef::Provider::Ohai do
29
29
  @platform_version = "example-platform"
30
30
  Chef::Config[:node_name] = @fqdn
31
31
  mock_ohai = {
32
- :fqdn => @fqdn,
33
- :hostname => @hostname,
34
- :platform => @platform,
35
- :platform_version => @platform_version,
36
- :data => {
37
- :origdata => "somevalue",
32
+ fqdn: @fqdn,
33
+ hostname: @hostname,
34
+ platform: @platform,
35
+ platform_version: @platform_version,
36
+ data: {
37
+ origdata: "somevalue",
38
38
  },
39
- :data2 => {
40
- :origdata => "somevalue",
41
- :newdata => "somevalue",
39
+ data2: {
40
+ origdata: "somevalue",
41
+ newdata: "somevalue",
42
42
  },
43
43
  }
44
44
  allow(mock_ohai).to receive(:all_plugins).and_return(true)
@@ -20,7 +20,7 @@ require "spec_helper"
20
20
 
21
21
  describe Chef::Provider::OsxProfile do
22
22
  let(:shell_out_success) do
23
- double("shell_out", :exitstatus => 0, :error? => false)
23
+ double("shell_out", exitstatus: 0, error?: false)
24
24
  end
25
25
  describe "action_create" do
26
26
  let(:node) { Chef::Node.new }
@@ -1,6 +1,6 @@
1
1
  #
2
2
  # Author:: Adam Jacob (<adam@chef.io>)
3
- # Copyright:: Copyright 2008-2017, Chef Software Inc.
3
+ # Copyright:: Copyright 2008-2018, 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");
@@ -31,29 +31,29 @@ describe Chef::Provider::Package::Apt do
31
31
  allow(@run_context).to receive(:logger).and_return(logger)
32
32
  @new_resource = Chef::Resource::AptPackage.new("irssi", @run_context)
33
33
 
34
- @status = double("Status", :exitstatus => 0)
34
+ @status = double("Status", exitstatus: 0)
35
35
  @provider = Chef::Provider::Package::Apt.new(@new_resource, @run_context)
36
36
  @stdin = StringIO.new
37
- @stdout = <<-PKG_STATUS
38
- irssi:
39
- Installed: (none)
40
- Candidate: 0.8.14-1ubuntu4
41
- Version table:
42
- 0.8.14-1ubuntu4 0
43
- 500 http://us.archive.ubuntu.com/ubuntu/ lucid/main Packages
37
+ @stdout = <<~PKG_STATUS
38
+ irssi:
39
+ Installed: (none)
40
+ Candidate: 0.8.14-1ubuntu4
41
+ Version table:
42
+ 0.8.14-1ubuntu4 0
43
+ 500 http://us.archive.ubuntu.com/ubuntu/ lucid/main Packages
44
44
  PKG_STATUS
45
45
  @stderr = ""
46
- @shell_out = OpenStruct.new(:stdout => @stdout, :stdin => @stdin, :stderr => @stderr, :status => @status, :exitstatus => 0)
46
+ @shell_out = OpenStruct.new(stdout: @stdout, stdin: @stdin, stderr: @stderr, status: @status, exitstatus: 0)
47
47
  @timeout = 900
48
48
  end
49
49
 
50
50
  describe "when loading current resource" do
51
51
 
52
52
  it "should create a current resource with the name of the new_resource" do
53
- expect(@provider).to receive(:shell_out!).with(
53
+ expect(@provider).to receive(:shell_out_compacted!).with(
54
54
  "apt-cache", "policy", @new_resource.package_name,
55
- :env => { "DEBIAN_FRONTEND" => "noninteractive" },
56
- :timeout => @timeout
55
+ env: { "DEBIAN_FRONTEND" => "noninteractive" },
56
+ timeout: @timeout
57
57
  ).and_return(@shell_out)
58
58
  @provider.load_current_resource
59
59
 
@@ -65,19 +65,19 @@ irssi:
65
65
  end
66
66
 
67
67
  it "should set the installed version if package has one" do
68
- @stdout.replace(<<-INSTALLED)
69
- sudo:
70
- Installed: 1.7.2p1-1ubuntu5.3
71
- Candidate: 1.7.2p1-1ubuntu5.3
72
- Version table:
73
- *** 1.7.2p1-1ubuntu5.3 0
74
- 500 http://us.archive.ubuntu.com/ubuntu/ lucid-updates/main Packages
75
- 500 http://security.ubuntu.com/ubuntu/ lucid-security/main Packages
76
- 100 /var/lib/dpkg/status
77
- 1.7.2p1-1ubuntu5 0
78
- 500 http://us.archive.ubuntu.com/ubuntu/ lucid/main Packages
68
+ @stdout.replace(<<~INSTALLED)
69
+ sudo:
70
+ Installed: 1.7.2p1-1ubuntu5.3
71
+ Candidate: 1.7.2p1-1ubuntu5.3
72
+ Version table:
73
+ *** 1.7.2p1-1ubuntu5.3 0
74
+ 500 http://us.archive.ubuntu.com/ubuntu/ lucid-updates/main Packages
75
+ 500 http://security.ubuntu.com/ubuntu/ lucid-security/main Packages
76
+ 100 /var/lib/dpkg/status
77
+ 1.7.2p1-1ubuntu5 0
78
+ 500 http://us.archive.ubuntu.com/ubuntu/ lucid/main Packages
79
79
  INSTALLED
80
- expect(@provider).to receive(:shell_out!).and_return(@shell_out)
80
+ expect(@provider).to receive(:shell_out_compacted!).and_return(@shell_out)
81
81
  @provider.load_current_resource
82
82
  expect(@provider.current_resource.version).to eq(["1.7.2p1-1ubuntu5.3"])
83
83
  expect(@provider.candidate_version).to eql(["1.7.2p1-1ubuntu5.3"])
@@ -86,23 +86,23 @@ sudo:
86
86
  # it is the superclasses responsibility to throw most exceptions
87
87
  it "if the package does not exist in the cache sets installed + candidate version to nil" do
88
88
  @new_resource.package_name("conic-smarms")
89
- policy_out = <<-POLICY_STDOUT
90
- N: Unable to locate package conic-smarms
89
+ policy_out = <<~POLICY_STDOUT
90
+ N: Unable to locate package conic-smarms
91
91
  POLICY_STDOUT
92
- policy = double(:stdout => policy_out, :exitstatus => 0)
93
- expect(@provider).to receive(:shell_out!).with(
92
+ policy = double(stdout: policy_out, exitstatus: 0)
93
+ expect(@provider).to receive(:shell_out_compacted!).with(
94
94
  "apt-cache", "policy", "conic-smarms",
95
- :env => { "DEBIAN_FRONTEND" => "noninteractive" },
96
- :timeout => @timeout
95
+ env: { "DEBIAN_FRONTEND" => "noninteractive" },
96
+ timeout: @timeout
97
97
  ).and_return(policy)
98
- showpkg_out = <<-SHOWPKG_STDOUT
99
- N: Unable to locate package conic-smarms
98
+ showpkg_out = <<~SHOWPKG_STDOUT
99
+ N: Unable to locate package conic-smarms
100
100
  SHOWPKG_STDOUT
101
- showpkg = double(:stdout => showpkg_out, :exitstatus => 0)
102
- expect(@provider).to receive(:shell_out!).with(
101
+ showpkg = double(stdout: showpkg_out, exitstatus: 0)
102
+ expect(@provider).to receive(:shell_out_compacted!).with(
103
103
  "apt-cache", "showpkg", "conic-smarms",
104
- :env => { "DEBIAN_FRONTEND" => "noninteractive" },
105
- :timeout => @timeout
104
+ env: { "DEBIAN_FRONTEND" => "noninteractive" },
105
+ timeout: @timeout
106
106
  ).and_return(showpkg)
107
107
  @provider.load_current_resource
108
108
  end
@@ -111,104 +111,104 @@ N: Unable to locate package conic-smarms
111
111
  # list of virtual packages: http://www.debian.org/doc/packaging-manuals/virtual-package-names-list.txt
112
112
  it "should not install the virtual package there is a single provider package and it is installed" do
113
113
  @new_resource.package_name("libmysqlclient15-dev")
114
- virtual_package_out = <<-VPKG_STDOUT
115
- libmysqlclient15-dev:
116
- Installed: (none)
117
- Candidate: (none)
118
- Version table:
114
+ virtual_package_out = <<~VPKG_STDOUT
115
+ libmysqlclient15-dev:
116
+ Installed: (none)
117
+ Candidate: (none)
118
+ Version table:
119
119
  VPKG_STDOUT
120
- virtual_package = double(:stdout => virtual_package_out, :exitstatus => 0)
121
- expect(@provider).to receive(:shell_out!).with(
120
+ virtual_package = double(stdout: virtual_package_out, exitstatus: 0)
121
+ expect(@provider).to receive(:shell_out_compacted!).with(
122
122
  "apt-cache", "policy", "libmysqlclient15-dev",
123
- :env => { "DEBIAN_FRONTEND" => "noninteractive" },
124
- :timeout => @timeout
123
+ env: { "DEBIAN_FRONTEND" => "noninteractive" },
124
+ timeout: @timeout
125
125
  ).and_return(virtual_package)
126
- showpkg_out = <<-SHOWPKG_STDOUT
127
- Package: libmysqlclient15-dev
128
- Versions:
129
-
130
- Reverse Depends:
131
- libmysqlclient-dev,libmysqlclient15-dev
132
- libmysqlclient-dev,libmysqlclient15-dev
133
- libmysqlclient-dev,libmysqlclient15-dev
134
- libmysqlclient-dev,libmysqlclient15-dev
135
- libmysqlclient-dev,libmysqlclient15-dev
136
- libmysqlclient-dev,libmysqlclient15-dev
137
- Dependencies:
138
- Provides:
139
- Reverse Provides:
140
- libmysqlclient-dev 5.1.41-3ubuntu12.7
141
- libmysqlclient-dev 5.1.41-3ubuntu12.10
142
- libmysqlclient-dev 5.1.41-3ubuntu12
126
+ showpkg_out = <<~SHOWPKG_STDOUT
127
+ Package: libmysqlclient15-dev
128
+ Versions:
129
+
130
+ Reverse Depends:
131
+ libmysqlclient-dev,libmysqlclient15-dev
132
+ libmysqlclient-dev,libmysqlclient15-dev
133
+ libmysqlclient-dev,libmysqlclient15-dev
134
+ libmysqlclient-dev,libmysqlclient15-dev
135
+ libmysqlclient-dev,libmysqlclient15-dev
136
+ libmysqlclient-dev,libmysqlclient15-dev
137
+ Dependencies:
138
+ Provides:
139
+ Reverse Provides:
140
+ libmysqlclient-dev 5.1.41-3ubuntu12.7
141
+ libmysqlclient-dev 5.1.41-3ubuntu12.10
142
+ libmysqlclient-dev 5.1.41-3ubuntu12
143
143
  SHOWPKG_STDOUT
144
- showpkg = double(:stdout => showpkg_out, :exitstatus => 0)
145
- expect(@provider).to receive(:shell_out!).with(
144
+ showpkg = double(stdout: showpkg_out, exitstatus: 0)
145
+ expect(@provider).to receive(:shell_out_compacted!).with(
146
146
  "apt-cache", "showpkg", "libmysqlclient15-dev",
147
- :env => { "DEBIAN_FRONTEND" => "noninteractive" },
148
- :timeout => @timeout
147
+ env: { "DEBIAN_FRONTEND" => "noninteractive" },
148
+ timeout: @timeout
149
149
  ).and_return(showpkg)
150
- real_package_out = <<-RPKG_STDOUT
151
- libmysqlclient-dev:
152
- Installed: 5.1.41-3ubuntu12.10
153
- Candidate: 5.1.41-3ubuntu12.10
154
- Version table:
155
- *** 5.1.41-3ubuntu12.10 0
156
- 500 http://us.archive.ubuntu.com/ubuntu/ lucid-updates/main Packages
157
- 100 /var/lib/dpkg/status
158
- 5.1.41-3ubuntu12.7 0
159
- 500 http://security.ubuntu.com/ubuntu/ lucid-security/main Packages
160
- 5.1.41-3ubuntu12 0
161
- 500 http://us.archive.ubuntu.com/ubuntu/ lucid/main Packages
150
+ real_package_out = <<~RPKG_STDOUT
151
+ libmysqlclient-dev:
152
+ Installed: 5.1.41-3ubuntu12.10
153
+ Candidate: 5.1.41-3ubuntu12.10
154
+ Version table:
155
+ *** 5.1.41-3ubuntu12.10 0
156
+ 500 http://us.archive.ubuntu.com/ubuntu/ lucid-updates/main Packages
157
+ 100 /var/lib/dpkg/status
158
+ 5.1.41-3ubuntu12.7 0
159
+ 500 http://security.ubuntu.com/ubuntu/ lucid-security/main Packages
160
+ 5.1.41-3ubuntu12 0
161
+ 500 http://us.archive.ubuntu.com/ubuntu/ lucid/main Packages
162
162
  RPKG_STDOUT
163
- real_package = double(:stdout => real_package_out, :exitstatus => 0)
164
- expect(@provider).to receive(:shell_out!).with(
163
+ real_package = double(stdout: real_package_out, exitstatus: 0)
164
+ expect(@provider).to receive(:shell_out_compacted!).with(
165
165
  "apt-cache", "policy", "libmysqlclient-dev",
166
- :env => { "DEBIAN_FRONTEND" => "noninteractive" },
167
- :timeout => @timeout
166
+ env: { "DEBIAN_FRONTEND" => "noninteractive" },
167
+ timeout: @timeout
168
168
  ).and_return(real_package)
169
169
  @provider.load_current_resource
170
170
  end
171
171
 
172
172
  it "should raise an exception if you specify a virtual package with multiple provider packages" do
173
173
  @new_resource.package_name("mp3-decoder")
174
- virtual_package_out = <<-VPKG_STDOUT
175
- mp3-decoder:
176
- Installed: (none)
177
- Candidate: (none)
178
- Version table:
174
+ virtual_package_out = <<~VPKG_STDOUT
175
+ mp3-decoder:
176
+ Installed: (none)
177
+ Candidate: (none)
178
+ Version table:
179
179
  VPKG_STDOUT
180
- virtual_package = double(:stdout => virtual_package_out, :exitstatus => 0)
181
- expect(@provider).to receive(:shell_out!).with(
180
+ virtual_package = double(stdout: virtual_package_out, exitstatus: 0)
181
+ expect(@provider).to receive(:shell_out_compacted!).with(
182
182
  "apt-cache", "policy", "mp3-decoder",
183
- :env => { "DEBIAN_FRONTEND" => "noninteractive" },
184
- :timeout => @timeout
183
+ env: { "DEBIAN_FRONTEND" => "noninteractive" },
184
+ timeout: @timeout
185
185
  ).and_return(virtual_package)
186
- showpkg_out = <<-SHOWPKG_STDOUT
187
- Package: mp3-decoder
188
- Versions:
189
-
190
- Reverse Depends:
191
- nautilus,mp3-decoder
192
- vux,mp3-decoder
193
- plait,mp3-decoder
194
- ecasound,mp3-decoder
195
- nautilus,mp3-decoder
196
- Dependencies:
197
- Provides:
198
- Reverse Provides:
199
- vlc-nox 1.0.6-1ubuntu1.8
200
- vlc 1.0.6-1ubuntu1.8
201
- vlc-nox 1.0.6-1ubuntu1
202
- vlc 1.0.6-1ubuntu1
203
- opencubicplayer 1:0.1.17-2
204
- mpg321 0.2.10.6
205
- mpg123 1.12.1-0ubuntu1
186
+ showpkg_out = <<~SHOWPKG_STDOUT
187
+ Package: mp3-decoder
188
+ Versions:
189
+
190
+ Reverse Depends:
191
+ nautilus,mp3-decoder
192
+ vux,mp3-decoder
193
+ plait,mp3-decoder
194
+ ecasound,mp3-decoder
195
+ nautilus,mp3-decoder
196
+ Dependencies:
197
+ Provides:
198
+ Reverse Provides:
199
+ vlc-nox 1.0.6-1ubuntu1.8
200
+ vlc 1.0.6-1ubuntu1.8
201
+ vlc-nox 1.0.6-1ubuntu1
202
+ vlc 1.0.6-1ubuntu1
203
+ opencubicplayer 1:0.1.17-2
204
+ mpg321 0.2.10.6
205
+ mpg123 1.12.1-0ubuntu1
206
206
  SHOWPKG_STDOUT
207
- showpkg = double(:stdout => showpkg_out, :exitstatus => 0)
208
- expect(@provider).to receive(:shell_out!).with(
207
+ showpkg = double(stdout: showpkg_out, exitstatus: 0)
208
+ expect(@provider).to receive(:shell_out_compacted!).with(
209
209
  "apt-cache", "showpkg", "mp3-decoder",
210
- :env => { "DEBIAN_FRONTEND" => "noninteractive" },
211
- :timeout => @timeout
210
+ env: { "DEBIAN_FRONTEND" => "noninteractive" },
211
+ timeout: @timeout
212
212
  ).and_return(showpkg)
213
213
  expect { @provider.load_current_resource }.to raise_error(Chef::Exceptions::Package)
214
214
  end
@@ -219,20 +219,20 @@ mpg123 1.12.1-0ubuntu1
219
219
 
220
220
  @new_resource.default_release("lenny-backports")
221
221
  @new_resource.provider(nil)
222
- expect(@provider).to receive(:shell_out!).with(
222
+ expect(@provider).to receive(:shell_out_compacted!).with(
223
223
  "apt-cache", "-o", "APT::Default-Release=lenny-backports", "policy", "irssi",
224
- :env => { "DEBIAN_FRONTEND" => "noninteractive" },
225
- :timeout => @timeout
224
+ env: { "DEBIAN_FRONTEND" => "noninteractive" },
225
+ timeout: @timeout
226
226
  ).and_return(@shell_out)
227
227
  @provider.load_current_resource
228
228
  end
229
229
 
230
230
  it "raises an exception if a source is specified (CHEF-5113)" do
231
231
  @new_resource.source "pluto"
232
- expect(@provider).to receive(:shell_out!).with(
232
+ expect(@provider).to receive(:shell_out_compacted!).with(
233
233
  "apt-cache", "policy", @new_resource.package_name,
234
- :env => { "DEBIAN_FRONTEND" => "noninteractive" } ,
235
- :timeout => @timeout
234
+ env: { "DEBIAN_FRONTEND" => "noninteractive" } ,
235
+ timeout: @timeout
236
236
  ).and_return(@shell_out)
237
237
  expect { @provider.run_action(:install) }.to raise_error(Chef::Exceptions::Package)
238
238
  end
@@ -258,19 +258,19 @@ mpg123 1.12.1-0ubuntu1
258
258
 
259
259
  describe "install_package" do
260
260
  it "should run apt-get install with the package name and version" do
261
- expect(@provider).to receive(:shell_out!). with(
261
+ expect(@provider).to receive(:shell_out_compacted!). with(
262
262
  "apt-get", "-q", "-y", "-o", "Dpkg::Options::=--force-confdef", "-o", "Dpkg::Options::=--force-confold", "install", "irssi=0.8.12-7",
263
- :env => { "DEBIAN_FRONTEND" => "noninteractive" },
264
- :timeout => @timeout
263
+ env: { "DEBIAN_FRONTEND" => "noninteractive" },
264
+ timeout: @timeout
265
265
  )
266
266
  @provider.install_package(["irssi"], ["0.8.12-7"])
267
267
  end
268
268
 
269
269
  it "should run apt-get install with the package name and version and options if specified" do
270
- expect(@provider).to receive(:shell_out!).with(
270
+ expect(@provider).to receive(:shell_out_compacted!).with(
271
271
  "apt-get", "-q", "-y", "-o", "Dpkg::Options::=--force-confdef", "-o", "Dpkg::Options::=--force-confold", "--force-yes", "install", "irssi=0.8.12-7",
272
- :env => { "DEBIAN_FRONTEND" => "noninteractive" },
273
- :timeout => @timeout
272
+ env: { "DEBIAN_FRONTEND" => "noninteractive" },
273
+ timeout: @timeout
274
274
  )
275
275
  @new_resource.options("--force-yes")
276
276
  @provider.install_package(["irssi"], ["0.8.12-7"])
@@ -283,20 +283,20 @@ mpg123 1.12.1-0ubuntu1
283
283
  @new_resource.provider = nil
284
284
  @provider.new_resource = @new_resource
285
285
 
286
- expect(@provider).to receive(:shell_out!).with(
286
+ expect(@provider).to receive(:shell_out_compacted!).with(
287
287
  "apt-get", "-q", "-y", "-o", "Dpkg::Options::=--force-confdef", "-o", "Dpkg::Options::=--force-confold", "-o", "APT::Default-Release=lenny-backports", "install", "irssi=0.8.12-7",
288
- :env => { "DEBIAN_FRONTEND" => "noninteractive" },
289
- :timeout => @timeout
288
+ env: { "DEBIAN_FRONTEND" => "noninteractive" },
289
+ timeout: @timeout
290
290
  )
291
291
 
292
292
  @provider.install_package(["irssi"], ["0.8.12-7"])
293
293
  end
294
294
 
295
295
  it "should run apt-get install with the package name and quotes options if specified" do
296
- expect(@provider).to receive(:shell_out!).with(
296
+ expect(@provider).to receive(:shell_out_compacted!).with(
297
297
  "apt-get", "-q", "-y", "--force-yes", "-o", "Dpkg::Options::=--force-confdef", "-o", "Dpkg::Options::=--force-confnew", "install", "irssi=0.8.12-7",
298
- :env => { "DEBIAN_FRONTEND" => "noninteractive" },
299
- :timeout => @timeout
298
+ env: { "DEBIAN_FRONTEND" => "noninteractive" },
299
+ timeout: @timeout
300
300
  )
301
301
  @new_resource.options('--force-yes -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confnew"')
302
302
  @provider.install_package(["irssi"], ["0.8.12-7"])
@@ -314,19 +314,19 @@ mpg123 1.12.1-0ubuntu1
314
314
  describe Chef::Resource::AptPackage, "remove_package" do
315
315
 
316
316
  it "should run apt-get remove with the package name" do
317
- expect(@provider).to receive(:shell_out!).with(
317
+ expect(@provider).to receive(:shell_out_compacted!).with(
318
318
  "apt-get", "-q", "-y", "remove", "irssi",
319
- :env => { "DEBIAN_FRONTEND" => "noninteractive" },
320
- :timeout => @timeout
319
+ env: { "DEBIAN_FRONTEND" => "noninteractive" },
320
+ timeout: @timeout
321
321
  )
322
322
  @provider.remove_package(["irssi"], ["0.8.12-7"])
323
323
  end
324
324
 
325
325
  it "should run apt-get remove with the package name and options if specified" do
326
- expect(@provider).to receive(:shell_out!).with(
326
+ expect(@provider).to receive(:shell_out_compacted!).with(
327
327
  "apt-get", "-q", "-y", "--force-yes", "remove", "irssi",
328
- :env => { "DEBIAN_FRONTEND" => "noninteractive" },
329
- :timeout => @timeout
328
+ env: { "DEBIAN_FRONTEND" => "noninteractive" },
329
+ timeout: @timeout
330
330
  )
331
331
  @new_resource.options("--force-yes")
332
332
 
@@ -337,19 +337,19 @@ mpg123 1.12.1-0ubuntu1
337
337
  describe "when purging a package" do
338
338
 
339
339
  it "should run apt-get purge with the package name" do
340
- expect(@provider).to receive(:shell_out!).with(
340
+ expect(@provider).to receive(:shell_out_compacted!).with(
341
341
  "apt-get", "-q", "-y", "purge", "irssi",
342
- :env => { "DEBIAN_FRONTEND" => "noninteractive" },
343
- :timeout => @timeout
342
+ env: { "DEBIAN_FRONTEND" => "noninteractive" },
343
+ timeout: @timeout
344
344
  )
345
345
  @provider.purge_package(["irssi"], ["0.8.12-7"])
346
346
  end
347
347
 
348
348
  it "should run apt-get purge with the package name and options if specified" do
349
- expect(@provider).to receive(:shell_out!).with(
349
+ expect(@provider).to receive(:shell_out_compacted!).with(
350
350
  "apt-get", "-q", "-y", "--force-yes", "purge", "irssi",
351
- :env => { "DEBIAN_FRONTEND" => "noninteractive" },
352
- :timeout => @timeout
351
+ env: { "DEBIAN_FRONTEND" => "noninteractive" },
352
+ timeout: @timeout
353
353
  )
354
354
  @new_resource.options("--force-yes")
355
355
 
@@ -365,20 +365,20 @@ mpg123 1.12.1-0ubuntu1
365
365
  it "should get the full path to the preseed response file" do
366
366
  file = "/tmp/irssi-0.8.12-7.seed"
367
367
 
368
- expect(@provider).to receive(:shell_out!).with(
368
+ expect(@provider).to receive(:shell_out_compacted!).with(
369
369
  "debconf-set-selections", "/tmp/irssi-0.8.12-7.seed",
370
- :env => { "DEBIAN_FRONTEND" => "noninteractive" },
371
- :timeout => @timeout
370
+ env: { "DEBIAN_FRONTEND" => "noninteractive" },
371
+ timeout: @timeout
372
372
  )
373
373
 
374
374
  @provider.preseed_package(file)
375
375
  end
376
376
 
377
377
  it "should run debconf-set-selections on the preseed file if it has changed" do
378
- expect(@provider).to receive(:shell_out!).with(
378
+ expect(@provider).to receive(:shell_out_compacted!).with(
379
379
  "debconf-set-selections", "/tmp/irssi-0.8.12-7.seed",
380
- :env => { "DEBIAN_FRONTEND" => "noninteractive" },
381
- :timeout => @timeout
380
+ env: { "DEBIAN_FRONTEND" => "noninteractive" },
381
+ timeout: @timeout
382
382
  )
383
383
  file = @provider.get_preseed_file("irssi", "0.8.12-7")
384
384
  @provider.preseed_package(file)
@@ -389,17 +389,17 @@ mpg123 1.12.1-0ubuntu1
389
389
  @current_resource.version "0.8.11"
390
390
  @new_resource.response_file "/tmp/file"
391
391
  allow(@provider).to receive(:get_preseed_file).and_return(false)
392
- expect(@provider).not_to receive(:shell_out!)
392
+ expect(@provider).not_to receive(:shell_out_compacted!)
393
393
  @provider.run_action(:reconfig)
394
394
  end
395
395
  end
396
396
 
397
397
  describe "when reconfiguring a package" do
398
398
  it "should run dpkg-reconfigure package" do
399
- expect(@provider).to receive(:shell_out!).with(
399
+ expect(@provider).to receive(:shell_out_compacted!).with(
400
400
  "dpkg-reconfigure", "irssi",
401
- :env => { "DEBIAN_FRONTEND" => "noninteractive" },
402
- :timeout => @timeout
401
+ env: { "DEBIAN_FRONTEND" => "noninteractive" },
402
+ timeout: @timeout
403
403
  )
404
404
  @provider.reconfig_package("irssi", "0.8.12-7")
405
405
  end
@@ -407,16 +407,16 @@ mpg123 1.12.1-0ubuntu1
407
407
 
408
408
  describe "when locking a package" do
409
409
  it "should run apt-mark hold package" do
410
- expect(@provider).to receive(:shell_out!).with(
410
+ expect(@provider).to receive(:shell_out_compacted!).with(
411
411
  "apt-mark", "hold", "irssi",
412
- :env => { "DEBIAN_FRONTEND" => "noninteractive" },
413
- :timeout => @timeout
412
+ env: { "DEBIAN_FRONTEND" => "noninteractive" },
413
+ timeout: @timeout
414
414
  )
415
415
  @provider.lock_package("irssi", "0.8.12-7")
416
416
  end
417
417
  it "should not lock if the package is already locked" do
418
- allow(@provider).to receive(:shell_out_compact_timeout!).with(
419
- "apt-mark", "showhold"
418
+ allow(@provider).to receive(:shell_out_compacted!).with(
419
+ "apt-mark", "showhold", timeout: 900
420
420
  ).and_return(instance_double(
421
421
  Mixlib::ShellOut, stdout: "irssi")
422
422
  )
@@ -428,16 +428,16 @@ mpg123 1.12.1-0ubuntu1
428
428
 
429
429
  describe "when unlocking a package" do
430
430
  it "should run apt-mark unhold package" do
431
- expect(@provider).to receive(:shell_out!).with(
431
+ expect(@provider).to receive(:shell_out_compacted!).with(
432
432
  "apt-mark", "unhold", "irssi",
433
- :env => { "DEBIAN_FRONTEND" => "noninteractive" },
434
- :timeout => @timeout
433
+ env: { "DEBIAN_FRONTEND" => "noninteractive" },
434
+ timeout: @timeout
435
435
  )
436
436
  @provider.unlock_package("irssi", "0.8.12-7")
437
437
  end
438
438
  it "should not unlock if the package is already unlocked" do
439
- allow(@provider).to receive(:shell_out_compact_timeout!).with(
440
- "apt-mark", "showhold"
439
+ allow(@provider).to receive(:shell_out_compacted!).with(
440
+ "apt-mark", "showhold", timeout: 900
441
441
  ).and_return(instance_double(
442
442
  Mixlib::ShellOut, stdout: "")
443
443
  )
@@ -450,10 +450,10 @@ mpg123 1.12.1-0ubuntu1
450
450
  describe "when installing a virtual package" do
451
451
  it "should install the package without specifying a version" do
452
452
  @provider.package_data["libmysqlclient15-dev"][:virtual] = true
453
- expect(@provider).to receive(:shell_out!).with(
453
+ expect(@provider).to receive(:shell_out_compacted!).with(
454
454
  "apt-get", "-q", "-y", "-o", "Dpkg::Options::=--force-confdef", "-o", "Dpkg::Options::=--force-confold", "install", "libmysqlclient15-dev",
455
- :env => { "DEBIAN_FRONTEND" => "noninteractive" },
456
- :timeout => @timeout
455
+ env: { "DEBIAN_FRONTEND" => "noninteractive" },
456
+ timeout: @timeout
457
457
  )
458
458
  @provider.install_package(["libmysqlclient15-dev"], ["not_a_real_version"])
459
459
  end
@@ -462,10 +462,10 @@ mpg123 1.12.1-0ubuntu1
462
462
  describe "when removing a virtual package" do
463
463
  it "should remove the resolved name instead of the virtual package name" do
464
464
  expect(@provider).to receive(:resolve_virtual_package_name).with("libmysqlclient15-dev").and_return("libmysqlclient-dev")
465
- expect(@provider).to receive(:shell_out!).with(
465
+ expect(@provider).to receive(:shell_out_compacted!).with(
466
466
  "apt-get", "-q", "-y", "remove", "libmysqlclient-dev",
467
- :env => { "DEBIAN_FRONTEND" => "noninteractive" },
468
- :timeout => @timeout
467
+ env: { "DEBIAN_FRONTEND" => "noninteractive" },
468
+ timeout: @timeout
469
469
  )
470
470
  @provider.remove_package(["libmysqlclient15-dev"], ["not_a_real_version"])
471
471
  end
@@ -474,10 +474,10 @@ mpg123 1.12.1-0ubuntu1
474
474
  describe "when purging a virtual package" do
475
475
  it "should purge the resolved name instead of the virtual package name" do
476
476
  expect(@provider).to receive(:resolve_virtual_package_name).with("libmysqlclient15-dev").and_return("libmysqlclient-dev")
477
- expect(@provider).to receive(:shell_out!).with(
477
+ expect(@provider).to receive(:shell_out_compacted!).with(
478
478
  "apt-get", "-q", "-y", "purge", "libmysqlclient-dev",
479
- :env => { "DEBIAN_FRONTEND" => "noninteractive" },
480
- :timeout => @timeout
479
+ env: { "DEBIAN_FRONTEND" => "noninteractive" },
480
+ timeout: @timeout
481
481
  )
482
482
  @provider.purge_package(["libmysqlclient15-dev"], ["not_a_real_version"])
483
483
  end
@@ -486,10 +486,10 @@ mpg123 1.12.1-0ubuntu1
486
486
  describe "when installing multiple packages" do
487
487
  it "can install a virtual package followed by a non-virtual package" do
488
488
  # https://github.com/chef/chef/issues/2914
489
- expect(@provider).to receive(:shell_out!).with(
489
+ expect(@provider).to receive(:shell_out_compacted!).with(
490
490
  "apt-get", "-q", "-y", "-o", "Dpkg::Options::=--force-confdef", "-o", "Dpkg::Options::=--force-confold", "install", "libmysqlclient15-dev", "irssi=0.8.12-7",
491
- :env => { "DEBIAN_FRONTEND" => "noninteractive" },
492
- :timeout => @timeout
491
+ env: { "DEBIAN_FRONTEND" => "noninteractive" },
492
+ timeout: @timeout
493
493
  )
494
494
  @provider.install_package(["libmysqlclient15-dev", "irssi"], ["not_a_real_version", "0.8.12-7"])
495
495
  end
@@ -499,8 +499,8 @@ mpg123 1.12.1-0ubuntu1
499
499
  it "should run dpkg to compare versions if an existing version is installed" do
500
500
  allow(@provider).to receive(:get_current_versions).and_return("1.4.0")
501
501
  allow(@new_resource).to receive(:allow_downgrade).and_return(false)
502
- expect(@provider).to receive(:shell_out_compact_timeout).with(
503
- "dpkg", "--compare-versions", "1.4.0", "gt", "0.8.12-7"
502
+ expect(@provider).to receive(:shell_out_compacted).with(
503
+ "dpkg", "--compare-versions", "1.4.0", "gt", "0.8.12-7", timeout: 900
504
504
  ).and_return(double(error?: false))
505
505
  @provider.run_action(:upgrade)
506
506
  end
@@ -509,10 +509,10 @@ mpg123 1.12.1-0ubuntu1
509
509
  allow(@provider).to receive(:get_current_versions).and_return("0.4.0")
510
510
  allow(@new_resource).to receive(:allow_downgrade).and_return(false)
511
511
  expect(@provider).to receive(:version_compare).and_return(-1)
512
- expect(@provider).to receive(:shell_out!).with(
512
+ expect(@provider).to receive(:shell_out_compacted!).with(
513
513
  "apt-get", "-q", "-y", "-o", "Dpkg::Options::=--force-confdef", "-o", "Dpkg::Options::=--force-confold", "install", "irssi=0.8.12-7",
514
- :env => { "DEBIAN_FRONTEND" => "noninteractive" },
515
- :timeout => @timeout
514
+ env: { "DEBIAN_FRONTEND" => "noninteractive" },
515
+ timeout: @timeout
516
516
  )
517
517
  @provider.run_action(:upgrade)
518
518
  end
@@ -521,10 +521,10 @@ mpg123 1.12.1-0ubuntu1
521
521
  allow(@provider).to receive(:get_current_versions).and_return(nil)
522
522
  allow(@new_resource).to receive(:allow_downgrade).and_return(false)
523
523
  expect(@provider).not_to receive(:version_compare)
524
- expect(@provider).to receive(:shell_out!).with(
524
+ expect(@provider).to receive(:shell_out_compacted!).with(
525
525
  "apt-get", "-q", "-y", "-o", "Dpkg::Options::=--force-confdef", "-o", "Dpkg::Options::=--force-confold", "install", "irssi=0.8.12-7",
526
- :env => { "DEBIAN_FRONTEND" => "noninteractive" },
527
- :timeout => @timeout
526
+ env: { "DEBIAN_FRONTEND" => "noninteractive" },
527
+ timeout: @timeout
528
528
  )
529
529
  @provider.run_action(:upgrade)
530
530
  end