chef 16.13.16-universal-mingw32 → 17.0.242-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 (614) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +9 -10
  3. data/README.md +1 -1
  4. data/Rakefile +2 -2
  5. data/chef-universal-mingw32.gemspec +1 -1
  6. data/chef.gemspec +6 -8
  7. data/lib/chef/application/base.rb +1 -1
  8. data/lib/chef/applications.rb +0 -1
  9. data/lib/chef/chef_fs/command_line.rb +5 -2
  10. data/lib/chef/chef_fs/file_system.rb +9 -10
  11. data/lib/chef/client.rb +2 -2
  12. data/lib/chef/compliance/default_attributes.rb +4 -3
  13. data/lib/chef/compliance/fetcher/automate.rb +0 -7
  14. data/lib/chef/compliance/reporter/automate.rb +17 -7
  15. data/lib/chef/compliance/reporter/chef_server_automate.rb +11 -6
  16. data/lib/chef/compliance/reporter/cli.rb +77 -0
  17. data/lib/chef/compliance/reporter/compliance_enforcer.rb +4 -0
  18. data/lib/chef/compliance/reporter/json_file.rb +8 -1
  19. data/lib/chef/compliance/runner.rb +65 -27
  20. data/lib/chef/cookbook/synchronizer.rb +3 -5
  21. data/lib/chef/cookbook_loader.rb +2 -4
  22. data/lib/chef/cookbook_uploader.rb +0 -1
  23. data/lib/chef/data_bag_item.rb +11 -2
  24. data/lib/chef/delayed_evaluator.rb +4 -0
  25. data/lib/chef/deprecated.rb +4 -0
  26. data/lib/chef/dsl/chef_vault.rb +6 -6
  27. data/lib/chef/dsl/reboot_pending.rb +1 -2
  28. data/lib/chef/formatters/error_inspectors/resource_failure_inspector.rb +20 -22
  29. data/lib/chef/group.rb +75 -0
  30. data/lib/chef/mixin/get_source_from_package.rb +1 -1
  31. data/lib/chef/node/attribute.rb +6 -4
  32. data/lib/chef/node/immutable_collections.rb +13 -0
  33. data/lib/chef/node/mixin/deep_merge_cache.rb +11 -7
  34. data/lib/chef/org.rb +3 -2
  35. data/lib/chef/property.rb +18 -0
  36. data/lib/chef/provider.rb +1 -1
  37. data/lib/chef/provider/cron.rb +1 -1
  38. data/lib/chef/provider/execute.rb +2 -1
  39. data/lib/chef/provider/file.rb +1 -1
  40. data/lib/chef/provider/git.rb +5 -7
  41. data/lib/chef/provider/group/groupadd.rb +3 -3
  42. data/lib/chef/provider/group/groupmod.rb +3 -3
  43. data/lib/chef/provider/group/pw.rb +3 -3
  44. data/lib/chef/provider/ifconfig.rb +2 -2
  45. data/lib/chef/provider/link.rb +2 -2
  46. data/lib/chef/provider/mount.rb +5 -5
  47. data/lib/chef/provider/mount/aix.rb +3 -3
  48. data/lib/chef/provider/mount/mount.rb +5 -5
  49. data/lib/chef/provider/mount/windows.rb +1 -1
  50. data/lib/chef/provider/package.rb +17 -21
  51. data/lib/chef/provider/package/apt.rb +27 -1
  52. data/lib/chef/provider/package/deb.rb +3 -3
  53. data/lib/chef/provider/package/dnf/dnf_helper.py +1 -1
  54. data/lib/chef/provider/package/portage.rb +2 -2
  55. data/lib/chef/provider/package/rubygems.rb +11 -17
  56. data/lib/chef/provider/package/windows.rb +2 -4
  57. data/lib/chef/provider/package/yum/yum_helper.py +1 -1
  58. data/lib/chef/provider/route.rb +2 -2
  59. data/lib/chef/provider/service.rb +6 -6
  60. data/lib/chef/provider/service/aixinit.rb +1 -1
  61. data/lib/chef/provider/service/debian.rb +1 -1
  62. data/lib/chef/provider/service/freebsd.rb +15 -21
  63. data/lib/chef/provider/service/macosx.rb +4 -4
  64. data/lib/chef/provider/service/systemd.rb +43 -14
  65. data/lib/chef/provider/service/upstart.rb +2 -13
  66. data/lib/chef/provider/service/windows.rb +12 -12
  67. data/lib/chef/provider/subversion.rb +10 -12
  68. data/lib/chef/provider/systemd_unit.rb +36 -10
  69. data/lib/chef/provider/template/content.rb +2 -6
  70. data/lib/chef/provider/user.rb +2 -2
  71. data/lib/chef/provider/user/dscl.rb +1 -1
  72. data/lib/chef/provider/user/mac.rb +17 -20
  73. data/lib/chef/provider/user/pw.rb +1 -1
  74. data/lib/chef/provider/user/windows.rb +1 -1
  75. data/lib/chef/provider/zypper_repository.rb +2 -2
  76. data/lib/chef/providers.rb +0 -1
  77. data/lib/chef/resource/alternatives.rb +6 -6
  78. data/lib/chef/resource/apt_package.rb +1 -1
  79. data/lib/chef/resource/apt_preference.rb +2 -2
  80. data/lib/chef/resource/apt_repository.rb +6 -6
  81. data/lib/chef/resource/apt_update.rb +3 -2
  82. data/lib/chef/resource/archive_file.rb +2 -3
  83. data/lib/chef/resource/breakpoint.rb +1 -1
  84. data/lib/chef/resource/build_essential.rb +2 -6
  85. data/lib/chef/resource/chef_client_config.rb +2 -2
  86. data/lib/chef/resource/chef_client_cron.rb +4 -4
  87. data/lib/chef/resource/chef_client_launchd.rb +3 -3
  88. data/lib/chef/resource/chef_client_scheduled_task.rb +1 -1
  89. data/lib/chef/resource/chef_client_systemd_timer.rb +2 -2
  90. data/lib/chef/resource/chef_handler.rb +3 -7
  91. data/lib/chef/resource/chef_sleep.rb +1 -1
  92. data/lib/chef/resource/chef_vault_secret.rb +3 -8
  93. data/lib/chef/resource/chocolatey_config.rb +2 -6
  94. data/lib/chef/resource/chocolatey_feature.rb +2 -6
  95. data/lib/chef/resource/chocolatey_source.rb +4 -10
  96. data/lib/chef/resource/cron/_cron_shared.rb +2 -2
  97. data/lib/chef/resource/cron_access.rb +2 -4
  98. data/lib/chef/resource/dmg_package.rb +6 -10
  99. data/lib/chef/resource/dpkg_package.rb +1 -1
  100. data/lib/chef/resource/execute.rb +6 -1
  101. data/lib/chef/resource/file.rb +1 -1
  102. data/lib/chef/resource/group.rb +2 -2
  103. data/lib/chef/resource/homebrew_cask.rb +2 -6
  104. data/lib/chef/resource/homebrew_tap.rb +2 -6
  105. data/lib/chef/resource/hostname.rb +21 -17
  106. data/lib/chef/resource/http_request.rb +1 -1
  107. data/lib/chef/resource/kernel_module.rb +6 -17
  108. data/lib/chef/resource/locale.rb +2 -3
  109. data/lib/chef/resource/lwrp_base.rb +4 -0
  110. data/lib/chef/resource/macos_userdefaults.rb +10 -14
  111. data/lib/chef/resource/mdadm.rb +53 -7
  112. data/lib/chef/resource/mount.rb +2 -1
  113. data/lib/chef/resource/openssl_ec_private_key.rb +2 -2
  114. data/lib/chef/resource/openssl_rsa_private_key.rb +1 -1
  115. data/lib/chef/resource/openssl_x509_certificate.rb +2 -2
  116. data/lib/chef/resource/plist.rb +7 -7
  117. data/lib/chef/resource/powershell_script.rb +1 -1
  118. data/lib/chef/resource/remote_file.rb +1 -1
  119. data/lib/chef/resource/rhsm_errata.rb +16 -1
  120. data/lib/chef/resource/rhsm_errata_level.rb +10 -1
  121. data/lib/chef/resource/rhsm_register.rb +12 -6
  122. data/lib/chef/resource/rhsm_repo.rb +2 -6
  123. data/lib/chef/resource/rhsm_subscription.rb +2 -6
  124. data/lib/chef/resource/scm/git.rb +1 -1
  125. data/lib/chef/resource/sudo.rb +6 -6
  126. data/lib/chef/resource/sysctl.rb +2 -6
  127. data/lib/chef/resource/systemd_unit.rb +2 -2
  128. data/lib/chef/resource/template.rb +1 -1
  129. data/lib/chef/resource/timezone.rb +1 -3
  130. data/lib/chef/resource/user/mac_user.rb +1 -1
  131. data/lib/chef/resource/user_ulimit.rb +2 -2
  132. data/lib/chef/resource/windows_ad_join.rb +2 -6
  133. data/lib/chef/resource/windows_audit_policy.rb +1 -1
  134. data/lib/chef/resource/windows_auto_run.rb +2 -5
  135. data/lib/chef/resource/windows_certificate.rb +207 -73
  136. data/lib/chef/resource/windows_dfs_folder.rb +2 -6
  137. data/lib/chef/resource/windows_dfs_namespace.rb +2 -6
  138. data/lib/chef/resource/windows_dfs_server.rb +1 -3
  139. data/lib/chef/resource/windows_dns_record.rb +2 -6
  140. data/lib/chef/resource/windows_dns_zone.rb +2 -6
  141. data/lib/chef/resource/windows_env.rb +5 -4
  142. data/lib/chef/resource/windows_feature.rb +3 -9
  143. data/lib/chef/resource/windows_feature_dism.rb +2 -6
  144. data/lib/chef/resource/windows_feature_powershell.rb +3 -3
  145. data/lib/chef/resource/windows_firewall_profile.rb +4 -4
  146. data/lib/chef/resource/windows_firewall_rule.rb +2 -5
  147. data/lib/chef/resource/windows_font.rb +2 -4
  148. data/lib/chef/resource/windows_pagefile.rb +2 -6
  149. data/lib/chef/resource/windows_path.rb +2 -2
  150. data/lib/chef/resource/windows_printer.rb +4 -4
  151. data/lib/chef/resource/windows_printer_port.rb +6 -6
  152. data/lib/chef/resource/windows_security_policy.rb +53 -40
  153. data/lib/chef/resource/windows_share.rb +14 -21
  154. data/lib/chef/resource/windows_shortcut.rb +4 -6
  155. data/lib/chef/resource/windows_task.rb +17 -5
  156. data/lib/chef/resource/windows_uac.rb +1 -1
  157. data/lib/chef/resource/windows_user_privilege.rb +4 -4
  158. data/lib/chef/resource/windows_workgroup.rb +1 -2
  159. data/lib/chef/resources.rb +0 -1
  160. data/lib/chef/user.rb +0 -1
  161. data/lib/chef/user_v1.rb +3 -4
  162. data/lib/chef/util/dsc/configuration_generator.rb +1 -0
  163. data/lib/chef/util/dsc/local_configuration_manager.rb +1 -1
  164. data/lib/chef/version.rb +1 -1
  165. data/lib/chef/win32/registry.rb +4 -2
  166. data/spec/data/cookbooks/openldap/libraries/openldap.rb +1 -1
  167. data/spec/data/lwrp/resources/bar.rb +2 -0
  168. data/spec/data/lwrp/resources/buck_passer.rb +1 -0
  169. data/spec/data/lwrp/resources/buck_passer_2.rb +1 -0
  170. data/spec/data/lwrp/resources/embedded_resource_accesses_providers_scope.rb +1 -0
  171. data/spec/data/lwrp/resources/foo.rb +2 -0
  172. data/spec/data/lwrp/resources/inline_compiler.rb +1 -0
  173. data/spec/data/lwrp/resources/monkey_name_printer.rb +1 -0
  174. data/spec/data/lwrp/resources/paint_drying_watcher.rb +1 -0
  175. data/spec/data/lwrp/resources/thumb_twiddler.rb +1 -0
  176. data/spec/data/lwrp/resources_with_default_attributes/nodeattr.rb +2 -0
  177. data/spec/data/lwrp_const_scoping/resources/conflict.rb +1 -0
  178. data/spec/data/lwrp_override/resources/foo.rb +1 -0
  179. data/spec/data/rubygems.org/nonexistent_gem-info +1 -0
  180. data/spec/data/rubygems.org/sexp_processor-info +49 -0
  181. data/spec/data/run_context/cookbooks/circular-dep1/resources/resource.rb +1 -0
  182. data/spec/data/run_context/cookbooks/circular-dep2/resources/resource.rb +1 -0
  183. data/spec/data/run_context/cookbooks/dependency1/resources/resource.rb +1 -0
  184. data/spec/data/run_context/cookbooks/dependency2/resources/resource.rb +1 -0
  185. data/spec/data/run_context/cookbooks/no-default-attr/resources/resource.rb +1 -0
  186. data/spec/data/run_context/cookbooks/test-with-circular-deps/resources/resource.rb +2 -0
  187. data/spec/data/run_context/cookbooks/test-with-deps/resources/resource.rb +1 -0
  188. data/spec/data/run_context/cookbooks/test/resources/resource.rb +2 -0
  189. data/spec/functional/dsl/registry_helper_spec.rb +1 -1
  190. data/spec/functional/resource/aixinit_service_spec.rb +7 -7
  191. data/spec/functional/resource/apt_package_spec.rb +1 -1
  192. data/spec/functional/resource/chocolatey_package_spec.rb +13 -0
  193. data/spec/functional/resource/dnf_package_spec.rb +4 -1
  194. data/spec/functional/resource/registry_spec.rb +8 -8
  195. data/spec/functional/resource/user/mac_user_spec.rb +2 -2
  196. data/spec/functional/resource/windows_certificate_spec.rb +92 -35
  197. data/spec/functional/version_spec.rb +1 -1
  198. data/spec/functional/win32/registry_spec.rb +1 -1
  199. data/spec/integration/client/client_spec.rb +5 -2
  200. data/spec/integration/client/exit_code_spec.rb +1 -1
  201. data/spec/integration/client/ipv6_spec.rb +1 -1
  202. data/spec/integration/compliance/compliance_spec.rb +1 -1
  203. data/spec/integration/ohai/ohai_spec.rb +7 -6
  204. data/spec/integration/recipes/accumulator_spec.rb +13 -1
  205. data/spec/integration/recipes/lwrp_inline_resources_spec.rb +5 -1
  206. data/spec/integration/recipes/lwrp_spec.rb +3 -1
  207. data/spec/integration/recipes/notifies_spec.rb +15 -1
  208. data/spec/integration/recipes/notifying_block_spec.rb +2 -1
  209. data/spec/integration/recipes/recipe_dsl_spec.rb +9 -9
  210. data/spec/integration/recipes/unified_mode_spec.rb +1 -1
  211. data/spec/integration/recipes/use_partial_spec.rb +4 -1
  212. data/spec/spec_helper.rb +10 -13
  213. data/spec/support/chef_helpers.rb +0 -16
  214. data/spec/support/lib/chef/resource/with_state.rb +0 -1
  215. data/spec/support/lib/chef/resource/zen_follower.rb +0 -1
  216. data/spec/support/lib/chef/resource/zen_master.rb +0 -1
  217. data/spec/support/matchers/leak.rb +7 -9
  218. data/spec/support/platform_helpers.rb +1 -8
  219. data/spec/support/shared/integration/integration_helper.rb +0 -1
  220. data/spec/support/shared/unit/script_resource.rb +2 -2
  221. data/spec/unit/application/solo_spec.rb +2 -2
  222. data/spec/unit/chef_fs/diff_spec.rb +1 -1
  223. data/spec/unit/chef_fs/file_system_spec.rb +1 -1
  224. data/spec/unit/compliance/fetcher/automate_spec.rb +0 -16
  225. data/spec/unit/compliance/reporter/automate_spec.rb +26 -2
  226. data/spec/unit/compliance/reporter/chef_server_automate_spec.rb +20 -0
  227. data/spec/unit/compliance/reporter/compliance_enforcer_spec.rb +1 -0
  228. data/spec/unit/compliance/runner_spec.rb +30 -4
  229. data/spec/unit/data_bag_item_spec.rb +1 -6
  230. data/spec/unit/dsl/reboot_pending_spec.rb +2 -2
  231. data/spec/unit/dsl/registry_helper_spec.rb +1 -1
  232. data/spec/unit/lwrp_spec.rb +1 -1
  233. data/spec/unit/mixin/params_validate_spec.rb +4 -3
  234. data/spec/unit/node/attribute_spec.rb +1 -1
  235. data/spec/unit/node_spec.rb +78 -0
  236. data/spec/unit/org_group_spec.rb +45 -0
  237. data/spec/unit/property_spec.rb +23 -22
  238. data/spec/unit/provider/cron_spec.rb +1 -1
  239. data/spec/unit/provider/group/gpasswd_spec.rb +2 -2
  240. data/spec/unit/provider/group/groupmod_spec.rb +2 -2
  241. data/spec/unit/provider/group/pw_spec.rb +2 -2
  242. data/spec/unit/provider/group_spec.rb +1 -1
  243. data/spec/unit/provider/package/apt_spec.rb +84 -18
  244. data/spec/unit/provider/package/deb_spec.rb +3 -3
  245. data/spec/unit/provider/package/rubygems_spec.rb +21 -33
  246. data/spec/unit/provider/service/arch_service_spec.rb +1 -0
  247. data/spec/unit/provider/service/debian_service_spec.rb +1 -0
  248. data/spec/unit/provider/service/macosx_spec.rb +2 -2
  249. data/spec/unit/provider/service/systemd_service_spec.rb +138 -23
  250. data/spec/unit/provider/service/upstart_service_spec.rb +0 -29
  251. data/spec/unit/provider/service/windows_spec.rb +2 -2
  252. data/spec/unit/provider/subversion_spec.rb +2 -2
  253. data/spec/unit/provider/systemd_unit_spec.rb +79 -60
  254. data/spec/unit/provider/zypper_repository_spec.rb +2 -2
  255. data/spec/unit/provider_spec.rb +0 -8
  256. data/spec/unit/resource/powershell_script_spec.rb +2 -2
  257. data/spec/unit/resource/windows_task_spec.rb +1 -1
  258. data/spec/unit/user_spec.rb +1 -1
  259. data/spec/unit/user_v1_spec.rb +6 -4
  260. data/tasks/rspec.rb +16 -8
  261. metadata +19 -382
  262. data/bin/knife +0 -24
  263. data/lib/chef/application/knife.rb +0 -234
  264. data/lib/chef/application/windows_service.rb +0 -338
  265. data/lib/chef/application/windows_service_manager.rb +0 -205
  266. data/lib/chef/chef_fs/knife.rb +0 -160
  267. data/lib/chef/chef_fs/parallelizer.rb +0 -102
  268. data/lib/chef/chef_fs/parallelizer/flatten_enumerable.rb +0 -35
  269. data/lib/chef/chef_fs/parallelizer/parallel_enumerable.rb +0 -278
  270. data/lib/chef/cookbook_site_streaming_uploader.rb +0 -244
  271. data/lib/chef/knife.rb +0 -665
  272. data/lib/chef/knife/acl_add.rb +0 -57
  273. data/lib/chef/knife/acl_base.rb +0 -183
  274. data/lib/chef/knife/acl_bulk_add.rb +0 -78
  275. data/lib/chef/knife/acl_bulk_remove.rb +0 -83
  276. data/lib/chef/knife/acl_remove.rb +0 -62
  277. data/lib/chef/knife/acl_show.rb +0 -56
  278. data/lib/chef/knife/bootstrap.rb +0 -1192
  279. data/lib/chef/knife/bootstrap/chef_vault_handler.rb +0 -162
  280. data/lib/chef/knife/bootstrap/client_builder.rb +0 -212
  281. data/lib/chef/knife/bootstrap/templates/README.md +0 -11
  282. data/lib/chef/knife/bootstrap/templates/chef-full.erb +0 -242
  283. data/lib/chef/knife/bootstrap/templates/windows-chef-client-msi.erb +0 -278
  284. data/lib/chef/knife/bootstrap/train_connector.rb +0 -336
  285. data/lib/chef/knife/client_bulk_delete.rb +0 -104
  286. data/lib/chef/knife/client_create.rb +0 -101
  287. data/lib/chef/knife/client_delete.rb +0 -62
  288. data/lib/chef/knife/client_edit.rb +0 -52
  289. data/lib/chef/knife/client_key_create.rb +0 -73
  290. data/lib/chef/knife/client_key_delete.rb +0 -80
  291. data/lib/chef/knife/client_key_edit.rb +0 -83
  292. data/lib/chef/knife/client_key_list.rb +0 -73
  293. data/lib/chef/knife/client_key_show.rb +0 -80
  294. data/lib/chef/knife/client_list.rb +0 -41
  295. data/lib/chef/knife/client_reregister.rb +0 -58
  296. data/lib/chef/knife/client_show.rb +0 -48
  297. data/lib/chef/knife/config_get.rb +0 -39
  298. data/lib/chef/knife/config_get_profile.rb +0 -37
  299. data/lib/chef/knife/config_list.rb +0 -139
  300. data/lib/chef/knife/config_list_profiles.rb +0 -37
  301. data/lib/chef/knife/config_show.rb +0 -127
  302. data/lib/chef/knife/config_use.rb +0 -61
  303. data/lib/chef/knife/config_use_profile.rb +0 -47
  304. data/lib/chef/knife/configure.rb +0 -150
  305. data/lib/chef/knife/configure_client.rb +0 -48
  306. data/lib/chef/knife/cookbook_bulk_delete.rb +0 -71
  307. data/lib/chef/knife/cookbook_delete.rb +0 -151
  308. data/lib/chef/knife/cookbook_download.rb +0 -142
  309. data/lib/chef/knife/cookbook_list.rb +0 -47
  310. data/lib/chef/knife/cookbook_metadata.rb +0 -106
  311. data/lib/chef/knife/cookbook_metadata_from_file.rb +0 -49
  312. data/lib/chef/knife/cookbook_show.rb +0 -98
  313. data/lib/chef/knife/cookbook_upload.rb +0 -292
  314. data/lib/chef/knife/core/bootstrap_context.rb +0 -264
  315. data/lib/chef/knife/core/cookbook_scm_repo.rb +0 -159
  316. data/lib/chef/knife/core/formatting_options.rb +0 -49
  317. data/lib/chef/knife/core/gem_glob_loader.rb +0 -138
  318. data/lib/chef/knife/core/generic_presenter.rb +0 -232
  319. data/lib/chef/knife/core/hashed_command_loader.rb +0 -100
  320. data/lib/chef/knife/core/node_editor.rb +0 -130
  321. data/lib/chef/knife/core/node_presenter.rb +0 -133
  322. data/lib/chef/knife/core/object_loader.rb +0 -115
  323. data/lib/chef/knife/core/status_presenter.rb +0 -147
  324. data/lib/chef/knife/core/subcommand_loader.rb +0 -203
  325. data/lib/chef/knife/core/text_formatter.rb +0 -85
  326. data/lib/chef/knife/core/ui.rb +0 -338
  327. data/lib/chef/knife/core/windows_bootstrap_context.rb +0 -406
  328. data/lib/chef/knife/data_bag_create.rb +0 -81
  329. data/lib/chef/knife/data_bag_delete.rb +0 -49
  330. data/lib/chef/knife/data_bag_edit.rb +0 -74
  331. data/lib/chef/knife/data_bag_from_file.rb +0 -113
  332. data/lib/chef/knife/data_bag_list.rb +0 -42
  333. data/lib/chef/knife/data_bag_secret_options.rb +0 -122
  334. data/lib/chef/knife/data_bag_show.rb +0 -69
  335. data/lib/chef/knife/delete.rb +0 -125
  336. data/lib/chef/knife/deps.rb +0 -156
  337. data/lib/chef/knife/diff.rb +0 -83
  338. data/lib/chef/knife/download.rb +0 -84
  339. data/lib/chef/knife/edit.rb +0 -88
  340. data/lib/chef/knife/environment_compare.rb +0 -128
  341. data/lib/chef/knife/environment_create.rb +0 -52
  342. data/lib/chef/knife/environment_delete.rb +0 -44
  343. data/lib/chef/knife/environment_edit.rb +0 -44
  344. data/lib/chef/knife/environment_from_file.rb +0 -84
  345. data/lib/chef/knife/environment_list.rb +0 -41
  346. data/lib/chef/knife/environment_show.rb +0 -47
  347. data/lib/chef/knife/exec.rb +0 -99
  348. data/lib/chef/knife/group_add.rb +0 -55
  349. data/lib/chef/knife/group_create.rb +0 -49
  350. data/lib/chef/knife/group_destroy.rb +0 -53
  351. data/lib/chef/knife/group_list.rb +0 -43
  352. data/lib/chef/knife/group_remove.rb +0 -56
  353. data/lib/chef/knife/group_show.rb +0 -49
  354. data/lib/chef/knife/key_create.rb +0 -112
  355. data/lib/chef/knife/key_create_base.rb +0 -50
  356. data/lib/chef/knife/key_delete.rb +0 -55
  357. data/lib/chef/knife/key_edit.rb +0 -118
  358. data/lib/chef/knife/key_edit_base.rb +0 -55
  359. data/lib/chef/knife/key_list.rb +0 -90
  360. data/lib/chef/knife/key_list_base.rb +0 -45
  361. data/lib/chef/knife/key_show.rb +0 -53
  362. data/lib/chef/knife/list.rb +0 -177
  363. data/lib/chef/knife/node_bulk_delete.rb +0 -75
  364. data/lib/chef/knife/node_create.rb +0 -47
  365. data/lib/chef/knife/node_delete.rb +0 -46
  366. data/lib/chef/knife/node_edit.rb +0 -70
  367. data/lib/chef/knife/node_environment_set.rb +0 -53
  368. data/lib/chef/knife/node_from_file.rb +0 -51
  369. data/lib/chef/knife/node_list.rb +0 -44
  370. data/lib/chef/knife/node_policy_set.rb +0 -79
  371. data/lib/chef/knife/node_run_list_add.rb +0 -104
  372. data/lib/chef/knife/node_run_list_remove.rb +0 -67
  373. data/lib/chef/knife/node_run_list_set.rb +0 -66
  374. data/lib/chef/knife/node_show.rb +0 -63
  375. data/lib/chef/knife/null.rb +0 -12
  376. data/lib/chef/knife/raw.rb +0 -123
  377. data/lib/chef/knife/recipe_list.rb +0 -32
  378. data/lib/chef/knife/rehash.rb +0 -50
  379. data/lib/chef/knife/role_bulk_delete.rb +0 -66
  380. data/lib/chef/knife/role_create.rb +0 -53
  381. data/lib/chef/knife/role_delete.rb +0 -46
  382. data/lib/chef/knife/role_edit.rb +0 -45
  383. data/lib/chef/knife/role_env_run_list_add.rb +0 -87
  384. data/lib/chef/knife/role_env_run_list_clear.rb +0 -55
  385. data/lib/chef/knife/role_env_run_list_remove.rb +0 -57
  386. data/lib/chef/knife/role_env_run_list_replace.rb +0 -60
  387. data/lib/chef/knife/role_env_run_list_set.rb +0 -70
  388. data/lib/chef/knife/role_from_file.rb +0 -51
  389. data/lib/chef/knife/role_list.rb +0 -42
  390. data/lib/chef/knife/role_run_list_add.rb +0 -87
  391. data/lib/chef/knife/role_run_list_clear.rb +0 -55
  392. data/lib/chef/knife/role_run_list_remove.rb +0 -56
  393. data/lib/chef/knife/role_run_list_replace.rb +0 -60
  394. data/lib/chef/knife/role_run_list_set.rb +0 -69
  395. data/lib/chef/knife/role_show.rb +0 -48
  396. data/lib/chef/knife/search.rb +0 -194
  397. data/lib/chef/knife/serve.rb +0 -65
  398. data/lib/chef/knife/show.rb +0 -72
  399. data/lib/chef/knife/ssh.rb +0 -645
  400. data/lib/chef/knife/ssl_check.rb +0 -284
  401. data/lib/chef/knife/ssl_fetch.rb +0 -161
  402. data/lib/chef/knife/status.rb +0 -95
  403. data/lib/chef/knife/supermarket_download.rb +0 -121
  404. data/lib/chef/knife/supermarket_install.rb +0 -192
  405. data/lib/chef/knife/supermarket_list.rb +0 -76
  406. data/lib/chef/knife/supermarket_search.rb +0 -53
  407. data/lib/chef/knife/supermarket_share.rb +0 -166
  408. data/lib/chef/knife/supermarket_show.rb +0 -66
  409. data/lib/chef/knife/supermarket_unshare.rb +0 -61
  410. data/lib/chef/knife/tag_create.rb +0 -52
  411. data/lib/chef/knife/tag_delete.rb +0 -60
  412. data/lib/chef/knife/tag_list.rb +0 -47
  413. data/lib/chef/knife/upload.rb +0 -86
  414. data/lib/chef/knife/user_create.rb +0 -107
  415. data/lib/chef/knife/user_delete.rb +0 -44
  416. data/lib/chef/knife/user_dissociate.rb +0 -42
  417. data/lib/chef/knife/user_edit.rb +0 -52
  418. data/lib/chef/knife/user_invite_add.rb +0 -43
  419. data/lib/chef/knife/user_invite_list.rb +0 -34
  420. data/lib/chef/knife/user_invite_rescind.rb +0 -63
  421. data/lib/chef/knife/user_key_create.rb +0 -73
  422. data/lib/chef/knife/user_key_delete.rb +0 -80
  423. data/lib/chef/knife/user_key_edit.rb +0 -83
  424. data/lib/chef/knife/user_key_list.rb +0 -73
  425. data/lib/chef/knife/user_key_show.rb +0 -80
  426. data/lib/chef/knife/user_list.rb +0 -42
  427. data/lib/chef/knife/user_reregister.rb +0 -59
  428. data/lib/chef/knife/user_show.rb +0 -48
  429. data/lib/chef/knife/xargs.rb +0 -282
  430. data/lib/chef/knife/yaml_convert.rb +0 -91
  431. data/lib/chef/resource/user/dscl_user.rb +0 -35
  432. data/spec/data/knife-home/.chef/plugins/knife/example_home_subcommand.rb +0 -0
  433. data/spec/data/knife-site-subcommands/plugins/knife/example_subcommand.rb +0 -0
  434. data/spec/data/knife_subcommand/test_explicit_category.rb +0 -7
  435. data/spec/data/knife_subcommand/test_name_mapping.rb +0 -4
  436. data/spec/data/knife_subcommand/test_yourself.rb +0 -21
  437. data/spec/functional/knife/configure_spec.rb +0 -33
  438. data/spec/functional/knife/cookbook_delete_spec.rb +0 -156
  439. data/spec/functional/knife/exec_spec.rb +0 -55
  440. data/spec/functional/knife/rehash_spec.rb +0 -39
  441. data/spec/functional/knife/smoke_test.rb +0 -42
  442. data/spec/functional/knife/ssh_spec.rb +0 -352
  443. data/spec/functional/resource/user/dscl_spec.rb +0 -188
  444. data/spec/functional/resource/windows_service_spec.rb +0 -105
  445. data/spec/functional/win32/service_manager_spec.rb +0 -220
  446. data/spec/integration/knife/chef_fs_data_store_spec.rb +0 -557
  447. data/spec/integration/knife/chef_repo_path_spec.rb +0 -962
  448. data/spec/integration/knife/chef_repository_file_system_spec.rb +0 -200
  449. data/spec/integration/knife/chefignore_spec.rb +0 -301
  450. data/spec/integration/knife/client_bulk_delete_spec.rb +0 -131
  451. data/spec/integration/knife/client_create_spec.rb +0 -70
  452. data/spec/integration/knife/client_delete_spec.rb +0 -64
  453. data/spec/integration/knife/client_key_create_spec.rb +0 -66
  454. data/spec/integration/knife/client_key_delete_spec.rb +0 -43
  455. data/spec/integration/knife/client_key_list_spec.rb +0 -61
  456. data/spec/integration/knife/client_key_show_spec.rb +0 -45
  457. data/spec/integration/knife/client_list_spec.rb +0 -49
  458. data/spec/integration/knife/client_show_spec.rb +0 -37
  459. data/spec/integration/knife/common_options_spec.rb +0 -174
  460. data/spec/integration/knife/config_list_spec.rb +0 -220
  461. data/spec/integration/knife/config_show_spec.rb +0 -192
  462. data/spec/integration/knife/config_use_spec.rb +0 -198
  463. data/spec/integration/knife/cookbook_api_ipv6_spec.rb +0 -113
  464. data/spec/integration/knife/cookbook_bulk_delete_spec.rb +0 -65
  465. data/spec/integration/knife/cookbook_download_spec.rb +0 -72
  466. data/spec/integration/knife/cookbook_list_spec.rb +0 -55
  467. data/spec/integration/knife/cookbook_show_spec.rb +0 -149
  468. data/spec/integration/knife/cookbook_upload_spec.rb +0 -128
  469. data/spec/integration/knife/data_bag_create_spec.rb +0 -125
  470. data/spec/integration/knife/data_bag_delete_spec.rb +0 -59
  471. data/spec/integration/knife/data_bag_edit_spec.rb +0 -105
  472. data/spec/integration/knife/data_bag_from_file_spec.rb +0 -116
  473. data/spec/integration/knife/data_bag_list_spec.rb +0 -44
  474. data/spec/integration/knife/data_bag_show_spec.rb +0 -95
  475. data/spec/integration/knife/delete_spec.rb +0 -1018
  476. data/spec/integration/knife/deps_spec.rb +0 -703
  477. data/spec/integration/knife/diff_spec.rb +0 -605
  478. data/spec/integration/knife/download_spec.rb +0 -1336
  479. data/spec/integration/knife/environment_compare_spec.rb +0 -75
  480. data/spec/integration/knife/environment_create_spec.rb +0 -41
  481. data/spec/integration/knife/environment_delete_spec.rb +0 -37
  482. data/spec/integration/knife/environment_from_file_spec.rb +0 -116
  483. data/spec/integration/knife/environment_list_spec.rb +0 -42
  484. data/spec/integration/knife/environment_show_spec.rb +0 -77
  485. data/spec/integration/knife/list_spec.rb +0 -1060
  486. data/spec/integration/knife/node_bulk_delete_spec.rb +0 -52
  487. data/spec/integration/knife/node_create_spec.rb +0 -47
  488. data/spec/integration/knife/node_delete_spec.rb +0 -48
  489. data/spec/integration/knife/node_environment_set_spec.rb +0 -46
  490. data/spec/integration/knife/node_from_file_spec.rb +0 -59
  491. data/spec/integration/knife/node_list_spec.rb +0 -45
  492. data/spec/integration/knife/node_run_list_add_spec.rb +0 -54
  493. data/spec/integration/knife/node_run_list_remove_spec.rb +0 -36
  494. data/spec/integration/knife/node_run_list_set_spec.rb +0 -41
  495. data/spec/integration/knife/node_show_spec.rb +0 -36
  496. data/spec/integration/knife/raw_spec.rb +0 -297
  497. data/spec/integration/knife/redirection_spec.rb +0 -64
  498. data/spec/integration/knife/role_bulk_delete_spec.rb +0 -52
  499. data/spec/integration/knife/role_create_spec.rb +0 -41
  500. data/spec/integration/knife/role_delete_spec.rb +0 -48
  501. data/spec/integration/knife/role_from_file_spec.rb +0 -96
  502. data/spec/integration/knife/role_list_spec.rb +0 -45
  503. data/spec/integration/knife/role_show_spec.rb +0 -51
  504. data/spec/integration/knife/search_node_spec.rb +0 -40
  505. data/spec/integration/knife/serve_spec.rb +0 -92
  506. data/spec/integration/knife/show_spec.rb +0 -197
  507. data/spec/integration/knife/upload_spec.rb +0 -1617
  508. data/spec/support/shared/functional/knife.rb +0 -37
  509. data/spec/support/shared/functional/win32_service.rb +0 -57
  510. data/spec/support/shared/integration/knife_support.rb +0 -192
  511. data/spec/support/shared/unit/knife_shared.rb +0 -39
  512. data/spec/unit/application/knife_spec.rb +0 -241
  513. data/spec/unit/chef_fs/parallelizer_spec.rb +0 -479
  514. data/spec/unit/cookbook_site_streaming_uploader_spec.rb +0 -198
  515. data/spec/unit/knife/bootstrap/chef_vault_handler_spec.rb +0 -152
  516. data/spec/unit/knife/bootstrap/client_builder_spec.rb +0 -207
  517. data/spec/unit/knife/bootstrap/train_connector_spec.rb +0 -244
  518. data/spec/unit/knife/bootstrap_spec.rb +0 -2220
  519. data/spec/unit/knife/client_bulk_delete_spec.rb +0 -166
  520. data/spec/unit/knife/client_create_spec.rb +0 -169
  521. data/spec/unit/knife/client_delete_spec.rb +0 -99
  522. data/spec/unit/knife/client_edit_spec.rb +0 -53
  523. data/spec/unit/knife/client_list_spec.rb +0 -34
  524. data/spec/unit/knife/client_reregister_spec.rb +0 -62
  525. data/spec/unit/knife/client_show_spec.rb +0 -52
  526. data/spec/unit/knife/configure_client_spec.rb +0 -81
  527. data/spec/unit/knife/configure_spec.rb +0 -190
  528. data/spec/unit/knife/cookbook_bulk_delete_spec.rb +0 -87
  529. data/spec/unit/knife/cookbook_delete_spec.rb +0 -239
  530. data/spec/unit/knife/cookbook_download_spec.rb +0 -255
  531. data/spec/unit/knife/cookbook_list_spec.rb +0 -88
  532. data/spec/unit/knife/cookbook_metadata_from_file_spec.rb +0 -72
  533. data/spec/unit/knife/cookbook_metadata_spec.rb +0 -182
  534. data/spec/unit/knife/cookbook_show_spec.rb +0 -253
  535. data/spec/unit/knife/cookbook_upload_spec.rb +0 -364
  536. data/spec/unit/knife/core/bootstrap_context_spec.rb +0 -287
  537. data/spec/unit/knife/core/cookbook_scm_repo_spec.rb +0 -187
  538. data/spec/unit/knife/core/gem_glob_loader_spec.rb +0 -209
  539. data/spec/unit/knife/core/hashed_command_loader_spec.rb +0 -112
  540. data/spec/unit/knife/core/node_editor_spec.rb +0 -211
  541. data/spec/unit/knife/core/object_loader_spec.rb +0 -81
  542. data/spec/unit/knife/core/status_presenter_spec.rb +0 -54
  543. data/spec/unit/knife/core/subcommand_loader_spec.rb +0 -64
  544. data/spec/unit/knife/core/ui_spec.rb +0 -656
  545. data/spec/unit/knife/core/windows_bootstrap_context_spec.rb +0 -238
  546. data/spec/unit/knife/data_bag_create_spec.rb +0 -175
  547. data/spec/unit/knife/data_bag_edit_spec.rb +0 -126
  548. data/spec/unit/knife/data_bag_from_file_spec.rb +0 -174
  549. data/spec/unit/knife/data_bag_secret_options_spec.rb +0 -173
  550. data/spec/unit/knife/data_bag_show_spec.rb +0 -139
  551. data/spec/unit/knife/environment_compare_spec.rb +0 -112
  552. data/spec/unit/knife/environment_create_spec.rb +0 -91
  553. data/spec/unit/knife/environment_delete_spec.rb +0 -71
  554. data/spec/unit/knife/environment_edit_spec.rb +0 -79
  555. data/spec/unit/knife/environment_from_file_spec.rb +0 -90
  556. data/spec/unit/knife/environment_list_spec.rb +0 -54
  557. data/spec/unit/knife/environment_show_spec.rb +0 -52
  558. data/spec/unit/knife/key_create_spec.rb +0 -223
  559. data/spec/unit/knife/key_delete_spec.rb +0 -133
  560. data/spec/unit/knife/key_edit_spec.rb +0 -264
  561. data/spec/unit/knife/key_helper.rb +0 -74
  562. data/spec/unit/knife/key_list_spec.rb +0 -216
  563. data/spec/unit/knife/key_show_spec.rb +0 -126
  564. data/spec/unit/knife/node_bulk_delete_spec.rb +0 -94
  565. data/spec/unit/knife/node_delete_spec.rb +0 -77
  566. data/spec/unit/knife/node_edit_spec.rb +0 -116
  567. data/spec/unit/knife/node_environment_set_spec.rb +0 -61
  568. data/spec/unit/knife/node_from_file_spec.rb +0 -59
  569. data/spec/unit/knife/node_list_spec.rb +0 -62
  570. data/spec/unit/knife/node_policy_set_spec.rb +0 -122
  571. data/spec/unit/knife/node_run_list_add_spec.rb +0 -145
  572. data/spec/unit/knife/node_run_list_remove_spec.rb +0 -106
  573. data/spec/unit/knife/node_run_list_set_spec.rb +0 -115
  574. data/spec/unit/knife/node_show_spec.rb +0 -65
  575. data/spec/unit/knife/raw_spec.rb +0 -43
  576. data/spec/unit/knife/role_bulk_delete_spec.rb +0 -80
  577. data/spec/unit/knife/role_create_spec.rb +0 -80
  578. data/spec/unit/knife/role_delete_spec.rb +0 -67
  579. data/spec/unit/knife/role_edit_spec.rb +0 -77
  580. data/spec/unit/knife/role_env_run_list_add_spec.rb +0 -217
  581. data/spec/unit/knife/role_env_run_list_clear_spec.rb +0 -94
  582. data/spec/unit/knife/role_env_run_list_remove_spec.rb +0 -102
  583. data/spec/unit/knife/role_env_run_list_replace_spec.rb +0 -105
  584. data/spec/unit/knife/role_env_run_list_set_spec.rb +0 -99
  585. data/spec/unit/knife/role_from_file_spec.rb +0 -69
  586. data/spec/unit/knife/role_list_spec.rb +0 -54
  587. data/spec/unit/knife/role_run_list_add_spec.rb +0 -179
  588. data/spec/unit/knife/role_run_list_clear_spec.rb +0 -84
  589. data/spec/unit/knife/role_run_list_remove_spec.rb +0 -92
  590. data/spec/unit/knife/role_run_list_replace_spec.rb +0 -98
  591. data/spec/unit/knife/role_run_list_set_spec.rb +0 -89
  592. data/spec/unit/knife/role_show_spec.rb +0 -59
  593. data/spec/unit/knife/ssh_spec.rb +0 -403
  594. data/spec/unit/knife/ssl_check_spec.rb +0 -256
  595. data/spec/unit/knife/ssl_fetch_spec.rb +0 -222
  596. data/spec/unit/knife/status_spec.rb +0 -112
  597. data/spec/unit/knife/supermarket_download_spec.rb +0 -152
  598. data/spec/unit/knife/supermarket_install_spec.rb +0 -202
  599. data/spec/unit/knife/supermarket_list_spec.rb +0 -70
  600. data/spec/unit/knife/supermarket_search_spec.rb +0 -85
  601. data/spec/unit/knife/supermarket_share_spec.rb +0 -208
  602. data/spec/unit/knife/supermarket_unshare_spec.rb +0 -78
  603. data/spec/unit/knife/tag_create_spec.rb +0 -23
  604. data/spec/unit/knife/tag_delete_spec.rb +0 -25
  605. data/spec/unit/knife/tag_list_spec.rb +0 -23
  606. data/spec/unit/knife/user_create_spec.rb +0 -184
  607. data/spec/unit/knife/user_delete_spec.rb +0 -46
  608. data/spec/unit/knife/user_edit_spec.rb +0 -48
  609. data/spec/unit/knife/user_list_spec.rb +0 -36
  610. data/spec/unit/knife/user_reregister_spec.rb +0 -56
  611. data/spec/unit/knife/user_show_spec.rb +0 -46
  612. data/spec/unit/knife_spec.rb +0 -634
  613. data/spec/unit/provider/user/dscl_spec.rb +0 -699
  614. data/spec/unit/windows_service_spec.rb +0 -118
