chef 16.17.51-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 (647) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +9 -13
  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/action_collection.rb +1 -1
  8. data/lib/chef/application/base.rb +1 -1
  9. data/lib/chef/application.rb +1 -1
  10. data/lib/chef/applications.rb +0 -1
  11. data/lib/chef/chef_fs/command_line.rb +5 -2
  12. data/lib/chef/chef_fs/file_system.rb +9 -10
  13. data/lib/chef/client.rb +2 -2
  14. data/lib/chef/compliance/default_attributes.rb +4 -3
  15. data/lib/chef/compliance/fetcher/automate.rb +0 -7
  16. data/lib/chef/compliance/reporter/automate.rb +17 -7
  17. data/lib/chef/compliance/reporter/chef_server_automate.rb +11 -6
  18. data/lib/chef/compliance/reporter/cli.rb +77 -0
  19. data/lib/chef/compliance/reporter/compliance_enforcer.rb +4 -0
  20. data/lib/chef/compliance/reporter/json_file.rb +8 -1
  21. data/lib/chef/compliance/runner.rb +65 -27
  22. data/lib/chef/cookbook/gem_installer.rb +1 -5
  23. data/lib/chef/cookbook/synchronizer.rb +3 -5
  24. data/lib/chef/cookbook_loader.rb +2 -4
  25. data/lib/chef/cookbook_uploader.rb +0 -1
  26. data/lib/chef/cookbook_version.rb +4 -26
  27. data/lib/chef/data_bag_item.rb +11 -2
  28. data/lib/chef/data_collector/run_end_message.rb +2 -2
  29. data/lib/chef/delayed_evaluator.rb +4 -0
  30. data/lib/chef/deprecated.rb +6 -12
  31. data/lib/chef/dsl/chef_vault.rb +6 -6
  32. data/lib/chef/dsl/reboot_pending.rb +1 -2
  33. data/lib/chef/exceptions.rb +0 -3
  34. data/lib/chef/formatters/error_inspectors/resource_failure_inspector.rb +20 -22
  35. data/lib/chef/formatters/error_mapper.rb +2 -2
  36. data/lib/chef/group.rb +75 -0
  37. data/lib/chef/http.rb +5 -5
  38. data/lib/chef/mixin/get_source_from_package.rb +1 -1
  39. data/lib/chef/node/attribute.rb +6 -4
  40. data/lib/chef/node/immutable_collections.rb +13 -0
  41. data/lib/chef/node/mixin/deep_merge_cache.rb +11 -7
  42. data/lib/chef/node.rb +19 -20
  43. data/lib/chef/org.rb +3 -2
  44. data/lib/chef/policy_builder/policyfile.rb +0 -5
  45. data/lib/chef/property.rb +18 -0
  46. data/lib/chef/provider/cron.rb +1 -1
  47. data/lib/chef/provider/execute.rb +2 -1
  48. data/lib/chef/provider/file.rb +1 -1
  49. data/lib/chef/provider/git.rb +5 -7
  50. data/lib/chef/provider/group/dscl.rb +1 -1
  51. data/lib/chef/provider/group/groupadd.rb +3 -3
  52. data/lib/chef/provider/group/groupmod.rb +3 -3
  53. data/lib/chef/provider/group/pw.rb +3 -3
  54. data/lib/chef/provider/ifconfig.rb +2 -2
  55. data/lib/chef/provider/link.rb +2 -2
  56. data/lib/chef/provider/mount/aix.rb +3 -3
  57. data/lib/chef/provider/mount/mount.rb +5 -5
  58. data/lib/chef/provider/mount/windows.rb +1 -1
  59. data/lib/chef/provider/mount.rb +5 -5
  60. data/lib/chef/provider/package/apt.rb +27 -1
  61. data/lib/chef/provider/package/deb.rb +3 -3
  62. data/lib/chef/provider/package/dnf/dnf_helper.py +1 -1
  63. data/lib/chef/provider/package/portage.rb +2 -2
  64. data/lib/chef/provider/package/powershell.rb +0 -5
  65. data/lib/chef/provider/package/rubygems.rb +9 -15
  66. data/lib/chef/provider/package/windows.rb +2 -4
  67. data/lib/chef/provider/package/yum/yum_helper.py +1 -1
  68. data/lib/chef/provider/package.rb +17 -21
  69. data/lib/chef/provider/route.rb +2 -2
  70. data/lib/chef/provider/service/aixinit.rb +1 -1
  71. data/lib/chef/provider/service/debian.rb +1 -1
  72. data/lib/chef/provider/service/freebsd.rb +15 -21
  73. data/lib/chef/provider/service/macosx.rb +4 -4
  74. data/lib/chef/provider/service/systemd.rb +43 -14
  75. data/lib/chef/provider/service/upstart.rb +2 -13
  76. data/lib/chef/provider/service/windows.rb +12 -12
  77. data/lib/chef/provider/service.rb +6 -6
  78. data/lib/chef/provider/subversion.rb +10 -12
  79. data/lib/chef/provider/systemd_unit.rb +36 -10
  80. data/lib/chef/provider/template/content.rb +3 -7
  81. data/lib/chef/provider/user/dscl.rb +1 -1
  82. data/lib/chef/provider/user/mac.rb +17 -20
  83. data/lib/chef/provider/user/pw.rb +1 -1
  84. data/lib/chef/provider/user/windows.rb +1 -1
  85. data/lib/chef/provider/user.rb +2 -2
  86. data/lib/chef/provider/zypper_repository.rb +2 -2
  87. data/lib/chef/provider.rb +1 -1
  88. data/lib/chef/providers.rb +0 -1
  89. data/lib/chef/resource/alternatives.rb +6 -6
  90. data/lib/chef/resource/apt_package.rb +1 -1
  91. data/lib/chef/resource/apt_preference.rb +2 -2
  92. data/lib/chef/resource/apt_repository.rb +6 -6
  93. data/lib/chef/resource/apt_update.rb +3 -2
  94. data/lib/chef/resource/archive_file.rb +8 -9
  95. data/lib/chef/resource/breakpoint.rb +1 -1
  96. data/lib/chef/resource/build_essential.rb +2 -6
  97. data/lib/chef/resource/chef_client_config.rb +2 -2
  98. data/lib/chef/resource/chef_client_cron.rb +4 -4
  99. data/lib/chef/resource/chef_client_launchd.rb +3 -3
  100. data/lib/chef/resource/chef_client_scheduled_task.rb +1 -1
  101. data/lib/chef/resource/chef_client_systemd_timer.rb +2 -2
  102. data/lib/chef/resource/chef_client_trusted_certificate.rb +0 -1
  103. data/lib/chef/resource/chef_handler.rb +3 -7
  104. data/lib/chef/resource/chef_sleep.rb +1 -1
  105. data/lib/chef/resource/chef_vault_secret.rb +3 -8
  106. data/lib/chef/resource/chocolatey_config.rb +2 -6
  107. data/lib/chef/resource/chocolatey_feature.rb +2 -6
  108. data/lib/chef/resource/chocolatey_source.rb +4 -10
  109. data/lib/chef/resource/cron/_cron_shared.rb +2 -2
  110. data/lib/chef/resource/cron_access.rb +2 -4
  111. data/lib/chef/resource/dmg_package.rb +6 -10
  112. data/lib/chef/resource/dpkg_package.rb +1 -1
  113. data/lib/chef/resource/execute.rb +6 -1
  114. data/lib/chef/resource/file.rb +1 -1
  115. data/lib/chef/resource/group.rb +2 -2
  116. data/lib/chef/resource/homebrew_cask.rb +5 -15
  117. data/lib/chef/resource/homebrew_tap.rb +2 -6
  118. data/lib/chef/resource/hostname.rb +21 -17
  119. data/lib/chef/resource/http_request.rb +1 -1
  120. data/lib/chef/resource/kernel_module.rb +6 -17
  121. data/lib/chef/resource/locale.rb +2 -3
  122. data/lib/chef/resource/lwrp_base.rb +4 -0
  123. data/lib/chef/resource/macos_userdefaults.rb +10 -14
  124. data/lib/chef/resource/mdadm.rb +53 -7
  125. data/lib/chef/resource/mount.rb +3 -2
  126. data/lib/chef/resource/openssl_ec_private_key.rb +2 -2
  127. data/lib/chef/resource/openssl_rsa_private_key.rb +1 -1
  128. data/lib/chef/resource/openssl_x509_certificate.rb +2 -2
  129. data/lib/chef/resource/plist.rb +7 -7
  130. data/lib/chef/resource/powershell_script.rb +1 -1
  131. data/lib/chef/resource/remote_file.rb +1 -1
  132. data/lib/chef/resource/rhsm_errata.rb +16 -1
  133. data/lib/chef/resource/rhsm_errata_level.rb +10 -1
  134. data/lib/chef/resource/rhsm_register.rb +12 -6
  135. data/lib/chef/resource/rhsm_repo.rb +2 -6
  136. data/lib/chef/resource/rhsm_subscription.rb +7 -11
  137. data/lib/chef/resource/scm/git.rb +1 -1
  138. data/lib/chef/resource/sudo.rb +6 -6
  139. data/lib/chef/resource/support/client.erb +0 -6
  140. data/lib/chef/resource/sysctl.rb +2 -6
  141. data/lib/chef/resource/systemd_unit.rb +3 -3
  142. data/lib/chef/resource/template.rb +1 -1
  143. data/lib/chef/resource/timezone.rb +1 -3
  144. data/lib/chef/resource/user/mac_user.rb +1 -1
  145. data/lib/chef/resource/user_ulimit.rb +2 -3
  146. data/lib/chef/resource/windows_ad_join.rb +2 -6
  147. data/lib/chef/resource/windows_audit_policy.rb +1 -1
  148. data/lib/chef/resource/windows_auto_run.rb +2 -5
  149. data/lib/chef/resource/windows_certificate.rb +207 -73
  150. data/lib/chef/resource/windows_dfs_folder.rb +2 -6
  151. data/lib/chef/resource/windows_dfs_namespace.rb +2 -6
  152. data/lib/chef/resource/windows_dfs_server.rb +1 -3
  153. data/lib/chef/resource/windows_dns_record.rb +2 -6
  154. data/lib/chef/resource/windows_dns_zone.rb +2 -6
  155. data/lib/chef/resource/windows_env.rb +5 -4
  156. data/lib/chef/resource/windows_feature.rb +3 -9
  157. data/lib/chef/resource/windows_feature_dism.rb +2 -6
  158. data/lib/chef/resource/windows_feature_powershell.rb +3 -3
  159. data/lib/chef/resource/windows_firewall_profile.rb +4 -4
  160. data/lib/chef/resource/windows_firewall_rule.rb +2 -5
  161. data/lib/chef/resource/windows_font.rb +2 -4
  162. data/lib/chef/resource/windows_pagefile.rb +2 -6
  163. data/lib/chef/resource/windows_path.rb +2 -2
  164. data/lib/chef/resource/windows_printer.rb +4 -4
  165. data/lib/chef/resource/windows_printer_port.rb +6 -6
  166. data/lib/chef/resource/windows_security_policy.rb +9 -12
  167. data/lib/chef/resource/windows_share.rb +14 -21
  168. data/lib/chef/resource/windows_shortcut.rb +4 -6
  169. data/lib/chef/resource/windows_task.rb +17 -5
  170. data/lib/chef/resource/windows_uac.rb +2 -4
  171. data/lib/chef/resource/windows_user_privilege.rb +5 -5
  172. data/lib/chef/resource/windows_workgroup.rb +1 -2
  173. data/lib/chef/resource.rb +1 -1
  174. data/lib/chef/resource_reporter.rb +1 -1
  175. data/lib/chef/resources.rb +0 -1
  176. data/lib/chef/shell/ext.rb +3 -3
  177. data/lib/chef/user.rb +0 -1
  178. data/lib/chef/user_v1.rb +3 -4
  179. data/lib/chef/util/dsc/configuration_generator.rb +1 -0
  180. data/lib/chef/util/dsc/local_configuration_manager.rb +1 -1
  181. data/lib/chef/version.rb +1 -1
  182. data/lib/chef/win32/api.rb +2 -9
  183. data/lib/chef/win32/registry.rb +4 -2
  184. data/lib/chef/win32/version.rb +1 -2
  185. data/spec/data/cookbooks/openldap/libraries/openldap.rb +1 -1
  186. data/spec/data/lwrp/resources/bar.rb +2 -0
  187. data/spec/data/lwrp/resources/buck_passer.rb +1 -0
  188. data/spec/data/lwrp/resources/buck_passer_2.rb +1 -0
  189. data/spec/data/lwrp/resources/embedded_resource_accesses_providers_scope.rb +1 -0
  190. data/spec/data/lwrp/resources/foo.rb +2 -0
  191. data/spec/data/lwrp/resources/inline_compiler.rb +1 -0
  192. data/spec/data/lwrp/resources/monkey_name_printer.rb +1 -0
  193. data/spec/data/lwrp/resources/paint_drying_watcher.rb +1 -0
  194. data/spec/data/lwrp/resources/thumb_twiddler.rb +1 -0
  195. data/spec/data/lwrp/resources_with_default_attributes/nodeattr.rb +2 -0
  196. data/spec/data/lwrp_const_scoping/resources/conflict.rb +1 -0
  197. data/spec/data/lwrp_override/resources/foo.rb +1 -0
  198. data/spec/data/rubygems.org/nonexistent_gem-info +1 -0
  199. data/spec/data/rubygems.org/sexp_processor-info +49 -0
  200. data/spec/data/run_context/cookbooks/circular-dep1/resources/resource.rb +1 -0
  201. data/spec/data/run_context/cookbooks/circular-dep2/resources/resource.rb +1 -0
  202. data/spec/data/run_context/cookbooks/dependency1/resources/resource.rb +1 -0
  203. data/spec/data/run_context/cookbooks/dependency2/resources/resource.rb +1 -0
  204. data/spec/data/run_context/cookbooks/no-default-attr/resources/resource.rb +1 -0
  205. data/spec/data/run_context/cookbooks/test/resources/resource.rb +2 -0
  206. data/spec/data/run_context/cookbooks/test-with-circular-deps/resources/resource.rb +2 -0
  207. data/spec/data/run_context/cookbooks/test-with-deps/resources/resource.rb +1 -0
  208. data/spec/functional/dsl/registry_helper_spec.rb +1 -1
  209. data/spec/functional/resource/aixinit_service_spec.rb +7 -7
  210. data/spec/functional/resource/apt_package_spec.rb +1 -1
  211. data/spec/functional/resource/chocolatey_package_spec.rb +13 -0
  212. data/spec/functional/resource/dnf_package_spec.rb +4 -1
  213. data/spec/functional/resource/group_spec.rb +1 -5
  214. data/spec/functional/resource/link_spec.rb +0 -8
  215. data/spec/functional/resource/registry_spec.rb +8 -8
  216. data/spec/functional/resource/user/mac_user_spec.rb +2 -2
  217. data/spec/functional/resource/windows_certificate_spec.rb +92 -35
  218. data/spec/functional/version_spec.rb +1 -1
  219. data/spec/functional/win32/registry_spec.rb +1 -1
  220. data/spec/integration/client/client_spec.rb +5 -2
  221. data/spec/integration/client/exit_code_spec.rb +1 -1
  222. data/spec/integration/client/ipv6_spec.rb +1 -1
  223. data/spec/integration/compliance/compliance_spec.rb +1 -1
  224. data/spec/integration/ohai/ohai_spec.rb +7 -6
  225. data/spec/integration/recipes/accumulator_spec.rb +13 -1
  226. data/spec/integration/recipes/lwrp_inline_resources_spec.rb +5 -1
  227. data/spec/integration/recipes/lwrp_spec.rb +3 -1
  228. data/spec/integration/recipes/notifies_spec.rb +15 -1
  229. data/spec/integration/recipes/notifying_block_spec.rb +2 -1
  230. data/spec/integration/recipes/recipe_dsl_spec.rb +9 -9
  231. data/spec/integration/recipes/unified_mode_spec.rb +1 -1
  232. data/spec/integration/recipes/use_partial_spec.rb +4 -1
  233. data/spec/spec_helper.rb +10 -13
  234. data/spec/support/chef_helpers.rb +0 -16
  235. data/spec/support/lib/chef/resource/with_state.rb +0 -1
  236. data/spec/support/lib/chef/resource/zen_follower.rb +0 -1
  237. data/spec/support/lib/chef/resource/zen_master.rb +0 -1
  238. data/spec/support/matchers/leak.rb +7 -9
  239. data/spec/support/platform_helpers.rb +1 -8
  240. data/spec/support/shared/integration/integration_helper.rb +0 -1
  241. data/spec/support/shared/unit/script_resource.rb +2 -2
  242. data/spec/unit/application/solo_spec.rb +2 -2
  243. data/spec/unit/chef_fs/diff_spec.rb +1 -1
  244. data/spec/unit/chef_fs/file_system_spec.rb +1 -1
  245. data/spec/unit/compliance/fetcher/automate_spec.rb +0 -16
  246. data/spec/unit/compliance/reporter/automate_spec.rb +26 -2
  247. data/spec/unit/compliance/reporter/chef_server_automate_spec.rb +20 -0
  248. data/spec/unit/compliance/reporter/compliance_enforcer_spec.rb +1 -0
  249. data/spec/unit/compliance/runner_spec.rb +30 -4
  250. data/spec/unit/cookbook_version_spec.rb +0 -52
  251. data/spec/unit/data_bag_item_spec.rb +1 -6
  252. data/spec/unit/data_collector_spec.rb +2 -71
  253. data/spec/unit/dsl/reboot_pending_spec.rb +2 -2
  254. data/spec/unit/dsl/registry_helper_spec.rb +1 -1
  255. data/spec/unit/lwrp_spec.rb +1 -1
  256. data/spec/unit/mixin/params_validate_spec.rb +4 -3
  257. data/spec/unit/node/attribute_spec.rb +1 -1
  258. data/spec/unit/node_spec.rb +78 -0
  259. data/spec/unit/org_group_spec.rb +45 -0
  260. data/spec/unit/policy_builder/policyfile_spec.rb +1 -11
  261. data/spec/unit/property_spec.rb +23 -22
  262. data/spec/unit/provider/cron_spec.rb +1 -1
  263. data/spec/unit/provider/group/gpasswd_spec.rb +2 -2
  264. data/spec/unit/provider/group/groupmod_spec.rb +2 -2
  265. data/spec/unit/provider/group/pw_spec.rb +2 -2
  266. data/spec/unit/provider/group_spec.rb +1 -1
  267. data/spec/unit/provider/package/apt_spec.rb +84 -18
  268. data/spec/unit/provider/package/deb_spec.rb +3 -3
  269. data/spec/unit/provider/package/powershell_spec.rb +12 -74
  270. data/spec/unit/provider/package/rubygems_spec.rb +18 -30
  271. data/spec/unit/provider/service/arch_service_spec.rb +1 -0
  272. data/spec/unit/provider/service/debian_service_spec.rb +1 -0
  273. data/spec/unit/provider/service/macosx_spec.rb +2 -2
  274. data/spec/unit/provider/service/systemd_service_spec.rb +138 -23
  275. data/spec/unit/provider/service/upstart_service_spec.rb +0 -29
  276. data/spec/unit/provider/service/windows_spec.rb +2 -2
  277. data/spec/unit/provider/subversion_spec.rb +2 -2
  278. data/spec/unit/provider/systemd_unit_spec.rb +79 -60
  279. data/spec/unit/provider/zypper_repository_spec.rb +2 -2
  280. data/spec/unit/provider_spec.rb +0 -8
  281. data/spec/unit/resource/archive_file_spec.rb +1 -13
  282. data/spec/unit/resource/chef_client_trusted_certificate_spec.rb +0 -14
  283. data/spec/unit/resource/homebrew_cask_spec.rb +11 -29
  284. data/spec/unit/resource/mount_spec.rb +0 -10
  285. data/spec/unit/resource/powershell_script_spec.rb +2 -2
  286. data/spec/unit/resource/rhsm_subscription_spec.rb +3 -50
  287. data/spec/unit/resource/systemd_unit_spec.rb +1 -1
  288. data/spec/unit/resource/user_ulimit_spec.rb +1 -14
  289. data/spec/unit/resource/windows_task_spec.rb +1 -1
  290. data/spec/unit/resource_spec.rb +0 -5
  291. data/spec/unit/user_spec.rb +1 -1
  292. data/spec/unit/user_v1_spec.rb +6 -4
  293. data/tasks/rspec.rb +15 -7
  294. metadata +19 -382
  295. data/bin/knife +0 -24
  296. data/lib/chef/application/knife.rb +0 -234
  297. data/lib/chef/application/windows_service.rb +0 -338
  298. data/lib/chef/application/windows_service_manager.rb +0 -205
  299. data/lib/chef/chef_fs/knife.rb +0 -160
  300. data/lib/chef/chef_fs/parallelizer/flatten_enumerable.rb +0 -35
  301. data/lib/chef/chef_fs/parallelizer/parallel_enumerable.rb +0 -278
  302. data/lib/chef/chef_fs/parallelizer.rb +0 -102
  303. data/lib/chef/cookbook_site_streaming_uploader.rb +0 -244
  304. data/lib/chef/knife/acl_add.rb +0 -57
  305. data/lib/chef/knife/acl_base.rb +0 -183
  306. data/lib/chef/knife/acl_bulk_add.rb +0 -78
  307. data/lib/chef/knife/acl_bulk_remove.rb +0 -83
  308. data/lib/chef/knife/acl_remove.rb +0 -62
  309. data/lib/chef/knife/acl_show.rb +0 -56
  310. data/lib/chef/knife/bootstrap/chef_vault_handler.rb +0 -162
  311. data/lib/chef/knife/bootstrap/client_builder.rb +0 -212
  312. data/lib/chef/knife/bootstrap/templates/README.md +0 -11
  313. data/lib/chef/knife/bootstrap/templates/chef-full.erb +0 -242
  314. data/lib/chef/knife/bootstrap/templates/windows-chef-client-msi.erb +0 -278
  315. data/lib/chef/knife/bootstrap/train_connector.rb +0 -336
  316. data/lib/chef/knife/bootstrap.rb +0 -1192
  317. data/lib/chef/knife/client_bulk_delete.rb +0 -104
  318. data/lib/chef/knife/client_create.rb +0 -101
  319. data/lib/chef/knife/client_delete.rb +0 -62
  320. data/lib/chef/knife/client_edit.rb +0 -52
  321. data/lib/chef/knife/client_key_create.rb +0 -73
  322. data/lib/chef/knife/client_key_delete.rb +0 -80
  323. data/lib/chef/knife/client_key_edit.rb +0 -83
  324. data/lib/chef/knife/client_key_list.rb +0 -73
  325. data/lib/chef/knife/client_key_show.rb +0 -80
  326. data/lib/chef/knife/client_list.rb +0 -41
  327. data/lib/chef/knife/client_reregister.rb +0 -58
  328. data/lib/chef/knife/client_show.rb +0 -48
  329. data/lib/chef/knife/config_get.rb +0 -39
  330. data/lib/chef/knife/config_get_profile.rb +0 -37
  331. data/lib/chef/knife/config_list.rb +0 -139
  332. data/lib/chef/knife/config_list_profiles.rb +0 -37
  333. data/lib/chef/knife/config_show.rb +0 -127
  334. data/lib/chef/knife/config_use.rb +0 -61
  335. data/lib/chef/knife/config_use_profile.rb +0 -47
  336. data/lib/chef/knife/configure.rb +0 -150
  337. data/lib/chef/knife/configure_client.rb +0 -48
  338. data/lib/chef/knife/cookbook_bulk_delete.rb +0 -71
  339. data/lib/chef/knife/cookbook_delete.rb +0 -151
  340. data/lib/chef/knife/cookbook_download.rb +0 -142
  341. data/lib/chef/knife/cookbook_list.rb +0 -47
  342. data/lib/chef/knife/cookbook_metadata.rb +0 -106
  343. data/lib/chef/knife/cookbook_metadata_from_file.rb +0 -49
  344. data/lib/chef/knife/cookbook_show.rb +0 -98
  345. data/lib/chef/knife/cookbook_upload.rb +0 -292
  346. data/lib/chef/knife/core/bootstrap_context.rb +0 -264
  347. data/lib/chef/knife/core/cookbook_scm_repo.rb +0 -159
  348. data/lib/chef/knife/core/formatting_options.rb +0 -49
  349. data/lib/chef/knife/core/gem_glob_loader.rb +0 -138
  350. data/lib/chef/knife/core/generic_presenter.rb +0 -232
  351. data/lib/chef/knife/core/hashed_command_loader.rb +0 -100
  352. data/lib/chef/knife/core/node_editor.rb +0 -130
  353. data/lib/chef/knife/core/node_presenter.rb +0 -133
  354. data/lib/chef/knife/core/object_loader.rb +0 -115
  355. data/lib/chef/knife/core/status_presenter.rb +0 -147
  356. data/lib/chef/knife/core/subcommand_loader.rb +0 -203
  357. data/lib/chef/knife/core/text_formatter.rb +0 -85
  358. data/lib/chef/knife/core/ui.rb +0 -338
  359. data/lib/chef/knife/core/windows_bootstrap_context.rb +0 -405
  360. data/lib/chef/knife/data_bag_create.rb +0 -81
  361. data/lib/chef/knife/data_bag_delete.rb +0 -49
  362. data/lib/chef/knife/data_bag_edit.rb +0 -74
  363. data/lib/chef/knife/data_bag_from_file.rb +0 -113
  364. data/lib/chef/knife/data_bag_list.rb +0 -42
  365. data/lib/chef/knife/data_bag_secret_options.rb +0 -122
  366. data/lib/chef/knife/data_bag_show.rb +0 -69
  367. data/lib/chef/knife/delete.rb +0 -125
  368. data/lib/chef/knife/deps.rb +0 -156
  369. data/lib/chef/knife/diff.rb +0 -83
  370. data/lib/chef/knife/download.rb +0 -84
  371. data/lib/chef/knife/edit.rb +0 -88
  372. data/lib/chef/knife/environment_compare.rb +0 -128
  373. data/lib/chef/knife/environment_create.rb +0 -52
  374. data/lib/chef/knife/environment_delete.rb +0 -44
  375. data/lib/chef/knife/environment_edit.rb +0 -44
  376. data/lib/chef/knife/environment_from_file.rb +0 -84
  377. data/lib/chef/knife/environment_list.rb +0 -41
  378. data/lib/chef/knife/environment_show.rb +0 -47
  379. data/lib/chef/knife/exec.rb +0 -99
  380. data/lib/chef/knife/group_add.rb +0 -55
  381. data/lib/chef/knife/group_create.rb +0 -49
  382. data/lib/chef/knife/group_destroy.rb +0 -53
  383. data/lib/chef/knife/group_list.rb +0 -43
  384. data/lib/chef/knife/group_remove.rb +0 -56
  385. data/lib/chef/knife/group_show.rb +0 -49
  386. data/lib/chef/knife/key_create.rb +0 -112
  387. data/lib/chef/knife/key_create_base.rb +0 -50
  388. data/lib/chef/knife/key_delete.rb +0 -55
  389. data/lib/chef/knife/key_edit.rb +0 -118
  390. data/lib/chef/knife/key_edit_base.rb +0 -55
  391. data/lib/chef/knife/key_list.rb +0 -90
  392. data/lib/chef/knife/key_list_base.rb +0 -45
  393. data/lib/chef/knife/key_show.rb +0 -53
  394. data/lib/chef/knife/list.rb +0 -177
  395. data/lib/chef/knife/node_bulk_delete.rb +0 -75
  396. data/lib/chef/knife/node_create.rb +0 -47
  397. data/lib/chef/knife/node_delete.rb +0 -46
  398. data/lib/chef/knife/node_edit.rb +0 -70
  399. data/lib/chef/knife/node_environment_set.rb +0 -53
  400. data/lib/chef/knife/node_from_file.rb +0 -51
  401. data/lib/chef/knife/node_list.rb +0 -44
  402. data/lib/chef/knife/node_policy_set.rb +0 -79
  403. data/lib/chef/knife/node_run_list_add.rb +0 -104
  404. data/lib/chef/knife/node_run_list_remove.rb +0 -67
  405. data/lib/chef/knife/node_run_list_set.rb +0 -66
  406. data/lib/chef/knife/node_show.rb +0 -63
  407. data/lib/chef/knife/null.rb +0 -12
  408. data/lib/chef/knife/raw.rb +0 -123
  409. data/lib/chef/knife/recipe_list.rb +0 -32
  410. data/lib/chef/knife/rehash.rb +0 -50
  411. data/lib/chef/knife/role_bulk_delete.rb +0 -66
  412. data/lib/chef/knife/role_create.rb +0 -53
  413. data/lib/chef/knife/role_delete.rb +0 -46
  414. data/lib/chef/knife/role_edit.rb +0 -45
  415. data/lib/chef/knife/role_env_run_list_add.rb +0 -87
  416. data/lib/chef/knife/role_env_run_list_clear.rb +0 -55
  417. data/lib/chef/knife/role_env_run_list_remove.rb +0 -57
  418. data/lib/chef/knife/role_env_run_list_replace.rb +0 -60
  419. data/lib/chef/knife/role_env_run_list_set.rb +0 -70
  420. data/lib/chef/knife/role_from_file.rb +0 -51
  421. data/lib/chef/knife/role_list.rb +0 -42
  422. data/lib/chef/knife/role_run_list_add.rb +0 -87
  423. data/lib/chef/knife/role_run_list_clear.rb +0 -55
  424. data/lib/chef/knife/role_run_list_remove.rb +0 -56
  425. data/lib/chef/knife/role_run_list_replace.rb +0 -60
  426. data/lib/chef/knife/role_run_list_set.rb +0 -69
  427. data/lib/chef/knife/role_show.rb +0 -48
  428. data/lib/chef/knife/search.rb +0 -194
  429. data/lib/chef/knife/serve.rb +0 -65
  430. data/lib/chef/knife/show.rb +0 -72
  431. data/lib/chef/knife/ssh.rb +0 -645
  432. data/lib/chef/knife/ssl_check.rb +0 -284
  433. data/lib/chef/knife/ssl_fetch.rb +0 -161
  434. data/lib/chef/knife/status.rb +0 -95
  435. data/lib/chef/knife/supermarket_download.rb +0 -121
  436. data/lib/chef/knife/supermarket_install.rb +0 -192
  437. data/lib/chef/knife/supermarket_list.rb +0 -76
  438. data/lib/chef/knife/supermarket_search.rb +0 -53
  439. data/lib/chef/knife/supermarket_share.rb +0 -166
  440. data/lib/chef/knife/supermarket_show.rb +0 -66
  441. data/lib/chef/knife/supermarket_unshare.rb +0 -61
  442. data/lib/chef/knife/tag_create.rb +0 -52
  443. data/lib/chef/knife/tag_delete.rb +0 -60
  444. data/lib/chef/knife/tag_list.rb +0 -47
  445. data/lib/chef/knife/upload.rb +0 -86
  446. data/lib/chef/knife/user_create.rb +0 -107
  447. data/lib/chef/knife/user_delete.rb +0 -44
  448. data/lib/chef/knife/user_dissociate.rb +0 -42
  449. data/lib/chef/knife/user_edit.rb +0 -52
  450. data/lib/chef/knife/user_invite_add.rb +0 -43
  451. data/lib/chef/knife/user_invite_list.rb +0 -34
  452. data/lib/chef/knife/user_invite_rescind.rb +0 -63
  453. data/lib/chef/knife/user_key_create.rb +0 -73
  454. data/lib/chef/knife/user_key_delete.rb +0 -80
  455. data/lib/chef/knife/user_key_edit.rb +0 -83
  456. data/lib/chef/knife/user_key_list.rb +0 -73
  457. data/lib/chef/knife/user_key_show.rb +0 -80
  458. data/lib/chef/knife/user_list.rb +0 -42
  459. data/lib/chef/knife/user_reregister.rb +0 -59
  460. data/lib/chef/knife/user_show.rb +0 -48
  461. data/lib/chef/knife/xargs.rb +0 -282
  462. data/lib/chef/knife/yaml_convert.rb +0 -91
  463. data/lib/chef/knife.rb +0 -665
  464. data/lib/chef/resource/user/dscl_user.rb +0 -35
  465. data/spec/data/knife-home/.chef/plugins/knife/example_home_subcommand.rb +0 -0
  466. data/spec/data/knife-site-subcommands/plugins/knife/example_subcommand.rb +0 -0
  467. data/spec/data/knife_subcommand/test_explicit_category.rb +0 -7
  468. data/spec/data/knife_subcommand/test_name_mapping.rb +0 -4
  469. data/spec/data/knife_subcommand/test_yourself.rb +0 -21
  470. data/spec/functional/knife/configure_spec.rb +0 -33
  471. data/spec/functional/knife/cookbook_delete_spec.rb +0 -156
  472. data/spec/functional/knife/exec_spec.rb +0 -55
  473. data/spec/functional/knife/rehash_spec.rb +0 -39
  474. data/spec/functional/knife/smoke_test.rb +0 -42
  475. data/spec/functional/knife/ssh_spec.rb +0 -352
  476. data/spec/functional/resource/user/dscl_spec.rb +0 -188
  477. data/spec/functional/resource/windows_service_spec.rb +0 -105
  478. data/spec/functional/win32/service_manager_spec.rb +0 -220
  479. data/spec/integration/knife/chef_fs_data_store_spec.rb +0 -557
  480. data/spec/integration/knife/chef_repo_path_spec.rb +0 -962
  481. data/spec/integration/knife/chef_repository_file_system_spec.rb +0 -200
  482. data/spec/integration/knife/chefignore_spec.rb +0 -301
  483. data/spec/integration/knife/client_bulk_delete_spec.rb +0 -131
  484. data/spec/integration/knife/client_create_spec.rb +0 -70
  485. data/spec/integration/knife/client_delete_spec.rb +0 -64
  486. data/spec/integration/knife/client_key_create_spec.rb +0 -66
  487. data/spec/integration/knife/client_key_delete_spec.rb +0 -43
  488. data/spec/integration/knife/client_key_list_spec.rb +0 -61
  489. data/spec/integration/knife/client_key_show_spec.rb +0 -45
  490. data/spec/integration/knife/client_list_spec.rb +0 -49
  491. data/spec/integration/knife/client_show_spec.rb +0 -37
  492. data/spec/integration/knife/common_options_spec.rb +0 -174
  493. data/spec/integration/knife/config_list_spec.rb +0 -220
  494. data/spec/integration/knife/config_show_spec.rb +0 -192
  495. data/spec/integration/knife/config_use_spec.rb +0 -198
  496. data/spec/integration/knife/cookbook_api_ipv6_spec.rb +0 -113
  497. data/spec/integration/knife/cookbook_bulk_delete_spec.rb +0 -65
  498. data/spec/integration/knife/cookbook_download_spec.rb +0 -72
  499. data/spec/integration/knife/cookbook_list_spec.rb +0 -55
  500. data/spec/integration/knife/cookbook_show_spec.rb +0 -149
  501. data/spec/integration/knife/cookbook_upload_spec.rb +0 -128
  502. data/spec/integration/knife/data_bag_create_spec.rb +0 -125
  503. data/spec/integration/knife/data_bag_delete_spec.rb +0 -59
  504. data/spec/integration/knife/data_bag_edit_spec.rb +0 -105
  505. data/spec/integration/knife/data_bag_from_file_spec.rb +0 -116
  506. data/spec/integration/knife/data_bag_list_spec.rb +0 -44
  507. data/spec/integration/knife/data_bag_show_spec.rb +0 -95
  508. data/spec/integration/knife/delete_spec.rb +0 -1018
  509. data/spec/integration/knife/deps_spec.rb +0 -703
  510. data/spec/integration/knife/diff_spec.rb +0 -605
  511. data/spec/integration/knife/download_spec.rb +0 -1336
  512. data/spec/integration/knife/environment_compare_spec.rb +0 -75
  513. data/spec/integration/knife/environment_create_spec.rb +0 -41
  514. data/spec/integration/knife/environment_delete_spec.rb +0 -37
  515. data/spec/integration/knife/environment_from_file_spec.rb +0 -116
  516. data/spec/integration/knife/environment_list_spec.rb +0 -42
  517. data/spec/integration/knife/environment_show_spec.rb +0 -77
  518. data/spec/integration/knife/list_spec.rb +0 -1060
  519. data/spec/integration/knife/node_bulk_delete_spec.rb +0 -52
  520. data/spec/integration/knife/node_create_spec.rb +0 -47
  521. data/spec/integration/knife/node_delete_spec.rb +0 -48
  522. data/spec/integration/knife/node_environment_set_spec.rb +0 -46
  523. data/spec/integration/knife/node_from_file_spec.rb +0 -59
  524. data/spec/integration/knife/node_list_spec.rb +0 -45
  525. data/spec/integration/knife/node_run_list_add_spec.rb +0 -54
  526. data/spec/integration/knife/node_run_list_remove_spec.rb +0 -36
  527. data/spec/integration/knife/node_run_list_set_spec.rb +0 -41
  528. data/spec/integration/knife/node_show_spec.rb +0 -36
  529. data/spec/integration/knife/raw_spec.rb +0 -297
  530. data/spec/integration/knife/redirection_spec.rb +0 -64
  531. data/spec/integration/knife/role_bulk_delete_spec.rb +0 -52
  532. data/spec/integration/knife/role_create_spec.rb +0 -41
  533. data/spec/integration/knife/role_delete_spec.rb +0 -48
  534. data/spec/integration/knife/role_from_file_spec.rb +0 -96
  535. data/spec/integration/knife/role_list_spec.rb +0 -45
  536. data/spec/integration/knife/role_show_spec.rb +0 -51
  537. data/spec/integration/knife/search_node_spec.rb +0 -40
  538. data/spec/integration/knife/serve_spec.rb +0 -92
  539. data/spec/integration/knife/show_spec.rb +0 -197
  540. data/spec/integration/knife/upload_spec.rb +0 -1616
  541. data/spec/support/shared/functional/knife.rb +0 -37
  542. data/spec/support/shared/functional/win32_service.rb +0 -57
  543. data/spec/support/shared/integration/knife_support.rb +0 -192
  544. data/spec/support/shared/unit/knife_shared.rb +0 -39
  545. data/spec/unit/application/knife_spec.rb +0 -241
  546. data/spec/unit/chef_fs/parallelizer_spec.rb +0 -479
  547. data/spec/unit/cookbook_site_streaming_uploader_spec.rb +0 -198
  548. data/spec/unit/knife/bootstrap/chef_vault_handler_spec.rb +0 -152
  549. data/spec/unit/knife/bootstrap/client_builder_spec.rb +0 -207
  550. data/spec/unit/knife/bootstrap/train_connector_spec.rb +0 -244
  551. data/spec/unit/knife/bootstrap_spec.rb +0 -2220
  552. data/spec/unit/knife/client_bulk_delete_spec.rb +0 -166
  553. data/spec/unit/knife/client_create_spec.rb +0 -169
  554. data/spec/unit/knife/client_delete_spec.rb +0 -99
  555. data/spec/unit/knife/client_edit_spec.rb +0 -53
  556. data/spec/unit/knife/client_list_spec.rb +0 -34
  557. data/spec/unit/knife/client_reregister_spec.rb +0 -62
  558. data/spec/unit/knife/client_show_spec.rb +0 -52
  559. data/spec/unit/knife/configure_client_spec.rb +0 -81
  560. data/spec/unit/knife/configure_spec.rb +0 -190
  561. data/spec/unit/knife/cookbook_bulk_delete_spec.rb +0 -87
  562. data/spec/unit/knife/cookbook_delete_spec.rb +0 -239
  563. data/spec/unit/knife/cookbook_download_spec.rb +0 -255
  564. data/spec/unit/knife/cookbook_list_spec.rb +0 -88
  565. data/spec/unit/knife/cookbook_metadata_from_file_spec.rb +0 -72
  566. data/spec/unit/knife/cookbook_metadata_spec.rb +0 -182
  567. data/spec/unit/knife/cookbook_show_spec.rb +0 -253
  568. data/spec/unit/knife/cookbook_upload_spec.rb +0 -364
  569. data/spec/unit/knife/core/bootstrap_context_spec.rb +0 -287
  570. data/spec/unit/knife/core/cookbook_scm_repo_spec.rb +0 -187
  571. data/spec/unit/knife/core/gem_glob_loader_spec.rb +0 -209
  572. data/spec/unit/knife/core/hashed_command_loader_spec.rb +0 -112
  573. data/spec/unit/knife/core/node_editor_spec.rb +0 -211
  574. data/spec/unit/knife/core/object_loader_spec.rb +0 -81
  575. data/spec/unit/knife/core/status_presenter_spec.rb +0 -54
  576. data/spec/unit/knife/core/subcommand_loader_spec.rb +0 -64
  577. data/spec/unit/knife/core/ui_spec.rb +0 -656
  578. data/spec/unit/knife/core/windows_bootstrap_context_spec.rb +0 -238
  579. data/spec/unit/knife/data_bag_create_spec.rb +0 -175
  580. data/spec/unit/knife/data_bag_edit_spec.rb +0 -126
  581. data/spec/unit/knife/data_bag_from_file_spec.rb +0 -174
  582. data/spec/unit/knife/data_bag_secret_options_spec.rb +0 -173
  583. data/spec/unit/knife/data_bag_show_spec.rb +0 -139
  584. data/spec/unit/knife/environment_compare_spec.rb +0 -112
  585. data/spec/unit/knife/environment_create_spec.rb +0 -91
  586. data/spec/unit/knife/environment_delete_spec.rb +0 -71
  587. data/spec/unit/knife/environment_edit_spec.rb +0 -79
  588. data/spec/unit/knife/environment_from_file_spec.rb +0 -90
  589. data/spec/unit/knife/environment_list_spec.rb +0 -54
  590. data/spec/unit/knife/environment_show_spec.rb +0 -52
  591. data/spec/unit/knife/key_create_spec.rb +0 -223
  592. data/spec/unit/knife/key_delete_spec.rb +0 -133
  593. data/spec/unit/knife/key_edit_spec.rb +0 -264
  594. data/spec/unit/knife/key_helper.rb +0 -74
  595. data/spec/unit/knife/key_list_spec.rb +0 -216
  596. data/spec/unit/knife/key_show_spec.rb +0 -126
  597. data/spec/unit/knife/node_bulk_delete_spec.rb +0 -94
  598. data/spec/unit/knife/node_delete_spec.rb +0 -77
  599. data/spec/unit/knife/node_edit_spec.rb +0 -116
  600. data/spec/unit/knife/node_environment_set_spec.rb +0 -61
  601. data/spec/unit/knife/node_from_file_spec.rb +0 -59
  602. data/spec/unit/knife/node_list_spec.rb +0 -62
  603. data/spec/unit/knife/node_policy_set_spec.rb +0 -122
  604. data/spec/unit/knife/node_run_list_add_spec.rb +0 -145
  605. data/spec/unit/knife/node_run_list_remove_spec.rb +0 -106
  606. data/spec/unit/knife/node_run_list_set_spec.rb +0 -115
  607. data/spec/unit/knife/node_show_spec.rb +0 -65
  608. data/spec/unit/knife/raw_spec.rb +0 -43
  609. data/spec/unit/knife/role_bulk_delete_spec.rb +0 -80
  610. data/spec/unit/knife/role_create_spec.rb +0 -80
  611. data/spec/unit/knife/role_delete_spec.rb +0 -67
  612. data/spec/unit/knife/role_edit_spec.rb +0 -77
  613. data/spec/unit/knife/role_env_run_list_add_spec.rb +0 -217
  614. data/spec/unit/knife/role_env_run_list_clear_spec.rb +0 -94
  615. data/spec/unit/knife/role_env_run_list_remove_spec.rb +0 -102
  616. data/spec/unit/knife/role_env_run_list_replace_spec.rb +0 -105
  617. data/spec/unit/knife/role_env_run_list_set_spec.rb +0 -99
  618. data/spec/unit/knife/role_from_file_spec.rb +0 -69
  619. data/spec/unit/knife/role_list_spec.rb +0 -54
  620. data/spec/unit/knife/role_run_list_add_spec.rb +0 -179
  621. data/spec/unit/knife/role_run_list_clear_spec.rb +0 -84
  622. data/spec/unit/knife/role_run_list_remove_spec.rb +0 -92
  623. data/spec/unit/knife/role_run_list_replace_spec.rb +0 -98
  624. data/spec/unit/knife/role_run_list_set_spec.rb +0 -89
  625. data/spec/unit/knife/role_show_spec.rb +0 -59
  626. data/spec/unit/knife/ssh_spec.rb +0 -403
  627. data/spec/unit/knife/ssl_check_spec.rb +0 -256
  628. data/spec/unit/knife/ssl_fetch_spec.rb +0 -222
  629. data/spec/unit/knife/status_spec.rb +0 -112
  630. data/spec/unit/knife/supermarket_download_spec.rb +0 -152
  631. data/spec/unit/knife/supermarket_install_spec.rb +0 -202
  632. data/spec/unit/knife/supermarket_list_spec.rb +0 -70
  633. data/spec/unit/knife/supermarket_search_spec.rb +0 -85
  634. data/spec/unit/knife/supermarket_share_spec.rb +0 -208
  635. data/spec/unit/knife/supermarket_unshare_spec.rb +0 -78
  636. data/spec/unit/knife/tag_create_spec.rb +0 -23
  637. data/spec/unit/knife/tag_delete_spec.rb +0 -25
  638. data/spec/unit/knife/tag_list_spec.rb +0 -23
  639. data/spec/unit/knife/user_create_spec.rb +0 -184
  640. data/spec/unit/knife/user_delete_spec.rb +0 -46
  641. data/spec/unit/knife/user_edit_spec.rb +0 -48
  642. data/spec/unit/knife/user_list_spec.rb +0 -36
  643. data/spec/unit/knife/user_reregister_spec.rb +0 -56
  644. data/spec/unit/knife/user_show_spec.rb +0 -46
  645. data/spec/unit/knife_spec.rb +0 -634
  646. data/spec/unit/provider/user/dscl_spec.rb +0 -699
  647. data/spec/unit/windows_service_spec.rb +0 -118
