chef 16.17.18-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 (646) 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 +2 -3
  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/chef_client_trusted_certificate_spec.rb +0 -14
  282. data/spec/unit/resource/homebrew_cask_spec.rb +11 -29
  283. data/spec/unit/resource/mount_spec.rb +0 -10
  284. data/spec/unit/resource/powershell_script_spec.rb +2 -2
  285. data/spec/unit/resource/rhsm_subscription_spec.rb +3 -50
  286. data/spec/unit/resource/systemd_unit_spec.rb +1 -1
  287. data/spec/unit/resource/user_ulimit_spec.rb +1 -14
  288. data/spec/unit/resource/windows_task_spec.rb +1 -1
  289. data/spec/unit/resource_spec.rb +0 -5
  290. data/spec/unit/user_spec.rb +1 -1
  291. data/spec/unit/user_v1_spec.rb +6 -4
  292. data/tasks/rspec.rb +15 -7
  293. metadata +19 -382
  294. data/bin/knife +0 -24
  295. data/lib/chef/application/knife.rb +0 -234
  296. data/lib/chef/application/windows_service.rb +0 -338
  297. data/lib/chef/application/windows_service_manager.rb +0 -205
  298. data/lib/chef/chef_fs/knife.rb +0 -160
  299. data/lib/chef/chef_fs/parallelizer/flatten_enumerable.rb +0 -35
  300. data/lib/chef/chef_fs/parallelizer/parallel_enumerable.rb +0 -278
  301. data/lib/chef/chef_fs/parallelizer.rb +0 -102
  302. data/lib/chef/cookbook_site_streaming_uploader.rb +0 -244
  303. data/lib/chef/knife/acl_add.rb +0 -57
  304. data/lib/chef/knife/acl_base.rb +0 -183
  305. data/lib/chef/knife/acl_bulk_add.rb +0 -78
  306. data/lib/chef/knife/acl_bulk_remove.rb +0 -83
  307. data/lib/chef/knife/acl_remove.rb +0 -62
  308. data/lib/chef/knife/acl_show.rb +0 -56
  309. data/lib/chef/knife/bootstrap/chef_vault_handler.rb +0 -162
  310. data/lib/chef/knife/bootstrap/client_builder.rb +0 -212
  311. data/lib/chef/knife/bootstrap/templates/README.md +0 -11
  312. data/lib/chef/knife/bootstrap/templates/chef-full.erb +0 -242
  313. data/lib/chef/knife/bootstrap/templates/windows-chef-client-msi.erb +0 -278
  314. data/lib/chef/knife/bootstrap/train_connector.rb +0 -336
  315. data/lib/chef/knife/bootstrap.rb +0 -1192
  316. data/lib/chef/knife/client_bulk_delete.rb +0 -104
  317. data/lib/chef/knife/client_create.rb +0 -101
  318. data/lib/chef/knife/client_delete.rb +0 -62
  319. data/lib/chef/knife/client_edit.rb +0 -52
  320. data/lib/chef/knife/client_key_create.rb +0 -73
  321. data/lib/chef/knife/client_key_delete.rb +0 -80
  322. data/lib/chef/knife/client_key_edit.rb +0 -83
  323. data/lib/chef/knife/client_key_list.rb +0 -73
  324. data/lib/chef/knife/client_key_show.rb +0 -80
  325. data/lib/chef/knife/client_list.rb +0 -41
  326. data/lib/chef/knife/client_reregister.rb +0 -58
  327. data/lib/chef/knife/client_show.rb +0 -48
  328. data/lib/chef/knife/config_get.rb +0 -39
  329. data/lib/chef/knife/config_get_profile.rb +0 -37
  330. data/lib/chef/knife/config_list.rb +0 -139
  331. data/lib/chef/knife/config_list_profiles.rb +0 -37
  332. data/lib/chef/knife/config_show.rb +0 -127
  333. data/lib/chef/knife/config_use.rb +0 -61
  334. data/lib/chef/knife/config_use_profile.rb +0 -47
  335. data/lib/chef/knife/configure.rb +0 -150
  336. data/lib/chef/knife/configure_client.rb +0 -48
  337. data/lib/chef/knife/cookbook_bulk_delete.rb +0 -71
  338. data/lib/chef/knife/cookbook_delete.rb +0 -151
  339. data/lib/chef/knife/cookbook_download.rb +0 -142
  340. data/lib/chef/knife/cookbook_list.rb +0 -47
  341. data/lib/chef/knife/cookbook_metadata.rb +0 -106
  342. data/lib/chef/knife/cookbook_metadata_from_file.rb +0 -49
  343. data/lib/chef/knife/cookbook_show.rb +0 -98
  344. data/lib/chef/knife/cookbook_upload.rb +0 -292
  345. data/lib/chef/knife/core/bootstrap_context.rb +0 -264
  346. data/lib/chef/knife/core/cookbook_scm_repo.rb +0 -159
  347. data/lib/chef/knife/core/formatting_options.rb +0 -49
  348. data/lib/chef/knife/core/gem_glob_loader.rb +0 -138
  349. data/lib/chef/knife/core/generic_presenter.rb +0 -232
  350. data/lib/chef/knife/core/hashed_command_loader.rb +0 -100
  351. data/lib/chef/knife/core/node_editor.rb +0 -130
  352. data/lib/chef/knife/core/node_presenter.rb +0 -133
  353. data/lib/chef/knife/core/object_loader.rb +0 -115
  354. data/lib/chef/knife/core/status_presenter.rb +0 -147
  355. data/lib/chef/knife/core/subcommand_loader.rb +0 -203
  356. data/lib/chef/knife/core/text_formatter.rb +0 -85
  357. data/lib/chef/knife/core/ui.rb +0 -338
  358. data/lib/chef/knife/core/windows_bootstrap_context.rb +0 -405
  359. data/lib/chef/knife/data_bag_create.rb +0 -81
  360. data/lib/chef/knife/data_bag_delete.rb +0 -49
  361. data/lib/chef/knife/data_bag_edit.rb +0 -74
  362. data/lib/chef/knife/data_bag_from_file.rb +0 -113
  363. data/lib/chef/knife/data_bag_list.rb +0 -42
  364. data/lib/chef/knife/data_bag_secret_options.rb +0 -122
  365. data/lib/chef/knife/data_bag_show.rb +0 -69
  366. data/lib/chef/knife/delete.rb +0 -125
  367. data/lib/chef/knife/deps.rb +0 -156
  368. data/lib/chef/knife/diff.rb +0 -83
  369. data/lib/chef/knife/download.rb +0 -84
  370. data/lib/chef/knife/edit.rb +0 -88
  371. data/lib/chef/knife/environment_compare.rb +0 -128
  372. data/lib/chef/knife/environment_create.rb +0 -52
  373. data/lib/chef/knife/environment_delete.rb +0 -44
  374. data/lib/chef/knife/environment_edit.rb +0 -44
  375. data/lib/chef/knife/environment_from_file.rb +0 -84
  376. data/lib/chef/knife/environment_list.rb +0 -41
  377. data/lib/chef/knife/environment_show.rb +0 -47
  378. data/lib/chef/knife/exec.rb +0 -99
  379. data/lib/chef/knife/group_add.rb +0 -55
  380. data/lib/chef/knife/group_create.rb +0 -49
  381. data/lib/chef/knife/group_destroy.rb +0 -53
  382. data/lib/chef/knife/group_list.rb +0 -43
  383. data/lib/chef/knife/group_remove.rb +0 -56
  384. data/lib/chef/knife/group_show.rb +0 -49
  385. data/lib/chef/knife/key_create.rb +0 -112
  386. data/lib/chef/knife/key_create_base.rb +0 -50
  387. data/lib/chef/knife/key_delete.rb +0 -55
  388. data/lib/chef/knife/key_edit.rb +0 -118
  389. data/lib/chef/knife/key_edit_base.rb +0 -55
  390. data/lib/chef/knife/key_list.rb +0 -90
  391. data/lib/chef/knife/key_list_base.rb +0 -45
  392. data/lib/chef/knife/key_show.rb +0 -53
  393. data/lib/chef/knife/list.rb +0 -177
  394. data/lib/chef/knife/node_bulk_delete.rb +0 -75
  395. data/lib/chef/knife/node_create.rb +0 -47
  396. data/lib/chef/knife/node_delete.rb +0 -46
  397. data/lib/chef/knife/node_edit.rb +0 -70
  398. data/lib/chef/knife/node_environment_set.rb +0 -53
  399. data/lib/chef/knife/node_from_file.rb +0 -51
  400. data/lib/chef/knife/node_list.rb +0 -44
  401. data/lib/chef/knife/node_policy_set.rb +0 -79
  402. data/lib/chef/knife/node_run_list_add.rb +0 -104
  403. data/lib/chef/knife/node_run_list_remove.rb +0 -67
  404. data/lib/chef/knife/node_run_list_set.rb +0 -66
  405. data/lib/chef/knife/node_show.rb +0 -63
  406. data/lib/chef/knife/null.rb +0 -12
  407. data/lib/chef/knife/raw.rb +0 -123
  408. data/lib/chef/knife/recipe_list.rb +0 -32
  409. data/lib/chef/knife/rehash.rb +0 -50
  410. data/lib/chef/knife/role_bulk_delete.rb +0 -66
  411. data/lib/chef/knife/role_create.rb +0 -53
  412. data/lib/chef/knife/role_delete.rb +0 -46
  413. data/lib/chef/knife/role_edit.rb +0 -45
  414. data/lib/chef/knife/role_env_run_list_add.rb +0 -87
  415. data/lib/chef/knife/role_env_run_list_clear.rb +0 -55
  416. data/lib/chef/knife/role_env_run_list_remove.rb +0 -57
  417. data/lib/chef/knife/role_env_run_list_replace.rb +0 -60
  418. data/lib/chef/knife/role_env_run_list_set.rb +0 -70
  419. data/lib/chef/knife/role_from_file.rb +0 -51
  420. data/lib/chef/knife/role_list.rb +0 -42
  421. data/lib/chef/knife/role_run_list_add.rb +0 -87
  422. data/lib/chef/knife/role_run_list_clear.rb +0 -55
  423. data/lib/chef/knife/role_run_list_remove.rb +0 -56
  424. data/lib/chef/knife/role_run_list_replace.rb +0 -60
  425. data/lib/chef/knife/role_run_list_set.rb +0 -69
  426. data/lib/chef/knife/role_show.rb +0 -48
  427. data/lib/chef/knife/search.rb +0 -194
  428. data/lib/chef/knife/serve.rb +0 -65
  429. data/lib/chef/knife/show.rb +0 -72
  430. data/lib/chef/knife/ssh.rb +0 -645
  431. data/lib/chef/knife/ssl_check.rb +0 -284
  432. data/lib/chef/knife/ssl_fetch.rb +0 -161
  433. data/lib/chef/knife/status.rb +0 -95
  434. data/lib/chef/knife/supermarket_download.rb +0 -121
  435. data/lib/chef/knife/supermarket_install.rb +0 -192
  436. data/lib/chef/knife/supermarket_list.rb +0 -76
  437. data/lib/chef/knife/supermarket_search.rb +0 -53
  438. data/lib/chef/knife/supermarket_share.rb +0 -166
  439. data/lib/chef/knife/supermarket_show.rb +0 -66
  440. data/lib/chef/knife/supermarket_unshare.rb +0 -61
  441. data/lib/chef/knife/tag_create.rb +0 -52
  442. data/lib/chef/knife/tag_delete.rb +0 -60
  443. data/lib/chef/knife/tag_list.rb +0 -47
  444. data/lib/chef/knife/upload.rb +0 -86
  445. data/lib/chef/knife/user_create.rb +0 -107
  446. data/lib/chef/knife/user_delete.rb +0 -44
  447. data/lib/chef/knife/user_dissociate.rb +0 -42
  448. data/lib/chef/knife/user_edit.rb +0 -52
  449. data/lib/chef/knife/user_invite_add.rb +0 -43
  450. data/lib/chef/knife/user_invite_list.rb +0 -34
  451. data/lib/chef/knife/user_invite_rescind.rb +0 -63
  452. data/lib/chef/knife/user_key_create.rb +0 -73
  453. data/lib/chef/knife/user_key_delete.rb +0 -80
  454. data/lib/chef/knife/user_key_edit.rb +0 -83
  455. data/lib/chef/knife/user_key_list.rb +0 -73
  456. data/lib/chef/knife/user_key_show.rb +0 -80
  457. data/lib/chef/knife/user_list.rb +0 -42
  458. data/lib/chef/knife/user_reregister.rb +0 -59
  459. data/lib/chef/knife/user_show.rb +0 -48
  460. data/lib/chef/knife/xargs.rb +0 -282
  461. data/lib/chef/knife/yaml_convert.rb +0 -91
  462. data/lib/chef/knife.rb +0 -665
  463. data/lib/chef/resource/user/dscl_user.rb +0 -35
  464. data/spec/data/knife-home/.chef/plugins/knife/example_home_subcommand.rb +0 -0
  465. data/spec/data/knife-site-subcommands/plugins/knife/example_subcommand.rb +0 -0
  466. data/spec/data/knife_subcommand/test_explicit_category.rb +0 -7
  467. data/spec/data/knife_subcommand/test_name_mapping.rb +0 -4
  468. data/spec/data/knife_subcommand/test_yourself.rb +0 -21
  469. data/spec/functional/knife/configure_spec.rb +0 -33
  470. data/spec/functional/knife/cookbook_delete_spec.rb +0 -156
  471. data/spec/functional/knife/exec_spec.rb +0 -55
  472. data/spec/functional/knife/rehash_spec.rb +0 -39
  473. data/spec/functional/knife/smoke_test.rb +0 -42
  474. data/spec/functional/knife/ssh_spec.rb +0 -352
  475. data/spec/functional/resource/user/dscl_spec.rb +0 -188
  476. data/spec/functional/resource/windows_service_spec.rb +0 -105
  477. data/spec/functional/win32/service_manager_spec.rb +0 -220
  478. data/spec/integration/knife/chef_fs_data_store_spec.rb +0 -557
  479. data/spec/integration/knife/chef_repo_path_spec.rb +0 -962
  480. data/spec/integration/knife/chef_repository_file_system_spec.rb +0 -200
  481. data/spec/integration/knife/chefignore_spec.rb +0 -301
  482. data/spec/integration/knife/client_bulk_delete_spec.rb +0 -131
  483. data/spec/integration/knife/client_create_spec.rb +0 -70
  484. data/spec/integration/knife/client_delete_spec.rb +0 -64
  485. data/spec/integration/knife/client_key_create_spec.rb +0 -66
  486. data/spec/integration/knife/client_key_delete_spec.rb +0 -43
  487. data/spec/integration/knife/client_key_list_spec.rb +0 -61
  488. data/spec/integration/knife/client_key_show_spec.rb +0 -45
  489. data/spec/integration/knife/client_list_spec.rb +0 -49
  490. data/spec/integration/knife/client_show_spec.rb +0 -37
  491. data/spec/integration/knife/common_options_spec.rb +0 -174
  492. data/spec/integration/knife/config_list_spec.rb +0 -220
  493. data/spec/integration/knife/config_show_spec.rb +0 -192
  494. data/spec/integration/knife/config_use_spec.rb +0 -198
  495. data/spec/integration/knife/cookbook_api_ipv6_spec.rb +0 -113
  496. data/spec/integration/knife/cookbook_bulk_delete_spec.rb +0 -65
  497. data/spec/integration/knife/cookbook_download_spec.rb +0 -72
  498. data/spec/integration/knife/cookbook_list_spec.rb +0 -55
  499. data/spec/integration/knife/cookbook_show_spec.rb +0 -149
  500. data/spec/integration/knife/cookbook_upload_spec.rb +0 -128
  501. data/spec/integration/knife/data_bag_create_spec.rb +0 -125
  502. data/spec/integration/knife/data_bag_delete_spec.rb +0 -59
  503. data/spec/integration/knife/data_bag_edit_spec.rb +0 -105
  504. data/spec/integration/knife/data_bag_from_file_spec.rb +0 -116
  505. data/spec/integration/knife/data_bag_list_spec.rb +0 -44
  506. data/spec/integration/knife/data_bag_show_spec.rb +0 -95
  507. data/spec/integration/knife/delete_spec.rb +0 -1018
  508. data/spec/integration/knife/deps_spec.rb +0 -703
  509. data/spec/integration/knife/diff_spec.rb +0 -605
  510. data/spec/integration/knife/download_spec.rb +0 -1336
  511. data/spec/integration/knife/environment_compare_spec.rb +0 -75
  512. data/spec/integration/knife/environment_create_spec.rb +0 -41
  513. data/spec/integration/knife/environment_delete_spec.rb +0 -37
  514. data/spec/integration/knife/environment_from_file_spec.rb +0 -116
  515. data/spec/integration/knife/environment_list_spec.rb +0 -42
  516. data/spec/integration/knife/environment_show_spec.rb +0 -77
  517. data/spec/integration/knife/list_spec.rb +0 -1060
  518. data/spec/integration/knife/node_bulk_delete_spec.rb +0 -52
  519. data/spec/integration/knife/node_create_spec.rb +0 -47
  520. data/spec/integration/knife/node_delete_spec.rb +0 -48
  521. data/spec/integration/knife/node_environment_set_spec.rb +0 -46
  522. data/spec/integration/knife/node_from_file_spec.rb +0 -59
  523. data/spec/integration/knife/node_list_spec.rb +0 -45
  524. data/spec/integration/knife/node_run_list_add_spec.rb +0 -54
  525. data/spec/integration/knife/node_run_list_remove_spec.rb +0 -36
  526. data/spec/integration/knife/node_run_list_set_spec.rb +0 -41
  527. data/spec/integration/knife/node_show_spec.rb +0 -36
  528. data/spec/integration/knife/raw_spec.rb +0 -297
  529. data/spec/integration/knife/redirection_spec.rb +0 -64
  530. data/spec/integration/knife/role_bulk_delete_spec.rb +0 -52
  531. data/spec/integration/knife/role_create_spec.rb +0 -41
  532. data/spec/integration/knife/role_delete_spec.rb +0 -48
  533. data/spec/integration/knife/role_from_file_spec.rb +0 -96
  534. data/spec/integration/knife/role_list_spec.rb +0 -45
  535. data/spec/integration/knife/role_show_spec.rb +0 -51
  536. data/spec/integration/knife/search_node_spec.rb +0 -40
  537. data/spec/integration/knife/serve_spec.rb +0 -92
  538. data/spec/integration/knife/show_spec.rb +0 -197
  539. data/spec/integration/knife/upload_spec.rb +0 -1616
  540. data/spec/support/shared/functional/knife.rb +0 -37
  541. data/spec/support/shared/functional/win32_service.rb +0 -57
  542. data/spec/support/shared/integration/knife_support.rb +0 -192
  543. data/spec/support/shared/unit/knife_shared.rb +0 -39
  544. data/spec/unit/application/knife_spec.rb +0 -241
  545. data/spec/unit/chef_fs/parallelizer_spec.rb +0 -479
  546. data/spec/unit/cookbook_site_streaming_uploader_spec.rb +0 -198
  547. data/spec/unit/knife/bootstrap/chef_vault_handler_spec.rb +0 -152
  548. data/spec/unit/knife/bootstrap/client_builder_spec.rb +0 -207
  549. data/spec/unit/knife/bootstrap/train_connector_spec.rb +0 -244
  550. data/spec/unit/knife/bootstrap_spec.rb +0 -2220
  551. data/spec/unit/knife/client_bulk_delete_spec.rb +0 -166
  552. data/spec/unit/knife/client_create_spec.rb +0 -169
  553. data/spec/unit/knife/client_delete_spec.rb +0 -99
  554. data/spec/unit/knife/client_edit_spec.rb +0 -53
  555. data/spec/unit/knife/client_list_spec.rb +0 -34
  556. data/spec/unit/knife/client_reregister_spec.rb +0 -62
  557. data/spec/unit/knife/client_show_spec.rb +0 -52
  558. data/spec/unit/knife/configure_client_spec.rb +0 -81
  559. data/spec/unit/knife/configure_spec.rb +0 -190
  560. data/spec/unit/knife/cookbook_bulk_delete_spec.rb +0 -87
  561. data/spec/unit/knife/cookbook_delete_spec.rb +0 -239
  562. data/spec/unit/knife/cookbook_download_spec.rb +0 -255
  563. data/spec/unit/knife/cookbook_list_spec.rb +0 -88
  564. data/spec/unit/knife/cookbook_metadata_from_file_spec.rb +0 -72
  565. data/spec/unit/knife/cookbook_metadata_spec.rb +0 -182
  566. data/spec/unit/knife/cookbook_show_spec.rb +0 -253
  567. data/spec/unit/knife/cookbook_upload_spec.rb +0 -364
  568. data/spec/unit/knife/core/bootstrap_context_spec.rb +0 -287
  569. data/spec/unit/knife/core/cookbook_scm_repo_spec.rb +0 -187
  570. data/spec/unit/knife/core/gem_glob_loader_spec.rb +0 -209
  571. data/spec/unit/knife/core/hashed_command_loader_spec.rb +0 -112
  572. data/spec/unit/knife/core/node_editor_spec.rb +0 -211
  573. data/spec/unit/knife/core/object_loader_spec.rb +0 -81
  574. data/spec/unit/knife/core/status_presenter_spec.rb +0 -54
  575. data/spec/unit/knife/core/subcommand_loader_spec.rb +0 -64
  576. data/spec/unit/knife/core/ui_spec.rb +0 -656
  577. data/spec/unit/knife/core/windows_bootstrap_context_spec.rb +0 -238
  578. data/spec/unit/knife/data_bag_create_spec.rb +0 -175
  579. data/spec/unit/knife/data_bag_edit_spec.rb +0 -126
  580. data/spec/unit/knife/data_bag_from_file_spec.rb +0 -174
  581. data/spec/unit/knife/data_bag_secret_options_spec.rb +0 -173
  582. data/spec/unit/knife/data_bag_show_spec.rb +0 -139
  583. data/spec/unit/knife/environment_compare_spec.rb +0 -112
  584. data/spec/unit/knife/environment_create_spec.rb +0 -91
  585. data/spec/unit/knife/environment_delete_spec.rb +0 -71
  586. data/spec/unit/knife/environment_edit_spec.rb +0 -79
  587. data/spec/unit/knife/environment_from_file_spec.rb +0 -90
  588. data/spec/unit/knife/environment_list_spec.rb +0 -54
  589. data/spec/unit/knife/environment_show_spec.rb +0 -52
  590. data/spec/unit/knife/key_create_spec.rb +0 -223
  591. data/spec/unit/knife/key_delete_spec.rb +0 -133
  592. data/spec/unit/knife/key_edit_spec.rb +0 -264
  593. data/spec/unit/knife/key_helper.rb +0 -74
  594. data/spec/unit/knife/key_list_spec.rb +0 -216
  595. data/spec/unit/knife/key_show_spec.rb +0 -126
  596. data/spec/unit/knife/node_bulk_delete_spec.rb +0 -94
  597. data/spec/unit/knife/node_delete_spec.rb +0 -77
  598. data/spec/unit/knife/node_edit_spec.rb +0 -116
  599. data/spec/unit/knife/node_environment_set_spec.rb +0 -61
  600. data/spec/unit/knife/node_from_file_spec.rb +0 -59
  601. data/spec/unit/knife/node_list_spec.rb +0 -62
  602. data/spec/unit/knife/node_policy_set_spec.rb +0 -122
  603. data/spec/unit/knife/node_run_list_add_spec.rb +0 -145
  604. data/spec/unit/knife/node_run_list_remove_spec.rb +0 -106
  605. data/spec/unit/knife/node_run_list_set_spec.rb +0 -115
  606. data/spec/unit/knife/node_show_spec.rb +0 -65
  607. data/spec/unit/knife/raw_spec.rb +0 -43
  608. data/spec/unit/knife/role_bulk_delete_spec.rb +0 -80
  609. data/spec/unit/knife/role_create_spec.rb +0 -80
  610. data/spec/unit/knife/role_delete_spec.rb +0 -67
  611. data/spec/unit/knife/role_edit_spec.rb +0 -77
  612. data/spec/unit/knife/role_env_run_list_add_spec.rb +0 -217
  613. data/spec/unit/knife/role_env_run_list_clear_spec.rb +0 -94
  614. data/spec/unit/knife/role_env_run_list_remove_spec.rb +0 -102
  615. data/spec/unit/knife/role_env_run_list_replace_spec.rb +0 -105
  616. data/spec/unit/knife/role_env_run_list_set_spec.rb +0 -99
  617. data/spec/unit/knife/role_from_file_spec.rb +0 -69
  618. data/spec/unit/knife/role_list_spec.rb +0 -54
  619. data/spec/unit/knife/role_run_list_add_spec.rb +0 -179
  620. data/spec/unit/knife/role_run_list_clear_spec.rb +0 -84
  621. data/spec/unit/knife/role_run_list_remove_spec.rb +0 -92
  622. data/spec/unit/knife/role_run_list_replace_spec.rb +0 -98
  623. data/spec/unit/knife/role_run_list_set_spec.rb +0 -89
  624. data/spec/unit/knife/role_show_spec.rb +0 -59
  625. data/spec/unit/knife/ssh_spec.rb +0 -403
  626. data/spec/unit/knife/ssl_check_spec.rb +0 -256
  627. data/spec/unit/knife/ssl_fetch_spec.rb +0 -222
  628. data/spec/unit/knife/status_spec.rb +0 -112
  629. data/spec/unit/knife/supermarket_download_spec.rb +0 -152
  630. data/spec/unit/knife/supermarket_install_spec.rb +0 -202
  631. data/spec/unit/knife/supermarket_list_spec.rb +0 -70
  632. data/spec/unit/knife/supermarket_search_spec.rb +0 -85
  633. data/spec/unit/knife/supermarket_share_spec.rb +0 -208
  634. data/spec/unit/knife/supermarket_unshare_spec.rb +0 -78
  635. data/spec/unit/knife/tag_create_spec.rb +0 -23
  636. data/spec/unit/knife/tag_delete_spec.rb +0 -25
  637. data/spec/unit/knife/tag_list_spec.rb +0 -23
  638. data/spec/unit/knife/user_create_spec.rb +0 -184
  639. data/spec/unit/knife/user_delete_spec.rb +0 -46
  640. data/spec/unit/knife/user_edit_spec.rb +0 -48
  641. data/spec/unit/knife/user_list_spec.rb +0 -36
  642. data/spec/unit/knife/user_reregister_spec.rb +0 -56
  643. data/spec/unit/knife/user_show_spec.rb +0 -46
  644. data/spec/unit/knife_spec.rb +0 -634
  645. data/spec/unit/provider/user/dscl_spec.rb +0 -699
  646. data/spec/unit/windows_service_spec.rb +0 -118