@@ -67,7 +67,7 @@ class Chef
67
67
  password: @new_resource.password)
68
68
  logger.trace("#{@new_resource} is mounted at #{@new_resource.mount_point}")
69
69
  else
70
- logger.trace("#{@new_resource} is already mounted at #{@new_resource.mount_point}")
70
+ logger.debug("#{@new_resource} is already mounted at #{@new_resource.mount_point}")
71
71
  end
72
72
  end
73
73
 
@@ -109,7 +109,7 @@ class Chef
109
109
 
110
110
  action :install do
111
111
  unless target_version_array.any?
112
- logger.trace("#{new_resource} is already installed - nothing to do")
112
+ logger.debug("#{new_resource} is already installed - nothing to do")
113
113
  return
114
114
  end
115
115
 
@@ -138,7 +138,7 @@ class Chef
138
138
 
139
139
  action :upgrade do
140
140
  unless target_version_array.any?
141
- logger.trace("#{new_resource} no versions to upgrade - nothing to do")
141
+ logger.debug("#{new_resource} no versions to upgrade - nothing to do")
142
142
  return
143
143
  end
144
144
 
@@ -177,7 +177,7 @@ class Chef
177
177
  logger.info("#{new_resource} removed")
178
178
  end
179
179
  else
180
- logger.trace("#{new_resource} package does not exist - nothing to do")
180
+ logger.debug("#{new_resource} package does not exist - nothing to do")
181
181
  end