@@ -1,41 +0,0 @@
1
- #
2
- # Author:: Adam Jacob (<adam@chef.io>)
3
- # Copyright:: Copyright (c) Chef Software Inc.
4
- # License:: Apache License, Version 2.0
5
- #
6
- # Licensed under the Apache License, Version 2.0 (the "License");
7
- # you may not use this file except in compliance with the License.
8
- # You may obtain a copy of the License at
9
- #
10
- # http://www.apache.org/licenses/LICENSE-2.0
11
- #
12
- # Unless required by applicable law or agreed to in writing, software
13
- # distributed under the License is distributed on an "AS IS" BASIS,
14
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
- # See the License for the specific language governing permissions and
16
- # limitations under the License.
17
- #
18
-
19
- require_relative "../knife"
20
-
21
- class Chef
22
- class Knife
23
- class ClientList < Knife
24
-
25
- deps do
26
- require_relative "../api_client_v1"
27
- end
28
-
29
- banner "knife client list (options)"
30
-
31
- option :with_uri,
32
- short: "-w",
33
- long: "--with-uri",
34
- description: "Show corresponding URIs."
35
-
36
- def run
37
- output(format_list_for_display(Chef::ApiClientV1.list))
38
- end
39
- end
40
- end
41
- end
@@ -1,58 +0,0 @@
1
- #
2
- # Author:: Adam Jacob (<adam@chef.io>)
3
- # Copyright:: Copyright (c) Chef Software Inc.
4
- # License:: Apache License, Version 2.0
5
- #
6
- # Licensed under the Apache License, Version 2.0 (the "License");
7
- # you may not use this file except in compliance with the License.
8
- # You may obtain a copy of the License at
9
- #
10
- # http://www.apache.org/licenses/LICENSE-2.0
11
- #
12
- # Unless required by applicable law or agreed to in writing, software
13
- # distributed under the License is distributed on an "AS IS" BASIS,
14
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
- # See the License for the specific language governing permissions and
16
- # limitations under the License.
17
- #
18
-
19
- require_relative "../knife"
20
-
21
- class Chef
22
- class Knife
23
- class ClientReregister < Knife
24
-
25
- deps do
26
- require_relative "../api_client_v1"
27
- end
28
-
29
- banner "knife client reregister CLIENT (options)"
30
-
31
- option :file,
32
- short: "-f FILE",
33
- long: "--file FILE",
34
- description: "Write the key to a file."
35
-
36
- def run
37
- @client_name = @name_args[0]
38
-
39
- if @client_name.nil?
40
- show_usage
41
- ui.fatal("You must specify a client name")
42
- exit 1
43
- end
44
-
45
- client = Chef::ApiClientV1.reregister(@client_name)
46
- Chef::Log.trace("Updated client data: #{client.inspect}")
47
- key = client.private_key
48
- if config[:file]
49
- File.open(config[:file], "w") do |f|
50
- f.print(key)
51
- end
52
- else
53
- ui.msg key
54
- end
55
- end
56
- end
57
- end
58
- end
@@ -1,48 +0,0 @@
1
- #
2
- # Author:: Adam Jacob (<adam@chef.io>)
3
- # Copyright:: Copyright (c) Chef Software Inc.
4
- # License:: Apache License, Version 2.0
5
- #
6
- # Licensed under the Apache License, Version 2.0 (the "License");
7
- # you may not use this file except in compliance with the License.
8
- # You may obtain a copy of the License at
9
- #
10
- # http://www.apache.org/licenses/LICENSE-2.0
11
- #
12
- # Unless required by applicable law or agreed to in writing, software
13
- # distributed under the License is distributed on an "AS IS" BASIS,
14
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
- # See the License for the specific language governing permissions and
16
- # limitations under the License.
17
- #
18
-
19
- require_relative "../knife"
20
-
21
- class Chef
22
- class Knife
23
- class ClientShow < Knife
24
-
25
- include Knife::Core::MultiAttributeReturnOption
26
-
27
- deps do
28
- require_relative "../api_client_v1"
29
- end
30
-
31
- banner "knife client show CLIENT (options)"
32
-
33
- def run
34
- @client_name = @name_args[0]
35
-
36
- if @client_name.nil?
37
- show_usage
38
- ui.fatal("You must specify a client name")
39
- exit 1
40
- end
41
-
42
- client = Chef::ApiClientV1.load(@client_name)
43
- output(format_for_display(client))
44
- end
45
-
46
- end
47
- end
48
- end
@@ -1,39 +0,0 @@
1
- #
2
- # Author:: Joshua Timberman <opensource@housepub.org>
3
- # Copyright:: Copyright (c) 2012, Joshua Timberman
4
- # Copyright:: Copyright (c) 2018, Noah Kantrowitz
5
- # License:: Apache License, Version 2.0
6
- #
7
- # Licensed under the Apache License, Version 2.0 (the "License");
8
- # you may not use this file except in compliance with the License.
9
- # You may obtain a copy of the License at
10
- #
11
- # http://www.apache.org/licenses/LICENSE-2.0
12
- #
13
- # Unless required by applicable law or agreed to in writing, software
14
- # distributed under the License is distributed on an "AS IS" BASIS,
15
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16
- # See the License for the specific language governing permissions and
17
- # limitations under the License.
18
- #
19
-
20
- require_relative "../knife"
21
- require_relative "./config_show"
22
-
23
- class Chef
24
- class Knife
25
- class ConfigGet < ConfigShow
26
-
27
- # Handle the subclassing (knife doesn't do this :()
28
- dependency_loaders.concat(superclass.dependency_loaders)
29
-
30
- banner "knife config get [OPTION...] (options)\nDisplays the value of Chef::Config[OPTION] (or all config values)"
31
- category "deprecated"
32
-
33
- def run
34
- Chef::Log.warn("knife config get has been deprecated in favor of knife config show. This will be removed in the major release version!")
35
- super
36
- end
37
- end
38
- end
39
- end
@@ -1,37 +0,0 @@
1
- #
2
- # Copyright:: Copyright (c) 2018, Noah Kantrowitz
3
- # License:: Apache License, Version 2.0
4
- #
5
- # Licensed under the Apache License, Version 2.0 (the "License");
6
- # you may not use this file except in compliance with the License.
7
- # You may obtain a copy of the License at
8
- #
9
- # http://www.apache.org/licenses/LICENSE-2.0
10
- #
11
- # Unless required by applicable law or agreed to in writing, software
12
- # distributed under the License is distributed on an "AS IS" BASIS,
13
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
- # See the License for the specific language governing permissions and
15
- # limitations under the License.
16
- #
17
-
18
- require_relative "../knife"
19
- require_relative "./config_use"
20
-
21
- class Chef
22
- class Knife
23
- class ConfigGetProfile < ConfigUse
24
-
25
- # Handle the subclassing (knife doesn't do this :()
26
- dependency_loaders.concat(superclass.dependency_loaders)
27
-
28
- banner "knife config get-profile"
29
- category "deprecated"
30
-
31
- def run
32
- Chef::Log.warn("knife config get-profiles has been deprecated in favor of knife config use. This will be removed in the major release version!")
33
- super
34
- end
35
- end
36
- end
37
- end
@@ -1,139 +0,0 @@
1
- #
2
- # Copyright:: Copyright (c) 2018, Noah Kantrowitz
3
- # License:: Apache License, Version 2.0
4
- #
5
- # Licensed under the Apache License, Version 2.0 (the "License");
6
- # you may not use this file except in compliance with the License.
7
- # You may obtain a copy of the License at
8
- #
9
- # http://www.apache.org/licenses/LICENSE-2.0
10
- #
11
- # Unless required by applicable law or agreed to in writing, software
12
- # distributed under the License is distributed on an "AS IS" BASIS,
13
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
- # See the License for the specific language governing permissions and
15
- # limitations under the License.
16
- #
17
-
18
- require_relative "../knife"
19
-
20
- class Chef
21
- class Knife
22
- class ConfigList < Knife
23
- banner "knife config list (options)"
24
-
25
- TABLE_HEADER ||= [" Profile", "Client", "Key", "Server"].freeze
26
-
27
- deps do
28
- require_relative "../workstation_config_loader"
29
- require "tty-screen" unless defined?(TTY::Screen)
30
- require "tty-table" unless defined?(TTY::Table)
31
- end
32
-
33
- option :ignore_knife_rb,
34
- short: "-i",
35
- long: "--ignore-knife-rb",
36
- description: "Ignore the current config.rb/knife.rb configuration.",
37
- default: false
38
-
39
- def configure_chef
40
- apply_computed_config
41
- end
42
-
43
- def run
44
- credentials_data = self.class.config_loader.parse_credentials_file
45
- if credentials_data.nil? || credentials_data.empty?
46
- # Should this just show the ambient knife.rb config as "default" instead?
47
- ui.fatal("No profiles found, #{self.class.config_loader.credentials_file_path} does not exist or is empty")
48
- exit 1
49
- end
50
-
51
- current_profile = self.class.config_loader.credentials_profile(config[:profile])
52
- profiles = credentials_data.keys.map do |profile|
53
- if config[:ignore_knife_rb]
54
- # Don't do any fancy loading nonsense, just the raw data.
55
- profile_data = credentials_data[profile]
56
- {
57
- profile: profile,
58
- active: profile == current_profile,
59
- client_name: profile_data["client_name"] || profile_data["node_name"],
60
- client_key: profile_data["client_key"],
61
- server_url: profile_data["chef_server_url"],
62
- }
63
- else
64
- # Fancy loading nonsense so we get what the actual config would be.
65
- # Note that this modifies the global config, after this, all bets are
66
- # off as to whats in the config.
67
- Chef::Config.reset
68
- wcl = Chef::WorkstationConfigLoader.new(nil, Chef::Log, profile: profile)
69
- wcl.load
70
- {
71
- profile: profile,
72
- active: profile == current_profile,
73
- client_name: Chef::Config[:node_name],
74
- client_key: Chef::Config[:client_key],
75
- server_url: Chef::Config[:chef_server_url],
76
- }
77
- end
78
- end
79
-
80
- # Try to reset the config.
81
- unless config[:ignore_knife_rb]
82
- Chef::Config.reset
83
- apply_computed_config
84
- end
85
-
86
- if ui.interchange?
87
- # Machine-readable output.
88
- ui.output(profiles)
89
- else
90
- # Table output.
91
- ui.output(render_table(profiles))
92
- end
93
- end
94
-
95
- private
96
-
97
- def render_table(profiles, padding: 1)
98
- rows = []
99
- # Render the data to a 2D array that will be used for the table.
100
- profiles.each do |profile|
101
- # Replace the home dir in the client key path with ~.
102
- profile[:client_key] = profile[:client_key].to_s.gsub(/^#{Regexp.escape(Dir.home)}/, "~") if profile[:client_key]
103
- profile[:profile] = "#{profile[:active] ? "*" : " "}#{profile[:profile]}"
104
- rows << profile.values_at(:profile, :client_name, :client_key, :server_url)
105
- end
106
-
107
- table = TTY::Table.new(header: TABLE_HEADER, rows: rows)
108
-
109
- # Rotate the table to vertical if the screen width is less than table width.
110
- if table.width > TTY::Screen.width
111
- table.orientation = :vertical
112
- table.rotate
113
- # Add a new line after each profile record.
114
- table.render do |renderer|
115
- renderer.border do
116
- separator ->(row) { (row + 1) % TABLE_HEADER.size == 0 }
117
- end
118
- # Remove the leading space added of the first column.
119
- renderer.filter = Proc.new do |val, row_index, col_index|
120
- if col_index == 1 || (row_index) % TABLE_HEADER.size == 0
121
- val.strip
122
- else
123
- val
124
- end
125
- end
126
- end
127
- else
128
- table.render do |renderer|
129
- renderer.border do
130
- mid "-"
131
- end
132
- renderer.padding = [0, padding, 0, 0] # pad right with 2 characters
133
- end
134
- end
135
- end
136
-
137
- end
138
- end
139
- end
@@ -1,37 +0,0 @@
1
- #
2
- # Copyright:: Copyright (c) 2018, Noah Kantrowitz
3
- # License:: Apache License, Version 2.0
4
- #
5
- # Licensed under the Apache License, Version 2.0 (the "License");
6
- # you may not use this file except in compliance with the License.
7
- # You may obtain a copy of the License at
8
- #
9
- # http://www.apache.org/licenses/LICENSE-2.0
10
- #
11
- # Unless required by applicable law or agreed to in writing, software
12
- # distributed under the License is distributed on an "AS IS" BASIS,
13
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
- # See the License for the specific language governing permissions and
15
- # limitations under the License.
16
- #
17
-
18
- require_relative "../knife"
19
- require_relative "./config_list"
20
-
21
- class Chef
22
- class Knife
23
- class ConfigListProfiles < ConfigList
24
-
25
- # Handle the subclassing (knife doesn't do this :()
26
- dependency_loaders.concat(superclass.dependency_loaders)
27
-
28
- banner "knife config list-profiles (options)"
29
- category "deprecated"
30
-
31
- def run
32
- Chef::Log.warn("knife config list-profiles has been deprecated in favor of knife config list. This will be removed in the major release version!")
33
- super
34
- end
35
- end
36
- end
37
- end
@@ -1,127 +0,0 @@
1
- #
2
- # Author:: Vivek Singh (<vsingh@chef.io>)
3
- # Copyright:: Copyright (c) Chef Software Inc.
4
- # License:: Apache License, Version 2.0
5
- #
6
- # Licensed under the Apache License, Version 2.0 (the "License");
7
- # you may not use this file except in compliance with the License.
8
- # You may obtain a copy of the License at
9
- #
10
- # http://www.apache.org/licenses/LICENSE-2.0
11
- #
12
- # Unless required by applicable law or agreed to in writing, software
13
- # distributed under the License is distributed on an "AS IS" BASIS,
14
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
- # See the License for the specific language governing permissions and
16
- # limitations under the License.
17
- #
18
-
19
- require_relative "../knife"
20
-
21
- class Chef
22
- class Knife
23
- class ConfigShow < Knife
24
- banner "knife config show [OPTION...] (options)\nDisplays the value of Chef::Config[OPTION] (or all config values)"
25
-
26
- option :all,
27
- short: "-a",
28
- long: "--all",
29
- description: "Include options that are not set in the configuration.",
30
- default: false
31
-
32
- option :raw,
33
- short: "-r",
34
- long: "--raw",
35
- description: "Display a each value with no formatting.",
36
- default: false
37
-
38
- def run
39
- if config[:format] == "summary" && !config[:raw]
40
- # If using the default, human-readable output, also show which config files are being loaded.
41
- # Some of this is a bit hacky since it duplicates
42
- wcl = self.class.config_loader
43
- if wcl.credentials_found
44
- loading_from("credentials", ChefConfig::PathHelper.home(".chef", "credentials"))
45
- end
46
- if wcl.config_location
47
- loading_from("configuration", wcl.config_location)
48
- end
49
-
50
- if Chef::Config[:config_d_dir]
51
- wcl.find_dot_d(Chef::Config[:config_d_dir]).each do |path|
52
- loading_from(".d/ configuration", path)
53
- end
54
- end
55
- end
56
-
57
- # Dump the whole config, including defaults is --all was given.
58
- config_data = Chef::Config.save(config[:all])
59
- # Two special cases, these are set during knife startup but we don't usually care about them.
60
- unless config[:all]
61
- config_data.delete(:color)
62
- # Only keep these if true, false is much less important because it's the default.
63
- config_data.delete(:local_mode) unless config_data[:local_mode]
64
- config_data.delete(:enforce_default_paths) unless config_data[:enforce_default_paths]
65
- config_data.delete(:enforce_path_sanity) unless config_data[:enforce_path_sanity]
66
- end
67
-
68
- # Extract the data to show.
69
- output_data = {}
70
- if @name_args.empty?
71
- output_data = config_data
72
- else
73
- @name_args.each do |filter|
74
- if filter =~ %r{^/(.*)/(i?)$}
75
- # It's a regex.
76
- filter_re = Regexp.new($1, $2 ? Regexp::IGNORECASE : 0)
77
- config_data.each do |key, value|
78
- output_data[key] = value if key.to_s&.match?(filter_re)
79
- end
80
- else
81
- # It's a dotted path string.
82
- filter_parts = filter.split(".")
83
- extract = lambda do |memo, filter_part|
84
- memo.is_a?(Hash) ? memo[filter_part.to_sym] : nil
85
- end
86
- # Check against both config_data and all of the data, so that even
87
- # in non-all mode, if you ask for a key that isn't in the non-all
88
- # data, it will check against the broader set.
89
- output_data[filter] = filter_parts.inject(config_data, &extract) || filter_parts.inject(Chef::Config.save(true), &extract)
90
- end
91
- end
92
- end
93
-
94
- # Fix up some values.
95
- output_data.each do |key, value|
96
- if value == STDOUT
97
- output_data[key] = "STDOUT"
98
- elsif value == STDERR
99
- output_data[key] = "STDERR"
100
- end
101
- end
102
-
103
- # Show the data.
104
- if config[:raw]
105
- output_data.each_value do |value|
106
- ui.msg(value)
107
- end
108
- else
109
- ui.output(output_data)
110
- end
111
- end
112
-
113
- private
114
-
115
- # Display a banner about loading from a config file.
116
- #
117
- # @api private
118
- # @param type_of_file [String] Description of the file for the banner.
119
- # @param path [String] Path of the file.
120
- # @return [nil]
121
- def loading_from(type_of_file, path)
122
- path = Pathname.new(path).realpath
123
- ui.msg(ui.color("Loading from #{type_of_file} file #{path}", :yellow))
124
- end
125
- end
126
- end
127
- end
@@ -1,61 +0,0 @@
1
- #
2
- # Author:: Vivek Singh (<vsingh@chef.io>)
3
- # Copyright:: Copyright (c) Chef Software Inc.
4
- # License:: Apache License, Version 2.0
5
- #
6
- # Licensed under the Apache License, Version 2.0 (the "License");
7
- # you may not use this file except in compliance with the License.
8
- # You may obtain a copy of the License at
9
- #
10
- # http://www.apache.org/licenses/LICENSE-2.0
11
- #
12
- # Unless required by applicable law or agreed to in writing, software
13
- # distributed under the License is distributed on an "AS IS" BASIS,
14
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
- # See the License for the specific language governing permissions and
16
- # limitations under the License.
17
- #
18
-
19
- require_relative "../knife"
20
-
21
- class Chef
22
- class Knife
23
- class ConfigUse < Knife
24
- banner "knife config use [PROFILE]"
25
-
26
- deps do
27
- require "fileutils" unless defined?(FileUtils)
28
- end
29
-
30
- # Disable normal config loading since this shouldn't fail if the profile
31
- # doesn't exist of the config is otherwise corrupted.
32
- def configure_chef
33
- apply_computed_config
34
- end
35
-
36
- def run
37
- profile = @name_args[0]&.strip
38
- if profile.nil? || profile.empty?
39
- ui.msg(self.class.config_loader.credentials_profile(config[:profile]))
40
- else
41
- credentials_data = self.class.config_loader.parse_credentials_file
42
- context_file = ChefConfig::PathHelper.home(".chef", "context").freeze
43
-
44
- if credentials_data.nil? || credentials_data.empty?
45
- ui.fatal("No profiles found, #{self.class.config_loader.credentials_file_path} does not exist or is empty")
46
- exit 1
47
- end
48
-
49
- if credentials_data[profile].nil?
50
- raise ChefConfig::ConfigurationError, "Profile #{profile} doesn't exist. Please add it to #{self.class.config_loader.credentials_file_path} and if it is profile with DNS name check that you are not missing single quotes around it as per docs https://docs.chef.io/workstation/knife_setup/#knife-profiles."
51
- else
52
- # Ensure the .chef/ folder exists.
53
- FileUtils.mkdir_p(File.dirname(context_file))
54
- IO.write(context_file, "#{profile}\n")
55
- ui.msg("Set default profile to #{profile}")
56
- end
57
- end
58
- end
59
- end
60
- end
61
- end
@@ -1,47 +0,0 @@
1
- #
2
- # Copyright:: Copyright (c) 2018, Noah Kantrowitz
3
- # License:: Apache License, Version 2.0
4
- #
5
- # Licensed under the Apache License, Version 2.0 (the "License");
6
- # you may not use this file except in compliance with the License.
7
- # You may obtain a copy of the License at
8
- #
9
- # http://www.apache.org/licenses/LICENSE-2.0
10
- #
11
- # Unless required by applicable law or agreed to in writing, software
12
- # distributed under the License is distributed on an "AS IS" BASIS,
13
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
- # See the License for the specific language governing permissions and
15
- # limitations under the License.
16
- #
17
-
18
- require_relative "../knife"
19
- require_relative "./config_use"
20
-
21
- class Chef
22
- class Knife
23
- class ConfigUseProfile < ConfigUse
24
-
25
- # Handle the subclassing (knife doesn't do this :()
26
- dependency_loaders.concat(superclass.dependency_loaders)
27
-
28
- banner "knife config use-profile PROFILE"
29
- category "deprecated"
30
-
31
- def run
32
- Chef::Log.warn("knife config use-profile has been deprecated in favor of knife config use. This will be removed in the major release version!")
33
-
34
- credentials_data = self.class.config_loader.parse_credentials_file
35
- context_file = ChefConfig::PathHelper.home(".chef", "context").freeze
36
- profile = @name_args[0]&.strip
37
- if profile.nil? || profile.empty?
38
- show_usage
39
- ui.fatal("You must specify a profile")
40
- exit 1
41
- end
42
-
43
- super
44
- end
45
- end
46
- end
47
- end