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
@@ -174,16 +174,20 @@ class Chef
174
174
  #
175
175
  def send_to_data_collector(message)
176
176
  return unless Chef::Config[:data_collector][:server_url]
177
+
177
178
  @http ||= setup_http_client(Chef::Config[:data_collector][:server_url])
178
179
  @http.post(nil, message, headers)
179
- rescue Timeout::Error, Errno::EINVAL, Errno::ECONNRESET,
180
- Errno::ECONNREFUSED, EOFError, Net::HTTPBadResponse,
181
- Net::HTTPHeaderSyntaxError, Net::ProtocolError, OpenSSL::SSL::SSLError,
182
- Errno::EHOSTDOWN => e
180
+ rescue => e
183
181
  # Do not disable data collector reporter if additional output_locations have been specified
184
182
  events.unregister(self) unless Chef::Config[:data_collector][:output_locations]
185
183
 
186
- code = e&.response&.code&.to_s || "Exception Code Empty"
184
+ begin
185
+ code = e&.response&.code&.to_s
186
+ rescue
187
+ # i really dont care
188
+ end
189
+
190
+ code ||= "No HTTP Code"
187
191
 
188
192
  msg = "Error while reporting run start to Data Collector. URL: #{Chef::Config[:data_collector][:server_url]} Exception: #{code} -- #{e.message} "
189
193
 
@@ -191,9 +195,13 @@ class Chef
191
195
  Chef::Log.error(msg)
192
196
  raise
193
197
  else
194
- # Make the message non-scary for folks who don't have automate:
195
- msg << " (This is normal if you do not have #{Chef::Dist::AUTOMATE})"
196
- Chef::Log.info(msg)
198
+ if code == "404"
199
+ # Make the message non-scary for folks who don't have automate:
200
+ msg << " (This is normal if you do not have #{Chef::Dist::AUTOMATE})"
201
+ Chef::Log.debug(msg)
202
+ else
203
+ Chef::Log.warn(msg)
204
+ end
197
205
  end
198
206
  end
199
207
 
@@ -85,12 +85,14 @@ class Chef
85
85
  # @return [Integer] the number of resources successfully updated in the chef-client run
86
86
  def updated_resource_count(action_collection)
87
87
  return 0 if action_collection.nil?
88
+
88
89
  action_collection.filtered_collection(up_to_date: false, skipped: false, unprocessed: false, failed: false).count
89
90
  end
90
91
 
91
92
  # @return [Array<Chef::ActionCollection::ActionRecord>] list of all action_records for all resources
92
93
  def action_records(action_collection)
93
94
  return [] if action_collection.nil?
95
+
94
96
  action_collection.action_records
95
97
  end
96
98
 
@@ -1,5 +1,5 @@
1
1
  #--
2
- # Copyright:: Copyright 2016 Chef Software, Inc.
2
+ # Copyright:: Copyright 2016-2019, Chef Software Inc.
3
3
  # License:: Apache License, Version 2.0
4
4
  #
5
5
  # Licensed under the Apache License, Version 2.0 (the "License");
@@ -16,14 +16,13 @@
16
16
  #
17
17
 
18
18
  require "delegate"
19
+ require_relative "constants"
19
20
 
20
21
  class Chef
21
22
  class Decorator < SimpleDelegator
22
- NULL = ::Object.new
23
-
24
- def initialize(obj = NULL)
23
+ def initialize(obj = NOT_PASSED)
25
24
  @__defined_methods__ = []
26
- super unless obj.equal?(NULL)
25
+ super unless obj.equal?(NOT_PASSED)
27
26
  end
28
27
 
29
28
  # if we wrap a nil then decorator.nil? should be true
@@ -38,7 +37,7 @@ class Chef
38
37
 
39
38
  # if we wrap a Hash then decorator.kind_of?(Hash) should be true
40
39
  def kind_of?(klass)
41
- __getobj__.kind_of?(klass) || super
40
+ __getobj__.is_a?(klass) || super
42
41
  end