182
182
  end
183
183
 
@@ -229,7 +229,7 @@ class Chef
229
229
  end
230
230
  end
231
231
  else
232
- logger.trace("#{new_resource} is already locked")
232
+ logger.debug("#{new_resource} is already locked")
233
233
  end
234
234
  end
235
235
 
@@ -248,7 +248,7 @@ class Chef
248
248
  end
249
249
  end
250
250
  else
251
- logger.trace("#{new_resource} is already unlocked")
251
+ logger.debug("#{new_resource} is already unlocked")
252
252
  end
253
253
  end
254
254
 
@@ -598,12 +598,10 @@ class Chef
598
598
  # @return [Array] new_resource.source as an array
599
599
  def source_array
600
600
  @source_array ||=
601
- begin
602
- if new_resource.source.nil?
603
- package_name_array.map { nil }
604
- else
605
- [ new_resource.source ].flatten
606
- end
601
+ if new_resource.source.nil?
602
+ package_name_array.map { nil }
603
+ else
604
+ [ new_resource.source ].flatten
607
605
  end
608
606
  end
609
607
 
@@ -612,16 +610,14 @@ class Chef
612
610
  # @return [Array] Array of sources with package_names converted to sources
613
611
  def resolved_source_array
614
612
  @resolved_source_array ||=