@@ -1,80 +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 "spec_helper"
20
-
21
- describe Chef::Knife::RoleCreate do
22
- before(:each) do
23
- Chef::Config[:node_name] = "webmonkey.example.com"
24
- @knife = Chef::Knife::RoleCreate.new
25
- @knife.config = {
26
- description: nil,
27
- }
28
- @knife.name_args = [ "adam" ]
29
- allow(@knife).to receive(:output).and_return(true)
30
- @role = Chef::Role.new
31
- allow(@role).to receive(:save)
32
- allow(Chef::Role).to receive(:new).and_return(@role)
33
- allow(@knife).to receive(:edit_data).and_return(@role)
34
- @stdout = StringIO.new
35
- allow(@knife.ui).to receive(:stdout).and_return(@stdout)
36
- end
37
-
38
- describe "run" do
39
- it "should create a new role" do
40
- expect(Chef::Role).to receive(:new).and_return(@role)
41
- @knife.run
42
- end
43
-
44
- it "should set the role name" do
45
- expect(@role).to receive(:name).with("adam")
46
- @knife.run
47
- end
48
-
49
- it "should not print the role" do
50
- expect(@knife).not_to receive(:output)
51
- @knife.run
52
- end
53
-
54
- it "should allow you to edit the data" do
55
- expect(@knife).to receive(:edit_data).with(@role, object_class: Chef::Role)
56
- @knife.run
57
- end
58
-
59
- it "should save the role" do
60
- expect(@role).to receive(:save)
61
- @knife.run
62
- end
63
-
64
- describe "with -d or --description" do
65
- it "should set the description" do
66
- @knife.config[:description] = "All is bob"
67
- expect(@role).to receive(:description).with("All is bob")
68
- @knife.run
69
- end
70
- end
71
-
72
- describe "with -p or --print-after" do
73
- it "should pretty print the node, formatted for display" do
74
- @knife.config[:print_after] = true
75
- expect(@knife).to receive(:output).with(@role)
76
- @knife.run
77
- end
78
- end
79
- end
80
- end
@@ -1,67 +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 "spec_helper"
20
-
21
- describe Chef::Knife::RoleDelete do
22
- before(:each) do
23
- Chef::Config[:node_name] = "webmonkey.example.com"
24
- @knife = Chef::Knife::RoleDelete.new
25
- @knife.config = {
26
- print_after: nil,
27
- }
28
- @knife.name_args = [ "adam" ]
29
- allow(@knife).to receive(:output).and_return(true)
30
- allow(@knife).to receive(:confirm).and_return(true)
31
- @role = Chef::Role.new
32
- allow(@role).to receive(:destroy).and_return(true)
33
- allow(Chef::Role).to receive(:load).and_return(@role)
34
- @stdout = StringIO.new
35
- allow(@knife.ui).to receive(:stdout).and_return(@stdout)
36
- end
37
-
38
- describe "run" do
39
- it "should confirm that you want to delete" do
40
- expect(@knife).to receive(:confirm)
41
- @knife.run
42
- end
43
-
44
- it "should load the Role" do
45
- expect(Chef::Role).to receive(:load).with("adam").and_return(@role)
46
- @knife.run
47
- end
48
-
49
- it "should delete the Role" do
50
- expect(@role).to receive(:destroy).and_return(@role)
51
- @knife.run
52
- end
53
-
54
- it "should not print the Role" do
55
- expect(@knife).not_to receive(:output)
56
- @knife.run
57
- end
58
-
59
- describe "with -p or --print-after" do
60
- it "should pretty print the Role, formatted for display" do
61
- @knife.config[:print_after] = true
62
- expect(@knife).to receive(:output)
63
- @knife.run
64
- end
65
- end
66
- end
67
- end
@@ -1,77 +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 "spec_helper"
20
-
21
- describe Chef::Knife::RoleEdit do
22
- before(:each) do
23
- Chef::Config[:node_name] = "webmonkey.example.com"
24
- @knife = Chef::Knife::RoleEdit.new
25
- @knife.config[:print_after] = nil
26
- @knife.name_args = [ "adam" ]
27
- allow(@knife.ui).to receive(:output).and_return(true)
28
- @role = Chef::Role.new
29
- allow(@role).to receive(:save)
30
- allow(Chef::Role).to receive(:load).and_return(@role)
31
- allow(@knife.ui).to receive(:edit_data).and_return(@role)
32
- allow(@knife.ui).to receive(:msg)
33
- end
34
-
35
- describe "run" do
36
- it "should load the role" do
37
- expect(Chef::Role).to receive(:load).with("adam").and_return(@role)
38
- @knife.run
39
- end
40
-
41
- it "should edit the role data" do
42
- expect(@knife.ui).to receive(:edit_data).with(@role, object_class: Chef::Role)
43
- @knife.run
44
- end
45
-
46
- it "should save the edited role data" do
47
- pansy = Chef::Role.new
48
-
49
- @role.name("new_role_name")
50
- expect(@knife.ui).to receive(:edit_data).with(@role, object_class: Chef::Role).and_return(pansy)
51
- expect(pansy).to receive(:save)
52
- @knife.run
53
- end
54
-
55
- it "should not save the unedited role data" do
56
- pansy = Chef::Role.new
57
-
58
- expect(@knife.ui).to receive(:edit_data).with(@role, object_class: Chef::Role).and_return(pansy)
59
- expect(pansy).not_to receive(:save)
60
- @knife.run
61
-
62
- end
63
-
64
- it "should not print the role" do
65
- expect(@knife.ui).not_to receive(:output)
66
- @knife.run
67
- end
68
-
69
- describe "with -p or --print-after" do
70
- it "should pretty print the role, formatted for display" do
71
- @knife.config[:print_after] = true
72
- expect(@knife.ui).to receive(:output).with(@role)
73
- @knife.run
74
- end
75
- end
76
- end
77
- end
@@ -1,217 +0,0 @@
1
- #
2
- # Author:: Adam Jacob (<adam@chef.io>)
3
- # Author:: Will Albenzi (<walbenzi@gmail.com>)
4
- # Copyright:: Copyright (c) Chef Software Inc.
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 "spec_helper"
21
-
22
- describe Chef::Knife::RoleEnvRunListAdd do
23
- before(:each) do
24
- # Chef::Config[:role_name] = "websimian"
25
- # Chef::Config[:env_name] = "QA"
26
- @knife = Chef::Knife::RoleEnvRunListAdd.new
27
- @knife.config = {
28
- after: nil,
29
- }
30
- @knife.name_args = [ "will", "QA", "role[monkey]" ]
31
- allow(@knife).to receive(:output).and_return(true)
32
- @role = Chef::Role.new
33
- allow(@role).to receive(:save).and_return(true)
34
- allow(Chef::Role).to receive(:load).and_return(@role)
35
- end
36
-
37
- describe "run" do
38
-
39
- # it "should display all the things" do
40
- # @knife.run
41
- # @role.to_json.should == 'show all the things'
42
- # end
43
-
44
- it "should have an empty default run list" do
45
- @knife.run
46
- expect(@role.run_list[0]).to be_nil
47
- end
48
-
49
- it "should have a QA environment" do
50
- @knife.run
51
- expect(@role.active_run_list_for("QA")).to eq("QA")
52
- end
53
-
54
- it "should load the role named will" do
55
- expect(Chef::Role).to receive(:load).with("will")
56
- @knife.run
57
- end
58
-
59
- it "should be able to add an environment specific run list" do
60
- @knife.run
61
- expect(@role.run_list_for("QA")[0]).to eq("role[monkey]")
62
- end
63
-
64
- it "should save the role" do
65
- expect(@role).to receive(:save)
66
- @knife.run
67
- end
68
-
69
- it "should print the run list" do
70
- expect(@knife).to receive(:output).and_return(true)
71
- @knife.run
72
- end
73
-
74
- describe "with -a or --after specified" do
75
- it "should not create a change if the specified 'after' never comes" do
76
- @role.run_list_for("_default") << "role[acorns]"
77
- @role.run_list_for("_default") << "role[barn]"
78
- @knife.config[:after] = "role[acorns]"
79
- @knife.name_args = [ "will", "QA", "role[pad]" ]
80
- @knife.run
81
- expect(@role.run_list_for("QA")[0]).to be_nil
82
- expect(@role.run_list[0]).to eq("role[acorns]")
83
- expect(@role.run_list[1]).to eq("role[barn]")
84
- expect(@role.run_list[2]).to be_nil
85
- end
86
-
87
- it "should add to the run list after the specified entries in the QA run list" do
88
- # Setup
89
- @role.run_list_for("_default") << "role[acorns]"
90
- @role.run_list_for("_default") << "role[barn]"
91
- @knife.run
92
- @role.run_list_for("QA") << "role[pencil]"
93
- @role.run_list_for("QA") << "role[pen]"
94
- # Configuration we are testing
95
- @knife.config[:after] = "role[pencil]"
96
- @knife.name_args = [ "will", "QA", "role[pad]", "role[whackadoo]" ]
97
- @knife.run
98
- # The actual tests
99
- expect(@role.run_list_for("QA")[0]).to eq("role[monkey]")
100
- expect(@role.run_list_for("QA")[1]).to eq("role[pencil]")
101
- expect(@role.run_list_for("QA")[2]).to eq("role[pad]")
102
- expect(@role.run_list_for("QA")[3]).to eq("role[whackadoo]")
103
- expect(@role.run_list_for("QA")[4]).to eq("role[pen]")
104
- expect(@role.run_list[0]).to eq("role[acorns]")
105
- expect(@role.run_list[1]).to eq("role[barn]")
106
- expect(@role.run_list[2]).to be_nil
107
- end
108
- end
109
-
110
- describe "with more than one role or recipe" do
111
- it "should add to the QA run list all the entries" do
112
- @knife.name_args = [ "will", "QA", "role[monkey],role[duck]" ]
113
- @role.run_list_for("_default") << "role[acorns]"
114
- @knife.run
115
- expect(@role.run_list_for("QA")[0]).to eq("role[monkey]")
116
- expect(@role.run_list_for("QA")[1]).to eq("role[duck]")
117
- expect(@role.run_list[0]).to eq("role[acorns]")
118
- expect(@role.run_list[1]).to be_nil
119
- end
120
- end
121
-
122
- describe "with more than one role or recipe with space between items" do
123
- it "should add to the run list all the entries" do
124
- @knife.name_args = [ "will", "QA", "role[monkey], role[duck]" ]
125
- @role.run_list_for("_default") << "role[acorns]"
126
- @knife.run
127
- expect(@role.run_list_for("QA")[0]).to eq("role[monkey]")
128
- expect(@role.run_list_for("QA")[1]).to eq("role[duck]")
129
- expect(@role.run_list[0]).to eq("role[acorns]")
130
- expect(@role.run_list[1]).to be_nil
131
- end
132
- end
133
-
134
- describe "with more than one role or recipe as different arguments" do
135
- it "should add to the run list all the entries" do
136
- @knife.name_args = [ "will", "QA", "role[monkey]", "role[duck]" ]
137
- @role.run_list_for("_default") << "role[acorns]"
138
- @knife.run
139
- expect(@role.run_list_for("QA")[0]).to eq("role[monkey]")
140
- expect(@role.run_list_for("QA")[1]).to eq("role[duck]")
141
- expect(@role.run_list[0]).to eq("role[acorns]")
142
- expect(@role.run_list[1]).to be_nil
143
- end
144
- end
145
-
146
- describe "with more than one role or recipe as different arguments and list separated by comas" do
147
- it "should add to the run list all the entries" do
148
- @knife.name_args = [ "will", "QA", "role[monkey]", "role[duck],recipe[bird::fly]" ]
149
- @role.run_list_for("_default") << "role[acorns]"
150
- @knife.run
151
- expect(@role.run_list_for("QA")[0]).to eq("role[monkey]")
152
- expect(@role.run_list_for("QA")[1]).to eq("role[duck]")
153
- expect(@role.run_list_for("QA")[2]).to eq("recipe[bird::fly]")
154
- expect(@role.run_list[0]).to eq("role[acorns]")
155
- expect(@role.run_list[1]).to be_nil
156
- end
157
- end
158
-
159
- describe "Recipe with version number is allowed" do
160
- it "should add to the run list all the entries including the versioned recipe" do
161
- @knife.name_args = [ "will", "QA", "role[monkey]", "role[duck],recipe[bird::fly@1.1.3]" ]
162
- @role.run_list_for("_default") << "role[acorns]"
163
- @knife.run
164
- expect(@role.run_list_for("QA")[0]).to eq("role[monkey]")
165
- expect(@role.run_list_for("QA")[1]).to eq("role[duck]")
166
- expect(@role.run_list_for("QA")[2]).to eq("recipe[bird::fly@1.1.3]")
167
- expect(@role.run_list[0]).to eq("role[acorns]")
168
- expect(@role.run_list[1]).to be_nil
169
- end
170
- end
171
-
172
- describe "with one role or recipe but with an extraneous comma" do
173
- it "should add to the run list one item" do
174
- @role.run_list_for("_default") << "role[acorns]"
175
- @knife.name_args = [ "will", "QA", "role[monkey]," ]
176
- @knife.run
177
- expect(@role.run_list_for("QA")[0]).to eq("role[monkey]")
178
- expect(@role.run_list_for("QA")[1]).to be_nil
179
- expect(@role.run_list[0]).to eq("role[acorns]")
180
- expect(@role.run_list[1]).to be_nil
181
- end
182
- end
183
-
184
- describe "with more than one command" do
185
- it "should be able to the environment run list by running multiple knife commands" do
186
- @knife.name_args = [ "will", "QA", "role[blue]," ]
187
- @knife.run
188
- @knife.name_args = [ "will", "QA", "role[black]," ]
189
- @knife.run
190
- expect(@role.run_list_for("QA")[0]).to eq("role[blue]")
191
- expect(@role.run_list_for("QA")[1]).to eq("role[black]")
192
- expect(@role.run_list[0]).to be_nil
193
- end
194
- end
195
-
196
- describe "with more than one environment" do
197
- it "should add to the run list a second environment in the specific run list" do
198
- @role.run_list_for("_default") << "role[acorns]"
199
- @knife.name_args = [ "will", "QA", "role[blue]," ]
200
- @knife.run
201
- @role.run_list_for("QA") << "role[walnuts]"
202
-
203
- @knife.name_args = [ "will", "PRD", "role[ball]," ]
204
- @knife.run
205
- @role.run_list_for("PRD") << "role[pen]"
206
-
207
- expect(@role.run_list_for("QA")[0]).to eq("role[blue]")
208
- expect(@role.run_list_for("PRD")[0]).to eq("role[ball]")
209
- expect(@role.run_list_for("QA")[1]).to eq("role[walnuts]")
210
- expect(@role.run_list_for("PRD")[1]).to eq("role[pen]")
211
- expect(@role.run_list[0]).to eq("role[acorns]")
212
- expect(@role.run_list[1]).to be_nil
213
- end
214
- end
215
-
216
- end
217
- end
@@ -1,94 +0,0 @@
1
- #
2
- # Author:: Adam Jacob (<adam@chef.io>)
3
- # Author:: Will Albenzi (<walbenzi@gmail.com>)
4
- # Copyright:: Copyright (c) Chef Software Inc.
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 "spec_helper"
21
-
22
- describe Chef::Knife::RoleEnvRunListClear do
23
- before(:each) do
24
- Chef::Config[:role_name] = "will"
25
- Chef::Config[:env_name] = "QA"
26
- @setup = Chef::Knife::RoleEnvRunListAdd.new
27
- @setup.name_args = [ "will", "QA", "role[monkey]", "role[person]" ]
28
-
29
- @knife = Chef::Knife::RoleEnvRunListClear.new
30
- @knife.config = {
31
- print_after: nil,
32
- }
33
- @knife.name_args = %w{will QA}
34
- allow(@knife).to receive(:output).and_return(true)
35
-
36
- @role = Chef::Role.new
37
- @role.name("will")
38
- allow(@role).to receive(:save).and_return(true)
39
-
40
- allow(@knife.ui).to receive(:confirm).and_return(true)
41
- allow(Chef::Role).to receive(:load).and_return(@role)
42
-
43
- end
44
-
45
- describe "run" do
46
-
47
- # it "should display all the things" do
48
- # @knife.run
49
- # @role.to_json.should == 'show all the things'
50
- # end
51
-
52
- it "should load the node" do
53
- expect(Chef::Role).to receive(:load).with("will").and_return(@role)
54
- @knife.run
55
- end
56
-
57
- it "should remove the item from the run list" do
58
- @setup.run
59
- @knife.run
60
- expect(@role.run_list_for("QA")[0]).to be_nil
61
- expect(@role.run_list[0]).to be_nil
62
- end
63
-
64
- it "should save the node" do
65
- expect(@role).to receive(:save).and_return(true)
66
- @knife.run
67
- end
68
-
69
- it "should print the run list" do
70
- expect(@knife).to receive(:output).and_return(true)
71
- @knife.config[:print_after] = true
72
- @setup.run
73
- @knife.run
74
- end
75
-
76
- describe "should clear an environmental run list of roles and recipes" do
77
- it "should remove the items from the run list" do
78
- @setup.name_args = [ "will", "QA", "recipe[orange::chicken]", "role[monkey]", "recipe[duck::type]", "role[person]", "role[bird]", "role[town]" ]
79
- @setup.run
80
- @setup.name_args = [ "will", "PRD", "recipe[orange::chicken]", "role[monkey]", "recipe[duck::type]", "role[person]", "role[bird]", "role[town]" ]
81
- @setup.run
82
- @knife.name_args = %w{will QA}
83
- @knife.run
84
- expect(@role.run_list_for("QA")[0]).to be_nil
85
- expect(@role.run_list_for("PRD")[0]).to eq("recipe[orange::chicken]")
86
- expect(@role.run_list_for("PRD")[1]).to eq("role[monkey]")
87
- expect(@role.run_list_for("PRD")[2]).to eq("recipe[duck::type]")
88
- expect(@role.run_list_for("PRD")[3]).to eq("role[person]")
89
- expect(@role.run_list_for("PRD")[4]).to eq("role[bird]")
90
- expect(@role.run_list_for("PRD")[5]).to eq("role[town]")
91
- end
92
- end
93
- end
94
- end
@@ -1,102 +0,0 @@
1
- #
2
- # Author:: Adam Jacob (<adam@chef.io>)
3
- # Author:: Will Albenzi (<walbenzi@gmail.com>)
4
- # Copyright:: Copyright (c) Chef Software Inc.
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 "spec_helper"
21
-
22
- describe Chef::Knife::RoleEnvRunListRemove do
23
- before(:each) do
24
- Chef::Config[:role_name] = "will"
25
- Chef::Config[:env_name] = "QA"
26
- @setup = Chef::Knife::RoleEnvRunListAdd.new
27
- @setup.name_args = [ "will", "QA", "role[monkey]", "role[person]" ]
28
-
29
- @knife = Chef::Knife::RoleEnvRunListRemove.new
30
- @knife.config = {
31
- print_after: nil,
32
- }
33
- @knife.name_args = [ "will", "QA", "role[monkey]" ]
34
- allow(@knife).to receive(:output).and_return(true)
35
-
36
- @role = Chef::Role.new
37
- @role.name("will")
38
- allow(@role).to receive(:save).and_return(true)
39
-
40
- allow(@knife.ui).to receive(:confirm).and_return(true)
41
- allow(Chef::Role).to receive(:load).and_return(@role)
42
-
43
- end
44
-
45
- describe "run" do
46
-
47
- # it "should display all the things" do
48
- # @knife.run
49
- # @role.to_json.should == 'show all the things'
50
- # end
51
-
52
- it "should load the node" do
53
- expect(Chef::Role).to receive(:load).with("will").and_return(@role)
54
- @knife.run
55
- end
56
-
57
- it "should remove the item from the run list" do
58
- @setup.run
59
- @knife.run
60
- expect(@role.run_list_for("QA")[0]).not_to eq("role[monkey]")
61
- expect(@role.run_list_for("QA")[0]).to eq("role[person]")
62
- expect(@role.run_list[0]).to be_nil
63
- end
64
-
65
- it "should save the node" do
66
- expect(@role).to receive(:save).and_return(true)
67
- @knife.run
68
- end
69
-
70
- it "should print the run list" do
71
- expect(@knife).to receive(:output).and_return(true)
72
- @knife.config[:print_after] = true
73
- @setup.run
74
- @knife.run
75
- end
76
-
77
- describe "run with a list of roles and recipes" do
78
- it "should remove the items from the run list" do
79
- @setup.name_args = [ "will", "QA", "recipe[orange::chicken]", "role[monkey]", "recipe[duck::type]", "role[person]", "role[bird]", "role[town]" ]
80
- @setup.run
81
- @setup.name_args = [ "will", "PRD", "recipe[orange::chicken]", "role[monkey]", "recipe[duck::type]", "role[person]", "role[bird]", "role[town]" ]
82
- @setup.run
83
- @knife.name_args = [ "will", "QA", "role[monkey]" ]
84
- @knife.run
85
- @knife.name_args = [ "will", "QA", "recipe[duck::type]" ]
86
- @knife.run
87
- expect(@role.run_list_for("QA")).not_to include("role[monkey]")
88
- expect(@role.run_list_for("QA")).not_to include("recipe[duck::type]")
89
- expect(@role.run_list_for("QA")[0]).to eq("recipe[orange::chicken]")
90
- expect(@role.run_list_for("QA")[1]).to eq("role[person]")
91
- expect(@role.run_list_for("QA")[2]).to eq("role[bird]")
92
- expect(@role.run_list_for("QA")[3]).to eq("role[town]")
93
- expect(@role.run_list_for("PRD")[0]).to eq("recipe[orange::chicken]")
94
- expect(@role.run_list_for("PRD")[1]).to eq("role[monkey]")
95
- expect(@role.run_list_for("PRD")[2]).to eq("recipe[duck::type]")
96
- expect(@role.run_list_for("PRD")[3]).to eq("role[person]")
97
- expect(@role.run_list_for("PRD")[4]).to eq("role[bird]")
98
- expect(@role.run_list_for("PRD")[5]).to eq("role[town]")
99
- end
100
- end
101
- end
102
- end