43
42
 
44
43
  # reset our methods on the instance if the object changes under us (this also
@@ -84,6 +84,7 @@ class Chef
84
84
  relevant_line = location_file.readline
85
85
  relevant_line.match?(/#.*chef:silence_deprecation($|[^:]|:#{self.class.deprecation_key})/)
86
86
  end
87
+
87
88
  false
88
89
  end
89
90
 
@@ -38,7 +38,7 @@ class Chef
38
38
  if Kernel.block_given? || args.length >= 4
39
39
  Chef::Search::Query.new.search(*args, &block)
40
40
  else
41
- results = Array.new
41
+ results = []
42
42
  Chef::Search::Query.new.search(*args) do |o|
43
43
  results << o
44
44
  end
@@ -41,6 +41,7 @@ class Chef
41
41
  #
42
42
  def with_run_context(rc)
43
43
  raise ArgumentError, "with_run_context is useless without a block" unless block_given?
44
+
44
45
  old_run_context = @run_context
45
46
  @run_context =
46
47
  case rc
@@ -202,6 +203,7 @@ class Chef
202
203
  #
203
204
  def find_resource!(type, name, run_context: self.run_context)
204
205
  raise ArgumentError, "find_resource! does not take a block" if block_given?
206
+
205
207
  run_context.resource_collection.find(type => name)
206
208
  end
207
209
 
@@ -70,6 +70,7 @@ class Chef
70
70
  def match_versions(node)
71
71
  platform, version = node[:platform].to_s, node[:platform_version].to_s
72
72
  return nil unless @values.key?(platform)
73
+
73
74
  node_version = Chef::Version::Platform.new(version)
74
75
  key_matches = []
75
76
  keys = @values[platform].keys
@@ -84,6 +85,7 @@ class Chef
84
85
  end
85
86
  end
86
87
  return @values[platform][version] if key_matches.include?(version)
88
+
87
89
  case key_matches.length
88
90
  when 0
89
91
  return nil
@@ -124,7 +126,7 @@ class Chef
124
126
  end
125
127
 
126
128
  def assert_valid_platform_values!(platforms, value)
127
- unless value.kind_of?(Hash)
129
+ unless value.is_a?(Hash)
128
130
  msg = "platform dependent values must be specified in the format :platform => {:version => value} "
129
131
  msg << "you gave a value #{value.inspect} for platform(s) #{platforms}"
130
132
  raise ArgumentError, msg
@@ -130,11 +130,12 @@ class Chef::EncryptedDataBagItem
130
130
 
131
131
  def self.load_secret(path = nil)
132
132
  path ||= Chef::Config[:encrypted_data_bag_secret]
133
- if !path
134
- raise ArgumentError, "No secret specified and no secret found at #{Chef::Config.platform_specific_path(Chef::Dist::CONF_DIR + '/encrypted_data_bag_secret')}"
133
+ unless path
134
+ raise ArgumentError, "No secret specified and no secret found at #{Chef::Config.platform_specific_path(Chef::Dist::CONF_DIR + "/encrypted_data_bag_secret")}"
135
135
  end
136
+
136
137
  secret = case path
137
- when /^\w+:\/\//
138
+ when %r{^\w+://}
138
139
  # We have a remote key
139
140
  begin
140
141
  Kernel.open(path).read.strip
@@ -144,14 +145,16 @@ class Chef::EncryptedDataBagItem
144
145
  raise ArgumentError, "Remote key not found at '#{path}'"
145
146
  end
146
147
  else
147
- if !File.exist?(path)
148
+ unless File.exist?(path)
148
149
  raise Errno::ENOENT, "file not found '#{path}'"
149
150
  end
151
+
150
152
  IO.read(path).strip
151
153
  end
152
154
  if secret.size < 1
153
155
  raise ArgumentError, "invalid zero length secret in '#{path}'"
154
156
  end
157
+
155
158
  secret
156
159
  end
157
160
 
@@ -27,7 +27,7 @@ class Chef::EncryptedDataBagItem
27
27
  module Assertions
28
28
 
29
29
  def assert_format_version_acceptable!(format_version)
30
- unless format_version.kind_of?(Integer) && format_version >= Chef::Config[:data_bag_decrypt_minimum_version]
30
+ unless format_version.is_a?(Integer) && format_version >= Chef::Config[:data_bag_decrypt_minimum_version]
31
31
  raise UnacceptableEncryptedDataBagItemFormat,
32
32
  "The encrypted data bag item has format version `#{format_version}', " +
33
33
  "but the config setting 'data_bag_decrypt_minimum_version' requires version `#{Chef::Config[:data_bag_decrypt_minimum_version]}'"
@@ -40,6 +40,7 @@ class Chef::EncryptedDataBagItem
40
40
  # keys and the hash's keys.
41
41
  def looks_like_encrypted?(data)
42
42
  return false unless data.is_a?(Hash) && data.key?("version")
43
+
43
44
  case data["version"]
44
45
  when 1
45
46
  Chef::EncryptedDataBagItem::Encryptor::Version1Encryptor.encryptor_keys.sort == data.keys.sort
@@ -94,7 +94,7 @@ class Chef::EncryptedDataBagItem
94
94
  plaintext << openssl_decryptor.final
95
95
  rescue OpenSSL::Cipher::CipherError => e
96
96
  # if the key length is less than 255 characters, and it contains slashes, we think it may be a path.
97
- raise DecryptionFailure, "Error decrypting data bag value: '#{e.message}'. Most likely the provided key is incorrect. #{(@key.length < 255 && @key.include?('/')) ? 'You may need to use --secret-file rather than --secret.' : ''}"
97
+ raise DecryptionFailure, "Error decrypting data bag value: '#{e.message}'. Most likely the provided key is incorrect. #{(@key.length < 255 && @key.include?("/")) ? "You may need to use --secret-file rather than --secret." : ""}"
98
98
  end
99
99
  end
100
100
 
@@ -147,7 +147,7 @@ class Chef::EncryptedDataBagItem
147
147
  plaintext << openssl_decryptor.final
148
148
  rescue OpenSSL::Cipher::CipherError => e
149
149
  # if the key length is less than 255 characters, and it contains slashes, we think it may be a path.
150
- raise DecryptionFailure, "Error decrypting data bag value: '#{e.message}'. Most likely the provided key is incorrect. #{( @key.length < 255 && @key.include?('/')) ? 'You may need to use --secret-file rather than --secret.' : ''}"
150
+ raise DecryptionFailure, "Error decrypting data bag value: '#{e.message}'. Most likely the provided key is incorrect. #{( @key.length < 255 && @key.include?("/")) ? "You may need to use --secret-file rather than --secret." : ""}"
151
151
  end
152
152
  end
153
153
 
@@ -188,6 +188,7 @@ class Chef::EncryptedDataBagItem
188
188
 
189
189
  def candidate_hmac_matches?(expected_hmac)
190
190
  return false unless @encrypted_data["hmac"]
191
+
191
192
  expected_bytes = expected_hmac.bytes.to_a
192
193
  candidate_hmac_bytes = Base64.decode64(@encrypted_data["hmac"]).bytes.to_a
193
194
  valid = expected_bytes.size ^ candidate_hmac_bytes.size
@@ -213,6 +214,7 @@ class Chef::EncryptedDataBagItem
213
214
  if auth_tag_b64.nil?
214
215
  raise DecryptionFailure, "Error decrypting data bag value: invalid authentication tag. Most likely the data is corrupted"
215
216
  end
217
+
216
218
  Base64.decode64(auth_tag_b64)
217
219
  end
218
220
 
@@ -193,6 +193,7 @@ class Chef::EncryptedDataBagItem
193
193
  if @auth_tag.nil?
194
194
  raise EncryptionFailure, "Internal Error: GCM authentication tag read before encryption"
195
195
  end
196
+
196
197
  @auth_tag
197
198
  end
198
199
 
@@ -42,7 +42,7 @@ class Chef
42
42
  @description = ""
43
43
  @default_attributes = Mash.new
44
44
  @override_attributes = Mash.new
45
- @cookbook_versions = Hash.new
45
+ @cookbook_versions = {}
46
46
  @chef_server_rest = chef_server_rest
47
47
  end
48
48
 
@@ -158,7 +158,7 @@ class Chef
158
158
  # reset because everything we need will be in the params, this is necessary because certain constraints
159
159
  # may have been removed in the params and need to be removed from cookbook_versions as well.
160
160
  bkup_cb_versions = cookbook_versions
161
- cookbook_versions(Hash.new)
161
+ cookbook_versions({})
162
162
  valid = true
163
163
 
164
164
  begin
@@ -229,7 +229,7 @@ class Chef
229
229
 
230
230
  def self.list(inflate = false)
231
231
  if inflate
232
- response = Hash.new
232
+ response = {}
233
233
  Chef::Search::Query.new.search(:environment) do |e|
234
234
  response[e.name] = e unless e.nil?
235
235
  end
@@ -278,6 +278,7 @@ class Chef
278
278
  chef_server_rest.put("environments/#{@name}", self)
279
279
  rescue Net::HTTPClientException => e
280
280
  raise e unless e.response.code == "404"
281
+
281
282
  chef_server_rest.post("environments", self)
282
283
  end
283
284
  self
@@ -297,7 +298,8 @@ class Chef
297
298
  end
298
299
 
299
300
  def self.validate_cookbook_versions(cv)
300
- return false unless cv.kind_of?(Hash)
301
+ return false unless cv.is_a?(Hash)
302
+
301
303
  cv.each_value do |version|
302
304
  return false unless Chef::Environment.validate_cookbook_version(version)
303
305
  end
@@ -307,7 +309,7 @@ class Chef
307
309
  def self.validate_cookbook_version(version)
308
310
  if Chef::Config[:solo_legacy_mode]
309
311
  raise Chef::Exceptions::IllegalVersionConstraint,
310
- "Environment cookbook version constraints not allowed in #{Chef::Dist::SOLO}"
312
+ "Environment cookbook version constraints not allowed in #{Chef::Dist::SOLO}"
311
313
  else
312
314
  Chef::VersionConstraint.new version
313
315
  true
@@ -29,268 +29,206 @@ class Chef
29
29
  class Base
30
30
 
31
31
  # Called at the very start of a Chef Run
32
- def run_start(version, run_status)
33
- end
32
+ def run_start(version, run_status); end
34
33
 
35
- def run_started(run_status)
36
- end
34
+ def run_started(run_status); end
37
35
 
38
36
  # Called at the end a successful Chef run.
39
- def run_completed(node, run_status)
40
- end
37
+ def run_completed(node, run_status); end
41
38
 
42
39
  # Called at the end of a failed Chef run.
43
- def run_failed(exception, run_status)
44
- end
40
+ def run_failed(exception, run_status); end
45
41
 
46
42
  # Called right after ohai runs.
47
43
  # NOTE: the node object here is always nil because of when it is called
48
- def ohai_completed(node)
49
- end
44
+ def ohai_completed(node); end
50
45
 
51
46
  # Announce that we're not going to register the client. Generally because
52
47
  # we already have the private key, or because we're deliberately not using
53
48
  # a key.
54
- def skipping_registration(node_name, config)
55
- end
49
+ def skipping_registration(node_name, config); end
56
50
 
57
51
  # About to attempt to create a private key registered to the server with
58
52
  # client +node_name+.
59
- def registration_start(node_name, config)
60
- end
53
+ def registration_start(node_name, config); end
61
54
 
62
55
  # Successfully created the private key and registered this client with the
63
56
  # server.
64
- def registration_completed
65
- end
57
+ def registration_completed; end
66
58
 
67
59
  # Failed to register this client with the server.
68
- def registration_failed(node_name, exception, config)
69
- end
60
+ def registration_failed(node_name, exception, config); end
70
61
 
71
62
  # Called before Chef client loads the node data from the server
72
- def node_load_start(node_name, config)
73
- end
63
+ def node_load_start(node_name, config); end
74
64
 
75
65
  # TODO: def node_run_list_overridden(*args)
76
66
 
77
67
  # Called once the node is loaded by the policy builder
78
- def node_load_success(node)
79
- end
68
+ def node_load_success(node); end
80
69
 
81
70
  # Failed to load node data from the server
82
- def node_load_failed(node_name, exception, config)
83
- end
71
+ def node_load_failed(node_name, exception, config); end
84
72
 
85
73
  # Error expanding the run list
86
- def run_list_expand_failed(node, exception)
87
- end
74
+ def run_list_expand_failed(node, exception); end
88
75
 
89
76
  # Called after Chef client has loaded the node data.
90
77
  # Default and override attrs from roles have been computed, but not yet applied.
91
78
  # Normal attrs from JSON have been added to the node.
92
- def node_load_completed(node, expanded_run_list, config)
93
- end
79
+ def node_load_completed(node, expanded_run_list, config); end
94
80
 
95
81
  # Called after the Policyfile was loaded. This event only occurs when
96
82
  # chef is in policyfile mode.
97
- def policyfile_loaded(policy)
98
- end
83
+ def policyfile_loaded(policy); end
99
84
 
100
85
  # Called before the cookbook collection is fetched from the server.
101
- def cookbook_resolution_start(expanded_run_list)
102
- end
86
+ def cookbook_resolution_start(expanded_run_list); end
103
87
 
104
88
  # Called when there is an error getting the cookbook collection from the
105
89
  # server.
106
- def cookbook_resolution_failed(expanded_run_list, exception)
107
- end
90
+ def cookbook_resolution_failed(expanded_run_list, exception); end
108
91
 
109
92
  # Called when the cookbook collection is returned from the server.
110
- def cookbook_resolution_complete(cookbook_collection)
111
- end
93
+ def cookbook_resolution_complete(cookbook_collection); end
112
94
 
113
95
  # Called before unneeded cookbooks are removed
114
- def cookbook_clean_start
115
- end
96
+ def cookbook_clean_start; end
116
97
 
117
98
  # Called after the file at +path+ is removed. It may be removed if the
118
99
  # cookbook containing it was removed from the run list, or if the file was
119
100
  # removed from the cookbook.
120
- def removed_cookbook_file(path)
121
- end
101
+ def removed_cookbook_file(path); end
122
102
 
123
103
  # Called when cookbook cleaning is finished.
124
- def cookbook_clean_complete
125
- end
104
+ def cookbook_clean_complete; end
126
105
 
127
106
  # Called before cookbook sync starts
128
- def cookbook_sync_start(cookbook_count)
129
- end
107
+ def cookbook_sync_start(cookbook_count); end
130
108
 
131
109
  # Called when cookbook +cookbook+ has been sync'd
132
- def synchronized_cookbook(cookbook_name, cookbook)
133
- end
110
+ def synchronized_cookbook(cookbook_name, cookbook); end
134
111
 
135
112
  # Called when an individual file in a cookbook has been updated
136
- def updated_cookbook_file(cookbook_name, path)
137
- end
113
+ def updated_cookbook_file(cookbook_name, path); end
138
114
 
139
115
  # Called when an error occurs during cookbook sync
140
- def cookbook_sync_failed(cookbooks, exception)
141
- end
116
+ def cookbook_sync_failed(cookbooks, exception); end
142
117
 
143
118
  # Called after all cookbooks have been sync'd.
144
- def cookbook_sync_complete
145
- end
119
+ def cookbook_sync_complete; end
146
120
 
147
121
  # Called when starting to collect gems from the cookbooks
148
- def cookbook_gem_start(gems)
149
- end
122
+ def cookbook_gem_start(gems); end
150
123
 
151
124
  # Called when the result of installing the bundle is to install the gem
152
- def cookbook_gem_installing(gem, version)
153
- end
125
+ def cookbook_gem_installing(gem, version); end
154
126
 
155
127
  # Called when the result of installing the bundle is to use the gem
156
- def cookbook_gem_using(gem, version)
157
- end
128
+ def cookbook_gem_using(gem, version); end
158
129
 
159
130
  # Called when finished installing cookbook gems
160
- def cookbook_gem_finished
161
- end
131
+ def cookbook_gem_finished; end
162
132
 
163
133
  # Called when cookbook gem installation fails
164
- def cookbook_gem_failed(exception)
165
- end
134
+ def cookbook_gem_failed(exception); end
166
135
 
167
136
  ## TODO: add cookbook name to the API for file load callbacks
168
137
 
169
138
  ## TODO: add callbacks for overall cookbook eval start and complete.
170
139
 
171
140
  # Called immediately after creating the run_context and before any cookbook compilation happens
172
- def cookbook_compilation_start(run_context)
173
- end
141
+ def cookbook_compilation_start(run_context); end
174
142
 
175
143
  # Called when library file loading starts
176
- def library_load_start(file_count)
177
- end
144
+ def library_load_start(file_count); end
178
145
 
179
146
  # Called when library file has been loaded
180
- def library_file_loaded(path)
181
- end
147
+ def library_file_loaded(path); end
182
148
 
183
149
  # Called when a library file has an error on load.
184
- def library_file_load_failed(path, exception)
185
- end
150
+ def library_file_load_failed(path, exception); end
186
151
 
187
152
  # Called when library file loading has finished
188
- def library_load_complete
189
- end
153
+ def library_load_complete; end
190
154
 
191
155
  # Called when LWRP loading starts
192
- def lwrp_load_start(lwrp_file_count)
193
- end
156
+ def lwrp_load_start(lwrp_file_count); end
194
157
 
195
158
  # Called after a LWR or LWP has been loaded
196
- def lwrp_file_loaded(path)
197
- end
159
+ def lwrp_file_loaded(path); end
198
160
 
199
161
  # Called after a LWR or LWP file errors on load
200
- def lwrp_file_load_failed(path, exception)
201
- end
162
+ def lwrp_file_load_failed(path, exception); end
202
163
 
203
164
  # Called when LWRPs are finished loading
204
- def lwrp_load_complete
205
- end
165
+ def lwrp_load_complete; end
206
166
 
207
167
  # Called when an ohai plugin file loading starts
208
- def ohai_plugin_load_start(file_count)
209
- end
168
+ def ohai_plugin_load_start(file_count); end
210
169
 
211
170
  # Called when an ohai plugin file has been loaded
212
- def ohai_plugin_file_loaded(path)
213
- end
171
+ def ohai_plugin_file_loaded(path); end
214
172
 
215
173
  # Called when an ohai plugin file has an error on load.
216
- def ohai_plugin_file_load_failed(path, exception)
217
- end
174
+ def ohai_plugin_file_load_failed(path, exception); end
218
175
 
219
176
  # Called when an ohai plugin file loading has finished
220
- def ohai_plugin_load_complete
221
- end
177
+ def ohai_plugin_load_complete; end
222
178
 
223
179
  # Called before attribute files are loaded
224
- def attribute_load_start(attribute_file_count)
225
- end
180
+ def attribute_load_start(attribute_file_count); end
226
181
 
227
182
  # Called after the attribute file is loaded
228
- def attribute_file_loaded(path)
229
- end
183
+ def attribute_file_loaded(path); end
230
184
 
231
185
  # Called when an attribute file fails to load.
232
- def attribute_file_load_failed(path, exception)
233
- end
186
+ def attribute_file_load_failed(path, exception); end
234
187
 
235
188
  # Called when attribute file loading is finished
236
- def attribute_load_complete
237
- end
189
+ def attribute_load_complete; end
238
190
 
239
191
  # Called before resource definitions are loaded
240
- def definition_load_start(definition_file_count)
241
- end
192
+ def definition_load_start(definition_file_count); end
242
193
 
243
194
  # Called when a resource definition has been loaded
244
- def definition_file_loaded(path)
245
- end
195
+ def definition_file_loaded(path); end
246
196
 
247
197
  # Called when a resource definition file fails to load
248
- def definition_file_load_failed(path, exception)
249
- end
198
+ def definition_file_load_failed(path, exception); end
250
199
 
251
200
  # Called when resource definitions are done loading
252
- def definition_load_complete
253
- end
201
+ def definition_load_complete; end
254
202
 
255
203
  # Called before recipes are loaded
256
- def recipe_load_start(recipe_count)
257
- end
204
+ def recipe_load_start(recipe_count); end
258
205
 
259
206
  # Called after the recipe has been loaded
260
- def recipe_file_loaded(path, recipe)
261
- end
207
+ def recipe_file_loaded(path, recipe); end
262
208
 
263
209
  # Called after a recipe file fails to load
264
- def recipe_file_load_failed(path, exception, recipe)
265
- end
210
+ def recipe_file_load_failed(path, exception, recipe); end
266
211
 
267
212
  # Called when a recipe cannot be resolved
268
- def recipe_not_found(exception)
269
- end
213
+ def recipe_not_found(exception); end
270
214
 
271
215
  # Called when recipes have been loaded.
272
- def recipe_load_complete
273
- end
216
+ def recipe_load_complete; end
274
217
 
275
218
  # This is called after all cookbook compilation phases are completed.
276
- def cookbook_compilation_complete(run_context)
277
- end
219
+ def cookbook_compilation_complete(run_context); end
278
220
 
279
221
  # Called before convergence starts
280
- def converge_start(run_context)
281
- end
222
+ def converge_start(run_context); end
282
223
 
283
224
  # Callback hook for handlers to register their interest in the action_collection
284
- def action_collection_registration(action_collection)
285
- end
225
+ def action_collection_registration(action_collection); end
286
226
 
287
227
  # Called when the converge phase is finished.
288
- def converge_complete
289
- end
228
+ def converge_complete; end
290
229
 
291
230
  # Called if the converge phase fails
292
- def converge_failed(exception)
293
- end
231
+ def converge_failed(exception); end
294
232
 
295
233
  # TODO: need events for notification resolve?
296
234
  # def notifications_resolved
@@ -320,112 +258,88 @@ class Chef
320
258
  #
321
259
 
322
260
  # Called before action is executed on a resource.
323
- def resource_action_start(resource, action, notification_type = nil, notifier = nil)
324
- end
261
+ def resource_action_start(resource, action, notification_type = nil, notifier = nil); end
325
262
 
326
263
  # Called when a resource action has been skipped b/c of a conditional
327
- def resource_skipped(resource, action, conditional)
328
- end
264
+ def resource_skipped(resource, action, conditional); end
329
265
 
330
266
  # Called after #load_current_resource has run.
331
- def resource_current_state_loaded(resource, action, current_resource)
332
- end
267
+ def resource_current_state_loaded(resource, action, current_resource); end
333
268
 
334
269
  # Called when resource current state load is skipped due to the provider
335
270
  # not supporting whyrun mode.
336
- def resource_current_state_load_bypassed(resource, action, current_resource)
337
- end
271
+ def resource_current_state_load_bypassed(resource, action, current_resource); end
338
272
 
339
273
  # Called when evaluating a resource that does not support whyrun in whyrun mode
340
- def resource_bypassed(resource, action, current_resource)
341
- end
274
+ def resource_bypassed(resource, action, current_resource); end
342
275
 
343
276
  # Called when a change has been made to a resource. May be called multiple
344
277
  # times per resource, e.g., a file may have its content updated, and then
345
278
  # its permissions updated.
346
- def resource_update_applied(resource, action, update)
347
- end
279
+ def resource_update_applied(resource, action, update); end
348
280
 
349
281
  # Called when a progress notification should be sent to the user to
350
282
  # indicate the overall progress of a long running operation, such as
351
283
  # a large file download.
352
- def resource_update_progress(resource, current, total, interval)
353
- end
284
+ def resource_update_progress(resource, current, total, interval); end
354
285
 
355
286
  # Called when a resource fails, but will retry.
356
- def resource_failed_retriable(resource, action, retry_count, exception)
357
- end
287
+ def resource_failed_retriable(resource, action, retry_count, exception); end
358
288
 
359
289
  # Called when a resource fails and will not be retried.
360
- def resource_failed(resource, action, exception)
361
- end
290
+ def resource_failed(resource, action, exception); end
362
291
 
363
292
  # Called after a resource has been completely converged, but only if
364
293
  # modifications were made.
365
- def resource_updated(resource, action)
366
- end
294
+ def resource_updated(resource, action); end
367
295
 
368
296
  # Called when a resource has no converge actions, e.g., it was already correct.
369
- def resource_up_to_date(resource, action)
370
- end
297
+ def resource_up_to_date(resource, action); end
371
298
 
372
299
  # Called when a resource action has been completed
373
- def resource_completed(resource)
374
- end
300
+ def resource_completed(resource); end
375
301
 
376
302
  # A stream has opened.
377
- def stream_opened(stream, options = {})
378
- end
303
+ def stream_opened(stream, options = {}); end
379
304
 
380
305
  # A stream has closed.
381
- def stream_closed(stream, options = {})
382
- end
306
+ def stream_closed(stream, options = {}); end
383
307
 
384
308
  # A chunk of data from a stream. The stream is managed by "stream," which
385
309
  # can be any tag whatsoever. Data in different "streams" may not be placed
386
310
  # on the same line or even sent to the same console.
387
- def stream_output(stream, output, options = {})
388
- end
311
+ def stream_output(stream, output, options = {}); end
389
312
 
390
313
  # Called before handlers run
391
- def handlers_start(handler_count)
392
- end
314
+ def handlers_start(handler_count); end
393
315
 
394
316
  # Called after an individual handler has run
395
- def handler_executed(handler)
396
- end
317
+ def handler_executed(handler); end
397
318
 
398
319
  # Called after all handlers have executed
399
- def handlers_completed
400
- end
320
+ def handlers_completed; end
401
321
 
402
322
  # Called when an assertion declared by a provider fails
403
- def provider_requirement_failed(action, resource, exception, message)
404
- end
323
+ def provider_requirement_failed(action, resource, exception, message); end
405
324
 
406
325
  # Called when a provider makes an assumption after a failed assertion
407
326
  # in whyrun mode, in order to allow execution to continue
408
- def whyrun_assumption(action, resource, message)
409
- end
327
+ def whyrun_assumption(action, resource, message); end
410
328
 
411
329
  # Emit a message about something being deprecated.
412
- def deprecation(message, location = caller(2..2)[0])
413
- end
330
+ def deprecation(message, location = caller(2..2)[0]); end
414
331
 
415
- def run_list_expanded(run_list_expansion)
416
- end
332
+ def run_list_expanded(run_list_expansion); end
417
333
 
418
334
  # An uncategorized message. This supports the case that a user needs to
419
335
  # pass output that doesn't fit into one of the callbacks above. Note that
420
336
  # there's no semantic information about the content or importance of the
421
337
  # message. That means that if you're using this too often, you should add a
422
338
  # callback for it.
423
- def msg(message)
424
- end
339
+ def msg(message); end
425
340
 
426
341
  # Called when an attribute is changed by simple assignment
427
- def attribute_changed(precedence, keys, value)
428
- end
342
+ def attribute_changed(precedence, keys, value); end
429
343
  end
430
344
  end
431
345
  end