615
- begin
616
- source_array.each_with_index.map do |source, i|
617
- package_name = package_name_array[i]
618
- # we require at least one '/' in the package_name to avoid [XXX_]package 'foo' breaking due to a random 'foo' file in cwd
619
- if use_package_name_for_source? && source.nil? && package_name.match(/#{::File::SEPARATOR}/) && ::File.exist?(package_name)
620
- logger.trace("No package source specified, but #{package_name} exists on filesystem, using #{package_name} as source.")
621
- package_name
622
- else
623
- source
624
- end
613
+ source_array.each_with_index.map do |source, i|
614
+ package_name = package_name_array[i]
615
+ # we require at least one '/' in the package_name to avoid [XXX_]package 'foo' breaking due to a random 'foo' file in cwd
616
+ if use_package_name_for_source? && source.nil? && package_name.match(/#{::File::SEPARATOR}/) && ::File.exist?(package_name)
617
+ logger.trace("No package source specified, but #{package_name} exists on filesystem, using #{package_name} as source.")
618
+ package_name
619
+ else
620
+ source
625
621
  end
626
622
  end
627
623
  end
@@ -176,6 +176,7 @@ class Chef
176
176
  def resolve_package_versions(pkg)
177
177
  current_version = nil
178
178
  candidate_version = nil
179
+ all_versions = []
179
180
  run_noninteractive("apt-cache", default_release_options, "policy", pkg).stdout.each_line do |line|
180
181
  case line
181
182
  when /^\s{2}Installed: (.+)$/
@@ -184,9 +185,34 @@ class Chef
184
185
  when /^\s{2}Candidate: (.+)$/
185
186
  candidate_version = ( $1 != "(none)" ) ? $1 : nil
186
187
  logger.trace("#{new_resource} candidate version for #{pkg} is #{$1}")
188
+ when /\s+(?:\*\*\* )?(\S+) \d+/
189
+ all_versions << $1
187
190
  end
188
191
  end
189
- [ current_version, candidate_version ]
192
+ # This is a bit ugly... really this whole provider needs
193
+ # to be rewritten to use target_version_array and friends, but
194
+ # for now this gets us moving
195
+ idx = package_name_array.index(pkg)
196
+ chosen_version =
197
+ if idx
198
+ user_ver = new_version_array[idx]
199
+ if user_ver
200
+ if all_versions.include?(user_ver)
201
+ user_ver
202
+ else
203
+ logger.debug("User specified a version that's not available")
204
+ nil
205
+ end
206
+ else
207
+ # user didn't specify a version, use candidate
208
+ candidate_version
209
+ end
210
+ else
211
+ # this probably means we're redirected from a virtual
212
+ # package, so... just go with candidate version
213
+ candidate_version
214
+ end
215
+ [ current_version, chosen_version ]
190
216
  end
191
217
 
192
218
  def resolve_virtual_package_name(pkg)
@@ -28,12 +28,12 @@ class Chef
28
28
 
29
29
  action :reconfig do
30
30
  if current_resource.version.nil?
31
- logger.trace("#{new_resource} is NOT installed - nothing to do")
31
+ logger.debug("#{new_resource} is NOT installed - nothing to do")
32
32
  return
33
33
  end
34
34
 
35
35
  unless new_resource.response_file
36
- logger.trace("#{new_resource} no response_file provided - nothing to do")
36
+ logger.debug("#{new_resource} no response_file provided - nothing to do")
37
37
  return
38
38
  end
39
39
 
@@ -46,7 +46,7 @@ class Chef
46
46
  logger.info("#{new_resource} reconfigured")
47
47
  end
48
48
  else
49
- logger.trace("#{new_resource} preseeding has not changed - nothing to do")
49
+ logger.debug("#{new_resource} preseeding has not changed - nothing to do")
50
50
  end
51
51
  end
52
52
 
@@ -160,7 +160,7 @@ else:
160
160
 
161
161
  try:
162
162
  while 1:
163
- # kill self if we get orphaned (tragic)
163
+ # stop the process if the parent proc goes away
164
164
  ppid = os.getppid()
165
165
  if ppid == 1:
166
166
  raise RuntimeError("orphaned")
@@ -28,13 +28,13 @@ class Chef
28
28
  provides :package, platform: "gentoo"
29
29
  provides :portage_package
30
30
 
31
- PACKAGE_NAME_PATTERN = %r{(?:([^/]+)/)?([^/]+)}.freeze
31
+ PACKAGE_NAME_PATTERN = %r{^(?:([^/]+)/)?([^/]+)$}.freeze
32
32
 
33
33
  def load_current_resource
34
34
  @current_resource = Chef::Resource::PortagePackage.new(new_resource.name)
35
35
  current_resource.package_name(new_resource.package_name)
36
36
 
37
- category, pkg = /^#{PACKAGE_NAME_PATTERN}$/.match(new_resource.package_name)[1, 2]
37
+ category, pkg = PACKAGE_NAME_PATTERN.match(new_resource.package_name)[1, 2]
38
38
 
39
39
  globsafe_category = category ? Chef::Util::PathHelper.escape_glob_dir(category) : nil
40
40
  globsafe_pkg = Chef::Util::PathHelper.escape_glob_dir(pkg)
@@ -72,7 +72,6 @@ class Chef
72
72
  # A rubygems specification object containing the list of gemspecs for all
73
73
  # available gems in the gem installation.
74
74
  # Implemented by subclasses
75
- # For rubygems >= 1.8.0
76
75
  #
77
76
  # @return [Gem::Specification]
78
77
  #
@@ -107,10 +106,8 @@ class Chef
107
106
  # This isn't sorting before returning because the only code that
108
107
  # uses this method calls `max_by` so it doesn't need to be sorted.
109
108
  stubs
110
- elsif rubygems_version >= Gem::Version.new("1.8.0")
109
+ else # >= rubygems 1.8 behavior
111
110
  gem_specification.find_all_by_name(gem_dep.name, gem_dep.requirement)
112
- else
113
- gem_source_index.search(gem_dep)
114
111
  end
115
112
  end
116
113
 
@@ -192,7 +189,8 @@ class Chef
192
189
  begin
193
190
  rs = dependency_installer.resolve_dependencies gem_dependency.name, gem_dependency.requirement
194
191
  rs.specs.find { |s| s.name == gem_dependency.name }
195
- rescue Gem::UnsatisfiableDependencyError
192
+ # ruby-3.0.0 versions of rubygems-3.x throws NoMethodError when the dep is not found
193
+ rescue Gem::UnsatisfiableDependencyError, NoMethodError
196
194
  nil
197
195
  end
198
196
  end
@@ -423,11 +421,11 @@ class Chef
423
421
  end
424
422
 
425
423
  def is_omnibus?
426
- if %r{/(opscode|chef|chefdk)/embedded/bin}.match?(RbConfig::CONFIG["bindir"])
424
+ if %r{/(#{ChefUtils::Dist::Org::LEGACY_CONF_DIR}|#{ChefUtils::Dist::Infra::SHORT}|#{ChefUtils::Dist::Workstation::DIR_SUFFIX})/embedded/bin}.match?(RbConfig::CONFIG["bindir"])
427
425
  logger.trace("#{new_resource} detected omnibus installation in #{RbConfig::CONFIG["bindir"]}")
428
426
  # Omnibus installs to a static path because of linking on unix, find it.
429
427
  true
430
- elsif RbConfig::CONFIG["bindir"].sub(/^\w:/, "") == "/opscode/chef/embedded/bin"
428
+ elsif RbConfig::CONFIG["bindir"].sub(/^\w:/, "") == "/#{ChefUtils::Dist::Org::LEGACY_CONF_DIR}/#{ChefUtils::Dist::Infra::SHORT}/embedded/bin"
431
429
  logger.trace("#{new_resource} detected omnibus installation in #{RbConfig::CONFIG["bindir"]}")
432
430
  # windows, with the drive letter removed
433
431
  true
@@ -481,9 +479,7 @@ class Chef
481
479
  end
482
480
 
483
481
  def all_installed_versions
484
- @all_installed_versions ||= begin
485
- @gem_env.installed_versions(Gem::Dependency.new(gem_dependency.name, ">= 0"))
486
- end
482
+ @all_installed_versions ||= @gem_env.installed_versions(Gem::Dependency.new(gem_dependency.name, ">= 0"))
487
483
  end
488
484
 
489
485
  ##
@@ -523,13 +519,11 @@ class Chef
523
519
  end
524
520
 
525
521
  def candidate_version
526
- @candidate_version ||= begin
527
- if source_is_remote?
528
- @gem_env.candidate_version_from_remote(gem_dependency, *gem_sources).to_s
529
- else
530
- @gem_env.candidate_version_from_file(gem_dependency, new_resource.source).to_s
531
- end
532
- end
522
+ @candidate_version ||= if source_is_remote?
523
+ @gem_env.candidate_version_from_remote(gem_dependency, *gem_sources).to_s
524
+ else
525
+ @gem_env.candidate_version_from_file(gem_dependency, new_resource.source).to_s
526
+ end
533
527
  end
534
528
 
535
529
  def version_requirement_satisfied?(current_version, new_version)
@@ -70,8 +70,7 @@ class Chef
70
70
  end
71
71
 
72
72
  def package_provider
73
- @package_provider ||= begin
74
- case installer_type
73
+ @package_provider ||= case installer_type
75
74
  when :msi
76
75
  logger.trace("#{new_resource} is MSI")
77
76
  require_relative "windows/msi"
@@ -80,8 +79,7 @@ class Chef
80
79
  logger.trace("#{new_resource} is EXE with type '#{installer_type}'")
81
80
  require_relative "windows/exe"
82
81
  Chef::Provider::Package::Windows::Exe.new(resource_for_provider, installer_type, uninstall_registry_entries)
83
- end
84
- end
82
+ end
85
83
  end
86
84
 
87
85
  def installer_type
@@ -188,7 +188,7 @@ else:
188
188
 
189
189
  try:
190
190
  while 1:
191
- # kill self if we get orphaned (tragic)
191
+ # stop the process if the parent proc goes away
192
192
  ppid = os.getppid()
193
193
  if ppid == 1:
194
194
  raise RuntimeError("orphaned")
@@ -131,7 +131,7 @@ class Chef
131
131
  action :add do
132
132
  # check to see if load_current_resource found the route
133
133
  if is_running
134
- logger.trace("#{new_resource} route already active - nothing to do")
134
+ logger.debug("#{new_resource} route already active - nothing to do")
135
135
  else
136
136
  command = generate_command(:add)
137
137
  converge_by("run #{command.join(" ")} to add route") do
@@ -152,7 +152,7 @@ class Chef
152
152
  logger.info("#{new_resource} removed")
153
153
  end
154
154
  else
155
- logger.trace("#{new_resource} route does not exist - nothing to do")
155
+ logger.debug("#{new_resource} route does not exist - nothing to do")
156
156
  end
157
157
 
158
158
  # for now we always write the file (ugly but its what it is)
@@ -82,7 +82,7 @@ class Chef
82
82
 
83
83
  action :enable do
84
84
  if current_resource.enabled
85
- logger.trace("#{new_resource} already enabled - nothing to do")
85
+ logger.debug("#{new_resource} already enabled - nothing to do")
86
86
  else
87
87
  converge_by("enable service #{new_resource}") do
88
88
  enable_service
@@ -100,7 +100,7 @@ class Chef
100
100
  logger.info("#{new_resource} disabled")
101
101
  end
102
102
  else
103
- logger.trace("#{new_resource} already disabled - nothing to do")
103
+ logger.debug("#{new_resource} already disabled - nothing to do")
104
104
  end
105
105
  load_new_resource_state
106
106
  new_resource.enabled(false)
@@ -108,7 +108,7 @@ class Chef
108
108
 
109
109
  action :mask do
110
110
  if current_resource.masked
111
- logger.trace("#{new_resource} already masked - nothing to do")
111
+ logger.debug("#{new_resource} already masked - nothing to do")
112
112
  else
113
113
  converge_by("mask service #{new_resource}") do
114
114
  mask_service
@@ -126,7 +126,7 @@ class Chef
126
126
  logger.info("#{new_resource} unmasked")
127
127
  end
128
128
  else
129
- logger.trace("#{new_resource} already unmasked - nothing to do")
129
+ logger.debug("#{new_resource} already unmasked - nothing to do")
130
130
  end
131
131
  load_new_resource_state
132
132
  new_resource.masked(false)
@@ -139,7 +139,7 @@ class Chef
139
139
  logger.info("#{new_resource} started")
140
140
  end
141
141
  else
142
- logger.trace("#{new_resource} already running - nothing to do")
142
+ logger.debug("#{new_resource} already running - nothing to do")
143
143
  end
144
144
  load_new_resource_state
145
145
  new_resource.running(true)
@@ -152,7 +152,7 @@ class Chef
152
152
  logger.info("#{new_resource} stopped")
153
153
  end
154
154
  else
155
- logger.trace("#{new_resource} already stopped - nothing to do")
155
+ logger.debug("#{new_resource} already stopped - nothing to do")
156
156
  end
157
157
  load_new_resource_state
158
158
  new_resource.running(false)
@@ -45,7 +45,7 @@ class Chef
45
45
  priority_ok = @current_resource.priority == @new_resource.priority
46
46
  end
47
47
  if @current_resource.enabled && priority_ok
48
- logger.trace("#{@new_resource} already enabled - nothing to do")
48
+ logger.debug("#{@new_resource} already enabled - nothing to do")
49
49
  else
50
50
  converge_by("enable service #{@new_resource}") do
51
51
  enable_service
@@ -138,7 +138,7 @@ class Chef
138
138
  priority_ok = @current_resource.priority == new_resource.priority
139
139
  end
140
140
  if current_resource.enabled && priority_ok
141
- logger.trace("#{new_resource} already enabled - nothing to do")
141
+ logger.debug("#{new_resource} already enabled - nothing to do")
142
142
  else
143
143
  converge_by("enable service #{new_resource}") do
144
144
  enable_service
@@ -130,27 +130,21 @@ class Chef
130
130
  # The variable name used in /etc/rc.conf for enabling this service
131
131
  def service_enable_variable_name
132
132
  @service_enable_variable_name ||=
133
- begin
134
- # Look for name="foo" in the shell script @init_command. Use this for determining the variable name in /etc/rc.conf
135
- # corresponding to this service
136
- # For example: to enable the service mysql-server with the init command /usr/local/etc/rc.d/mysql-server, you need
137
- # to set mysql_enable="YES" in /etc/rc.conf$
138
- if init_command
139
- ::File.open(init_command) do |rcscript|
140
- rcscript.each_line do |line|
141
- if line =~ /^name="?(\w+)"?/
142
- return $1 + "_enable"
143
- end
133
+ if init_command
134
+ ::File.open(init_command) do |rcscript|
135
+ rcscript.each_line do |line|
136
+ if line =~ /^name="?(\w+)"?/
137
+ return $1 + "_enable"
144
138
  end
145
139
  end
146
- # some scripts support multiple instances through symlinks such as openvpn.
147
- # We should get the service name from rcvar.
148
- logger.trace("name=\"service\" not found at #{init_command}. falling back to rcvar")
149
- shell_out!("#{init_command} rcvar").stdout[/(\w+_enable)=/, 1]
150
- else
151
- # for why-run mode when the rcd_script is not there yet
152
- new_resource.service_name
153
140
  end
141
+ # some scripts support multiple instances through symlinks such as openvpn.
142
+ # We should get the service name from rcvar.
143
+ logger.trace("name=\"service\" not found at #{init_command}. falling back to rcvar")
144
+ shell_out!("#{init_command} rcvar").stdout[/(\w+_enable)=/, 1]
145
+ else
146
+ # for why-run mode when the rcd_script is not there yet
147
+ new_resource.service_name
154
148
  end
155
149
  end
156
150
 
@@ -161,9 +155,9 @@ class Chef
161
155
  case line
162
156
  when /^#{Regexp.escape(var_name)}="(\w+)"/
163
157
  enabled_state_found!
164
- if $1 =~ /^yes$/i
158
+ if $1.casecmp?("yes")
165
159
  current_resource.enabled true
166
- elsif $1 =~ /^(no|none)$/i
160
+ elsif $1.casecmp?("no") || $1.casecmp?("none")
167
161
  current_resource.enabled false
168
162
  end
169
163
  end
@@ -171,7 +165,7 @@ class Chef
171
165
  end
172
166
 
173
167
  if current_resource.enabled.nil?
174
- logger.trace("#{new_resource.name} enable/disable state unknown")
168
+ logger.debug("#{new_resource.name} enable/disable state unknown")
175
169
  current_resource.enabled false
176
170
  end
177
171
  end
@@ -105,7 +105,7 @@ class Chef
105
105
 
106
106
  def start_service
107
107
  if @current_resource.running
108
- logger.trace("#{@new_resource} already running, not starting")
108
+ logger.debug("#{@new_resource} already running, not starting")
109
109
  else
110
110
  if @new_resource.start_command
111
111
  super
@@ -117,7 +117,7 @@ class Chef
117
117
 
118
118
  def stop_service
119
119
  unless @current_resource.running
120
- logger.trace("#{@new_resource} not running, not stopping")
120
+ logger.debug("#{@new_resource} not running, not stopping")
121
121
  else
122
122
  if @new_resource.stop_command
123
123
  super
@@ -153,7 +153,7 @@ class Chef
153
153
  #
154
154
  def enable_service
155
155
  if @current_resource.enabled
156
- logger.trace("#{@new_resource} already enabled, not enabling")
156
+ logger.debug("#{@new_resource} already enabled, not enabling")
157
157
  else
158
158
  load_service
159
159
  end
@@ -161,7 +161,7 @@ class Chef
161
161
 
162
162
  def disable_service
163
163
  unless @current_resource.enabled
164
- logger.trace("#{@new_resource} not enabled, not disabling")
164
+ logger.debug("#{@new_resource} not enabled, not disabling")
165
165
  else
166
166
  unload_service
167
167
  end