chef 12.19.36 → 14.14.25

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1719) hide show
  1. checksums.yaml +5 -5
  2. data/Gemfile +29 -52
  3. data/README.md +98 -167
  4. data/Rakefile +16 -48
  5. data/bin/chef-apply +0 -1
  6. data/bin/chef-client +1 -2
  7. data/{lib/chef/resource/timestamped_deploy.rb → bin/chef-resource-inspector} +11 -11
  8. data/bin/chef-shell +2 -5
  9. data/bin/chef-solo +1 -2
  10. data/bin/knife +1 -2
  11. data/chef-universal-mingw32.gemspec +6 -5
  12. data/chef.gemspec +14 -13
  13. data/lib/chef.rb +1 -2
  14. data/lib/chef/api_client.rb +21 -24
  15. data/lib/chef/api_client/registration.rb +16 -8
  16. data/lib/chef/api_client_v1.rb +32 -29
  17. data/lib/chef/application.rb +86 -66
  18. data/lib/chef/application/apply.rb +67 -60
  19. data/lib/chef/application/client.rb +228 -197
  20. data/lib/chef/application/exit_code.rb +11 -80
  21. data/lib/chef/application/knife.rb +81 -76
  22. data/lib/chef/application/solo.rb +139 -137
  23. data/lib/chef/application/windows_service.rb +32 -32
  24. data/lib/chef/application/windows_service_manager.rb +39 -39
  25. data/lib/chef/audit/audit_event_proxy.rb +7 -7
  26. data/lib/chef/audit/audit_reporter.rb +15 -15
  27. data/lib/chef/audit/control_group_data.rb +25 -19
  28. data/lib/chef/audit/runner.rb +3 -3
  29. data/lib/chef/blacklist.rb +81 -0
  30. data/lib/chef/chef_class.rb +17 -9
  31. data/lib/chef/chef_fs/chef_fs_data_store.rb +12 -12
  32. data/lib/chef/chef_fs/command_line.rb +20 -21
  33. data/lib/chef/chef_fs/config.rb +3 -3
  34. data/lib/chef/chef_fs/data_handler/acl_data_handler.rb +1 -1
  35. data/lib/chef/chef_fs/data_handler/data_bag_item_data_handler.rb +5 -0
  36. data/lib/chef/chef_fs/data_handler/data_handler_base.rb +11 -9
  37. data/lib/chef/chef_fs/data_handler/organization_invites_data_handler.rb +1 -1
  38. data/lib/chef/chef_fs/data_handler/policy_data_handler.rb +1 -1
  39. data/lib/chef/chef_fs/data_handler/policy_group_data_handler.rb +1 -1
  40. data/lib/chef/chef_fs/file_system/chef_server/acl_entry.rb +2 -2
  41. data/lib/chef/chef_fs/file_system/chef_server/acls_dir.rb +1 -1
  42. data/lib/chef/chef_fs/file_system/chef_server/chef_server_root_dir.rb +3 -3
  43. data/lib/chef/chef_fs/file_system/chef_server/cookbook_artifacts_dir.rb +6 -2
  44. data/lib/chef/chef_fs/file_system/chef_server/cookbook_dir.rb +16 -29
  45. data/lib/chef/chef_fs/file_system/chef_server/cookbook_file.rb +1 -1
  46. data/lib/chef/chef_fs/file_system/chef_server/cookbooks_dir.rb +6 -2
  47. data/lib/chef/chef_fs/file_system/chef_server/data_bag_dir.rb +1 -1
  48. data/lib/chef/chef_fs/file_system/chef_server/data_bags_dir.rb +2 -2
  49. data/lib/chef/chef_fs/file_system/chef_server/nodes_dir.rb +1 -1
  50. data/lib/chef/chef_fs/file_system/chef_server/organization_invites_entry.rb +2 -2
  51. data/lib/chef/chef_fs/file_system/chef_server/organization_members_entry.rb +2 -2
  52. data/lib/chef/chef_fs/file_system/chef_server/policies_dir.rb +5 -5
  53. data/lib/chef/chef_fs/file_system/chef_server/policy_group_entry.rb +2 -2
  54. data/lib/chef/chef_fs/file_system/chef_server/rest_list_dir.rb +3 -3
  55. data/lib/chef/chef_fs/file_system/chef_server/rest_list_entry.rb +17 -8
  56. data/lib/chef/chef_fs/file_system/chef_server/versioned_cookbooks_dir.rb +5 -1
  57. data/lib/chef/chef_fs/file_system/multiplexed_dir.rb +1 -1
  58. data/lib/chef/chef_fs/file_system/repository/acls_dir.rb +1 -1
  59. data/lib/chef/chef_fs/file_system/repository/base_file.rb +2 -2
  60. data/lib/chef/chef_fs/file_system/repository/chef_repository_file_system_cookbook_dir.rb +4 -5
  61. data/lib/chef/chef_fs/file_system/repository/chef_repository_file_system_cookbook_entry.rb +3 -3
  62. data/lib/chef/chef_fs/file_system/repository/chef_repository_file_system_root_dir.rb +4 -3
  63. data/lib/chef/chef_fs/file_system/repository/directory.rb +3 -3
  64. data/lib/chef/chef_fs/file_system/repository/file_system_entry.rb +3 -3
  65. data/lib/chef/chef_fs/file_system_cache.rb +1 -1
  66. data/lib/chef/chef_fs/knife.rb +6 -6
  67. data/lib/chef/chef_fs/parallelizer.rb +1 -1
  68. data/lib/chef/chef_fs/path_utils.rb +2 -2
  69. data/lib/chef/client.rb +113 -51
  70. data/lib/chef/config.rb +1 -2
  71. data/lib/chef/config_fetcher.rb +6 -6
  72. data/lib/chef/constants.rb +1 -1
  73. data/lib/chef/cookbook/chefignore.rb +5 -1
  74. data/lib/chef/cookbook/cookbook_collection.rb +4 -4
  75. data/lib/chef/cookbook/cookbook_version_loader.rb +1 -85
  76. data/lib/chef/cookbook/file_system_file_vendor.rb +2 -2
  77. data/lib/chef/cookbook/gem_installer.rb +28 -11
  78. data/lib/chef/cookbook/manifest_v0.rb +73 -0
  79. data/lib/chef/cookbook/manifest_v2.rb +45 -0
  80. data/lib/chef/cookbook/metadata.rb +73 -181
  81. data/lib/chef/cookbook/remote_file_vendor.rb +7 -7
  82. data/lib/chef/cookbook/synchronizer.rb +42 -28
  83. data/lib/chef/cookbook/syntax_check.rb +4 -4
  84. data/lib/chef/cookbook_loader.rb +15 -7
  85. data/lib/chef/cookbook_manifest.rb +107 -69
  86. data/lib/chef/cookbook_site_streaming_uploader.rb +14 -16
  87. data/lib/chef/cookbook_uploader.rb +8 -9
  88. data/lib/chef/cookbook_version.rb +75 -168
  89. data/lib/chef/data_bag.rb +13 -15
  90. data/lib/chef/data_bag_item.rb +11 -20
  91. data/lib/chef/data_collector.rb +113 -37
  92. data/lib/chef/data_collector/messages.rb +4 -2
  93. data/lib/chef/data_collector/messages/helpers.rb +2 -4
  94. data/lib/chef/data_collector/resource_report.rb +36 -8
  95. data/lib/chef/decorator/unchain.rb +0 -16
  96. data/lib/chef/deprecated.rb +143 -145
  97. data/lib/chef/deprecation/warnings.rb +3 -1
  98. data/lib/chef/dsl/audit.rb +1 -1
  99. data/lib/chef/dsl/data_query.rb +22 -8
  100. data/lib/chef/dsl/declare_resource.rb +40 -16
  101. data/lib/chef/dsl/definitions.rb +1 -1
  102. data/lib/chef/dsl/include_attribute.rb +3 -7
  103. data/lib/chef/dsl/include_recipe.rb +1 -5
  104. data/lib/chef/dsl/platform_introspection.rb +14 -13
  105. data/lib/chef/dsl/reboot_pending.rb +2 -9
  106. data/lib/chef/dsl/recipe.rb +2 -21
  107. data/lib/chef/dsl/resources.rb +3 -10
  108. data/lib/chef/dsl/universal.rb +11 -1
  109. data/lib/chef/encrypted_data_bag_item.rb +6 -4
  110. data/lib/chef/encrypted_data_bag_item/check_encrypted.rb +1 -1
  111. data/lib/chef/encrypted_data_bag_item/encryptor.rb +1 -1
  112. data/lib/chef/environment.rb +17 -22
  113. data/lib/chef/event_dispatch/base.rb +18 -2
  114. data/lib/chef/event_dispatch/dsl.rb +2 -2
  115. data/lib/chef/event_loggers/windows_eventlog.rb +21 -21
  116. data/lib/chef/exceptions.rb +25 -14
  117. data/lib/chef/file_access_control/unix.rb +14 -14
  118. data/lib/chef/file_access_control/windows.rb +5 -3
  119. data/lib/chef/file_cache.rb +18 -16
  120. data/lib/chef/file_content_management/content_base.rb +3 -1
  121. data/lib/chef/file_content_management/deploy/cp.rb +2 -2
  122. data/lib/chef/file_content_management/deploy/mv_unix.rb +9 -8
  123. data/lib/chef/file_content_management/deploy/mv_windows.rb +1 -1
  124. data/lib/chef/file_content_management/tempfile.rb +4 -4
  125. data/lib/chef/formatters/base.rb +10 -11
  126. data/lib/chef/formatters/doc.rb +15 -19
  127. data/lib/chef/formatters/error_description.rb +18 -1
  128. data/lib/chef/formatters/error_inspectors/api_error_formatting.rb +51 -51
  129. data/lib/chef/formatters/error_inspectors/compile_error_inspector.rb +3 -3
  130. data/lib/chef/formatters/error_inspectors/cookbook_resolve_error_inspector.rb +11 -11
  131. data/lib/chef/formatters/error_inspectors/cookbook_sync_error_inspector.rb +1 -1
  132. data/lib/chef/formatters/error_inspectors/node_load_error_inspector.rb +14 -14
  133. data/lib/chef/formatters/error_inspectors/registration_error_inspector.rb +40 -40
  134. data/lib/chef/formatters/error_inspectors/resource_failure_inspector.rb +1 -1
  135. data/lib/chef/formatters/error_inspectors/run_list_expansion_error_inspector.rb +17 -17
  136. data/lib/chef/formatters/indentable_output_stream.rb +17 -5
  137. data/lib/chef/guard_interpreter/default_guard_interpreter.rb +6 -2
  138. data/lib/chef/guard_interpreter/resource_guard_interpreter.rb +5 -5
  139. data/lib/chef/handler.rb +3 -5
  140. data/lib/chef/handler/json_file.rb +2 -3
  141. data/lib/chef/http.rb +75 -25
  142. data/lib/chef/http/api_versions.rb +7 -1
  143. data/lib/chef/http/auth_credentials.rb +7 -5
  144. data/lib/chef/http/authenticator.rb +27 -15
  145. data/lib/chef/http/basic_client.rb +16 -17
  146. data/lib/chef/http/cookie_manager.rb +1 -1
  147. data/lib/chef/http/decompressor.rb +6 -6
  148. data/lib/chef/http/http_request.rb +13 -10
  149. data/lib/chef/http/json_input.rb +1 -1
  150. data/lib/chef/http/json_output.rb +5 -2
  151. data/lib/chef/http/json_to_model_output.rb +1 -1
  152. data/lib/chef/http/socketless_chef_zero_client.rb +4 -3
  153. data/lib/chef/http/validate_content_length.rb +5 -5
  154. data/lib/chef/json_compat.rb +3 -95
  155. data/lib/chef/key.rb +17 -20
  156. data/lib/chef/knife.rb +57 -40
  157. data/lib/chef/knife/bootstrap.rb +174 -138
  158. data/lib/chef/knife/bootstrap/chef_vault_handler.rb +1 -1
  159. data/lib/chef/knife/bootstrap/client_builder.rb +2 -2
  160. data/lib/chef/knife/bootstrap/templates/chef-full.erb +15 -8
  161. data/lib/chef/knife/client_bulk_delete.rb +3 -4
  162. data/lib/chef/knife/client_create.rb +17 -18
  163. data/lib/chef/knife/client_delete.rb +4 -5
  164. data/lib/chef/knife/client_edit.rb +2 -3
  165. data/lib/chef/knife/client_key_create.rb +3 -0
  166. data/lib/chef/knife/client_key_delete.rb +1 -0
  167. data/lib/chef/knife/client_key_edit.rb +1 -0
  168. data/lib/chef/knife/client_key_list.rb +1 -0
  169. data/lib/chef/knife/client_key_show.rb +1 -0
  170. data/lib/chef/knife/client_list.rb +3 -4
  171. data/lib/chef/knife/client_reregister.rb +4 -5
  172. data/lib/chef/knife/client_show.rb +0 -1
  173. data/lib/chef/knife/config_get.rb +126 -0
  174. data/lib/chef/{provider/breakpoint.rb → knife/config_get_profile.rb} +13 -14
  175. data/lib/chef/knife/config_list_profiles.rb +121 -0
  176. data/lib/chef/knife/config_use_profile.rb +50 -0
  177. data/lib/chef/knife/configure.rb +39 -63
  178. data/lib/chef/knife/configure_client.rb +1 -3
  179. data/lib/chef/knife/cookbook_bulk_delete.rb +1 -1
  180. data/lib/chef/knife/cookbook_create.rb +1 -434
  181. data/lib/chef/knife/cookbook_delete.rb +5 -5
  182. data/lib/chef/knife/cookbook_download.rb +16 -17
  183. data/lib/chef/knife/cookbook_list.rb +6 -6
  184. data/lib/chef/knife/cookbook_metadata.rb +10 -11
  185. data/lib/chef/knife/cookbook_metadata_from_file.rb +1 -2
  186. data/lib/chef/knife/cookbook_show.rb +23 -19
  187. data/lib/chef/knife/cookbook_site_download.rb +9 -85
  188. data/lib/chef/knife/cookbook_site_install.rb +8 -164
  189. data/lib/chef/knife/cookbook_site_list.rb +9 -34
  190. data/lib/chef/knife/cookbook_site_search.rb +10 -23
  191. data/lib/chef/knife/cookbook_site_share.rb +9 -138
  192. data/lib/chef/knife/cookbook_site_show.rb +10 -36
  193. data/lib/chef/knife/cookbook_site_unshare.rb +9 -31
  194. data/lib/chef/knife/cookbook_test.rb +11 -11
  195. data/lib/chef/knife/cookbook_upload.rb +39 -39
  196. data/lib/chef/knife/core/bootstrap_context.rb +23 -17
  197. data/lib/chef/knife/core/cookbook_scm_repo.rb +1 -1
  198. data/lib/chef/knife/core/generic_presenter.rb +8 -9
  199. data/lib/chef/knife/core/hashed_command_loader.rb +2 -2
  200. data/lib/chef/knife/core/node_presenter.rb +38 -39
  201. data/lib/chef/knife/core/status_presenter.rb +45 -30
  202. data/lib/chef/knife/core/subcommand_loader.rb +5 -34
  203. data/lib/chef/knife/core/ui.rb +12 -4
  204. data/lib/chef/knife/data_bag_create.rb +6 -4
  205. data/lib/chef/knife/data_bag_edit.rb +1 -1
  206. data/lib/chef/knife/data_bag_from_file.rb +4 -5
  207. data/lib/chef/knife/data_bag_list.rb +3 -3
  208. data/lib/chef/knife/data_bag_secret_options.rb +14 -14
  209. data/lib/chef/knife/data_bag_show.rb +3 -3
  210. data/lib/chef/knife/delete.rb +31 -13
  211. data/lib/chef/knife/deps.rb +26 -10
  212. data/lib/chef/knife/diff.rb +30 -14
  213. data/lib/chef/knife/download.rb +39 -23
  214. data/lib/chef/knife/edit.rb +21 -5
  215. data/lib/chef/knife/environment_compare.rb +12 -12
  216. data/lib/chef/knife/environment_create.rb +3 -4
  217. data/lib/chef/knife/environment_delete.rb +0 -1
  218. data/lib/chef/knife/environment_edit.rb +0 -1
  219. data/lib/chef/knife/environment_from_file.rb +5 -3
  220. data/lib/chef/knife/environment_list.rb +3 -4
  221. data/lib/chef/knife/environment_show.rb +0 -1
  222. data/lib/chef/knife/exec.rb +10 -10
  223. data/lib/chef/knife/key_create.rb +4 -4
  224. data/lib/chef/knife/key_create_base.rb +12 -12
  225. data/lib/chef/knife/key_edit.rb +5 -5
  226. data/lib/chef/knife/key_edit_base.rb +15 -15
  227. data/lib/chef/knife/key_list.rb +3 -3
  228. data/lib/chef/knife/key_list_base.rb +9 -9
  229. data/lib/chef/knife/list.rb +37 -21
  230. data/lib/chef/knife/node_delete.rb +1 -1
  231. data/lib/chef/knife/node_edit.rb +4 -4
  232. data/lib/chef/knife/node_list.rb +3 -3
  233. data/lib/chef/knife/node_policy_set.rb +79 -0
  234. data/lib/chef/knife/node_run_list_add.rb +7 -7
  235. data/lib/chef/knife/node_run_list_remove.rb +1 -1
  236. data/lib/chef/knife/node_show.rb +6 -6
  237. data/lib/chef/knife/osc_user_create.rb +13 -13
  238. data/lib/chef/knife/osc_user_edit.rb +2 -2
  239. data/lib/chef/knife/osc_user_list.rb +3 -3
  240. data/lib/chef/knife/osc_user_reregister.rb +4 -4
  241. data/lib/chef/knife/raw.rb +40 -19
  242. data/lib/chef/knife/role_create.rb +3 -3
  243. data/lib/chef/knife/role_env_run_list_add.rb +5 -4
  244. data/lib/chef/knife/role_env_run_list_clear.rb +1 -1
  245. data/lib/chef/knife/role_env_run_list_remove.rb +3 -3
  246. data/lib/chef/knife/role_env_run_list_replace.rb +2 -1
  247. data/lib/chef/knife/role_env_run_list_set.rb +1 -1
  248. data/lib/chef/knife/role_list.rb +3 -3
  249. data/lib/chef/knife/role_run_list_add.rb +5 -4
  250. data/lib/chef/knife/role_run_list_clear.rb +1 -1
  251. data/lib/chef/knife/role_run_list_remove.rb +3 -4
  252. data/lib/chef/knife/role_run_list_replace.rb +2 -1
  253. data/lib/chef/knife/role_run_list_set.rb +1 -2
  254. data/lib/chef/knife/role_show.rb +2 -3
  255. data/lib/chef/knife/search.rb +36 -43
  256. data/lib/chef/knife/serve.rb +22 -6
  257. data/lib/chef/knife/show.rb +20 -4
  258. data/lib/chef/knife/ssh.rb +173 -130
  259. data/lib/chef/knife/ssl_check.rb +34 -34
  260. data/lib/chef/knife/ssl_fetch.rb +6 -6
  261. data/lib/chef/knife/status.rb +12 -12
  262. data/lib/chef/knife/supermarket_download.rb +95 -6
  263. data/lib/chef/knife/supermarket_install.rb +166 -6
  264. data/lib/chef/knife/supermarket_list.rb +38 -6
  265. data/lib/chef/knife/supermarket_search.rb +27 -7
  266. data/lib/chef/knife/supermarket_share.rb +139 -6
  267. data/lib/chef/knife/supermarket_show.rb +40 -6
  268. data/lib/chef/knife/supermarket_unshare.rb +35 -7
  269. data/lib/chef/knife/upload.rb +42 -26
  270. data/lib/chef/knife/user_create.rb +28 -27
  271. data/lib/chef/knife/user_delete.rb +9 -8
  272. data/lib/chef/knife/user_edit.rb +11 -10
  273. data/lib/chef/knife/user_key_create.rb +1 -0
  274. data/lib/chef/knife/user_key_delete.rb +1 -0
  275. data/lib/chef/knife/user_key_edit.rb +1 -0
  276. data/lib/chef/knife/user_key_list.rb +1 -0
  277. data/lib/chef/knife/user_key_show.rb +1 -0
  278. data/lib/chef/knife/user_list.rb +3 -4
  279. data/lib/chef/knife/user_reregister.rb +13 -12
  280. data/lib/chef/knife/user_show.rb +9 -8
  281. data/lib/chef/knife/xargs.rb +55 -39
  282. data/lib/chef/local_mode.rb +1 -0
  283. data/lib/chef/log.rb +10 -8
  284. data/lib/chef/log/winevt.rb +21 -21
  285. data/lib/chef/mash.rb +6 -0
  286. data/lib/chef/mixin/api_version_request_handling.rb +8 -10
  287. data/lib/chef/mixin/create_path.rb +1 -1
  288. data/lib/chef/mixin/deep_merge.rb +2 -2
  289. data/lib/chef/mixin/deprecation.rb +16 -16
  290. data/lib/chef/mixin/from_file.rb +5 -0
  291. data/lib/chef/mixin/get_source_from_package.rb +2 -2
  292. data/lib/chef/mixin/homebrew_user.rb +13 -2
  293. data/lib/chef/mixin/openssl_helper.rb +402 -0
  294. data/lib/chef/mixin/params_validate.rb +32 -23
  295. data/lib/chef/mixin/path_sanity.rb +17 -19
  296. data/lib/chef/mixin/powershell_exec.rb +105 -0
  297. data/lib/chef/mixin/powershell_out.rb +2 -2
  298. data/lib/chef/mixin/properties.rb +19 -2
  299. data/lib/chef/mixin/provides.rb +3 -2
  300. data/lib/chef/mixin/securable.rb +12 -16
  301. data/lib/chef/mixin/shell_out.rb +157 -110
  302. data/lib/chef/mixin/template.rb +15 -12
  303. data/lib/chef/mixin/user_context.rb +55 -0
  304. data/lib/chef/mixin/versioned_api.rb +16 -1
  305. data/lib/chef/mixin/which.rb +4 -2
  306. data/lib/chef/mixin/why_run.rb +6 -11
  307. data/lib/chef/mixin/wide_string.rb +5 -23
  308. data/lib/chef/mixin/windows_env_helper.rb +1 -1
  309. data/lib/chef/mixin/xml_escape.rb +3 -3
  310. data/lib/chef/mixins.rb +0 -1
  311. data/lib/chef/monkey_patches/net_http.rb +12 -8
  312. data/lib/chef/monologger.rb +2 -86
  313. data/lib/chef/node.rb +71 -60
  314. data/lib/chef/node/attribute.rb +277 -235
  315. data/lib/chef/node/attribute_collections.rb +4 -22
  316. data/lib/chef/node/immutable_collections.rb +54 -53
  317. data/lib/chef/node/mixin/deep_merge_cache.rb +1 -1
  318. data/lib/chef/node/mixin/immutablize_array.rb +117 -4
  319. data/lib/chef/node/mixin/immutablize_hash.rb +117 -6
  320. data/lib/chef/node_map.rb +142 -65
  321. data/lib/chef/null_logger.rb +7 -0
  322. data/lib/chef/org.rb +15 -18
  323. data/lib/chef/platform/provider_mapping.rb +1 -168
  324. data/lib/chef/platform/query_helpers.rb +0 -12
  325. data/lib/chef/platform/rebooter.rb +9 -5
  326. data/lib/chef/platform/service_helpers.rb +1 -1
  327. data/lib/chef/policy_builder/dynamic.rb +1 -1
  328. data/lib/chef/policy_builder/expand_node_object.rb +5 -31
  329. data/lib/chef/policy_builder/policyfile.rb +55 -10
  330. data/lib/chef/powershell.rb +57 -0
  331. data/lib/chef/property.rb +149 -145
  332. data/lib/chef/provider.rb +92 -140
  333. data/lib/chef/provider/apt_preference.rb +94 -0
  334. data/lib/chef/provider/apt_repository.rb +169 -62
  335. data/lib/chef/provider/apt_update.rb +9 -16
  336. data/lib/chef/provider/batch.rb +1 -1
  337. data/lib/chef/provider/cookbook_file.rb +0 -6
  338. data/lib/chef/provider/cookbook_file/content.rb +1 -1
  339. data/lib/chef/provider/cron.rb +35 -41
  340. data/lib/chef/provider/cron/unix.rb +5 -5
  341. data/lib/chef/provider/directory.rb +4 -8
  342. data/lib/chef/provider/dsc_resource.rb +8 -12
  343. data/lib/chef/provider/dsc_script.rb +22 -22
  344. data/lib/chef/provider/execute.rb +16 -14
  345. data/lib/chef/provider/file.rb +13 -23
  346. data/lib/chef/provider/git.rb +47 -24
  347. data/lib/chef/provider/group.rb +7 -13
  348. data/lib/chef/provider/group/aix.rb +8 -8
  349. data/lib/chef/provider/group/dscl.rb +11 -7
  350. data/lib/chef/provider/group/gpasswd.rb +4 -4
  351. data/lib/chef/provider/group/groupadd.rb +8 -8
  352. data/lib/chef/provider/group/groupmod.rb +9 -9
  353. data/lib/chef/provider/group/pw.rb +8 -8
  354. data/lib/chef/provider/group/suse.rb +2 -2
  355. data/lib/chef/provider/group/usermod.rb +1 -1
  356. data/lib/chef/provider/group/windows.rb +3 -2
  357. data/lib/chef/provider/http_request.rb +30 -20
  358. data/lib/chef/provider/ifconfig.rb +108 -50
  359. data/lib/chef/provider/ifconfig/aix.rb +3 -3
  360. data/lib/chef/provider/ifconfig/debian.rb +6 -3
  361. data/lib/chef/provider/ifconfig/redhat.rb +7 -1
  362. data/lib/chef/provider/launchd.rb +24 -1
  363. data/lib/chef/provider/link.rb +7 -11
  364. data/lib/chef/provider/log.rb +5 -19
  365. data/lib/chef/provider/lwrp_base.rb +2 -11
  366. data/lib/chef/provider/mdadm.rb +11 -19
  367. data/lib/chef/provider/mount.rb +22 -18
  368. data/lib/chef/provider/mount/aix.rb +70 -29
  369. data/lib/chef/provider/mount/mount.rb +48 -35
  370. data/lib/chef/provider/mount/solaris.rb +33 -29
  371. data/lib/chef/provider/mount/windows.rb +14 -14
  372. data/lib/chef/provider/noop.rb +2 -2
  373. data/lib/chef/provider/ohai.rb +1 -7
  374. data/lib/chef/provider/osx_profile.rb +12 -18
  375. data/lib/chef/provider/package.rb +117 -86
  376. data/lib/chef/provider/package/apt.rb +67 -19
  377. data/lib/chef/provider/package/{aix.rb → bff.rb} +21 -22
  378. data/lib/chef/provider/package/cab.rb +26 -18
  379. data/lib/chef/provider/package/chocolatey.rb +36 -26
  380. data/lib/chef/provider/package/dnf.rb +22 -11
  381. data/lib/chef/provider/package/dnf/dnf_helper.py +25 -2
  382. data/lib/chef/provider/package/dnf/python_helper.rb +23 -7
  383. data/lib/chef/provider/package/dpkg.rb +29 -13
  384. data/lib/chef/provider/package/freebsd/base.rb +4 -4
  385. data/lib/chef/provider/package/freebsd/pkg.rb +8 -8
  386. data/lib/chef/provider/package/freebsd/pkgng.rb +6 -6
  387. data/lib/chef/provider/package/freebsd/port.rb +4 -4
  388. data/lib/chef/provider/package/homebrew.rb +4 -4
  389. data/lib/chef/provider/package/ips.rb +7 -8
  390. data/lib/chef/provider/package/macports.rb +9 -9
  391. data/lib/chef/provider/package/msu.rb +5 -6
  392. data/lib/chef/provider/package/openbsd.rb +9 -9
  393. data/lib/chef/provider/package/pacman.rb +7 -8
  394. data/lib/chef/provider/package/paludis.rb +5 -5
  395. data/lib/chef/provider/package/portage.rb +31 -38
  396. data/lib/chef/provider/package/powershell.rb +29 -10
  397. data/lib/chef/provider/package/rpm.rb +20 -17
  398. data/lib/chef/provider/package/rubygems.rb +84 -58
  399. data/lib/chef/provider/package/smartos.rb +11 -11
  400. data/lib/chef/provider/package/solaris.rb +19 -20
  401. data/lib/chef/provider/package/windows.rb +55 -9
  402. data/lib/chef/provider/package/windows/exe.rb +6 -4
  403. data/lib/chef/provider/package/windows/msi.rb +9 -7
  404. data/lib/chef/provider/package/windows/registry_uninstall_entry.rb +22 -10
  405. data/lib/chef/provider/package/yum.rb +167 -414
  406. data/lib/chef/provider/package/yum/python_helper.rb +222 -0
  407. data/lib/chef/provider/package/yum/rpm_utils.rb +10 -1
  408. data/lib/chef/provider/package/yum/simplejson/LICENSE.txt +79 -0
  409. data/lib/chef/provider/package/yum/simplejson/__init__.py +318 -0
  410. data/lib/chef/provider/package/yum/simplejson/__init__.pyc +0 -0
  411. data/lib/chef/provider/package/yum/simplejson/decoder.py +354 -0
  412. data/lib/chef/provider/package/yum/simplejson/decoder.pyc +0 -0
  413. data/lib/chef/provider/package/yum/simplejson/encoder.py +440 -0
  414. data/lib/chef/provider/package/yum/simplejson/encoder.pyc +0 -0
  415. data/lib/chef/provider/package/yum/simplejson/scanner.py +65 -0
  416. data/lib/chef/provider/package/yum/simplejson/scanner.pyc +0 -0
  417. data/lib/chef/provider/package/yum/simplejson/tool.py +37 -0
  418. data/lib/chef/provider/package/yum/version.rb +56 -0
  419. data/lib/chef/provider/package/yum/yum_cache.rb +33 -316
  420. data/lib/chef/provider/package/yum/yum_helper.py +211 -0
  421. data/lib/chef/provider/package/zypper.rb +41 -37
  422. data/lib/chef/provider/powershell_script.rb +79 -79
  423. data/lib/chef/provider/reboot.rb +19 -11
  424. data/lib/chef/provider/registry_key.rb +29 -12
  425. data/lib/chef/provider/remote_directory.rb +2 -16
  426. data/lib/chef/provider/remote_file.rb +19 -6
  427. data/lib/chef/provider/remote_file/cache_control_data.rb +3 -3
  428. data/lib/chef/provider/remote_file/content.rb +5 -5
  429. data/lib/chef/provider/remote_file/fetcher.rb +3 -0
  430. data/lib/chef/provider/remote_file/http.rb +13 -5
  431. data/lib/chef/provider/remote_file/local_file.rb +1 -1
  432. data/lib/chef/provider/remote_file/network_file.rb +18 -5
  433. data/lib/chef/provider/remote_file/sftp.rb +1 -1
  434. data/lib/chef/provider/resource_update.rb +1 -1
  435. data/lib/chef/provider/route.rb +43 -26
  436. data/lib/chef/provider/ruby_block.rb +2 -6
  437. data/lib/chef/provider/script.rb +2 -2
  438. data/lib/chef/provider/service.rb +16 -23
  439. data/lib/chef/provider/service/aix.rb +4 -8
  440. data/lib/chef/provider/service/aixinit.rb +2 -2
  441. data/lib/chef/provider/service/debian.rb +36 -25
  442. data/lib/chef/provider/service/freebsd.rb +6 -7
  443. data/lib/chef/provider/service/gentoo.rb +2 -3
  444. data/lib/chef/provider/service/init.rb +5 -6
  445. data/lib/chef/provider/service/insserv.rb +5 -3
  446. data/lib/chef/provider/service/macosx.rb +17 -15
  447. data/lib/chef/provider/service/openbsd.rb +4 -5
  448. data/lib/chef/provider/service/redhat.rb +3 -3
  449. data/lib/chef/provider/service/simple.rb +12 -16
  450. data/lib/chef/provider/service/solaris.rb +11 -6
  451. data/lib/chef/provider/service/systemd.rb +19 -18
  452. data/lib/chef/provider/service/upstart.rb +23 -24
  453. data/lib/chef/provider/service/windows.rb +279 -104
  454. data/lib/chef/provider/subversion.rb +12 -18
  455. data/lib/chef/provider/support/yum_repo.erb +6 -0
  456. data/lib/chef/provider/support/zypper_repo.erb +17 -0
  457. data/lib/chef/provider/systemd_unit.rb +66 -45
  458. data/lib/chef/provider/template.rb +0 -6
  459. data/lib/chef/provider/template/content.rb +25 -2
  460. data/lib/chef/provider/user.rb +25 -24
  461. data/lib/chef/provider/user/aix.rb +47 -15
  462. data/lib/chef/provider/user/dscl.rb +16 -23
  463. data/lib/chef/provider/user/linux.rb +12 -21
  464. data/lib/chef/provider/user/pw.rb +14 -20
  465. data/lib/chef/provider/user/solaris.rb +61 -30
  466. data/lib/chef/provider/user/useradd.rb +18 -15
  467. data/lib/chef/provider/user/windows.rb +11 -10
  468. data/lib/chef/provider/whyrun_safe_ruby_block.rb +1 -1
  469. data/lib/chef/provider/{env.rb → windows_env.rb} +65 -27
  470. data/lib/chef/provider/windows_path.rb +61 -0
  471. data/lib/chef/provider/windows_task.rb +631 -0
  472. data/lib/chef/provider/yum_repository.rb +27 -17
  473. data/lib/chef/provider/zypper_repository.rb +169 -0
  474. data/lib/chef/provider_resolver.rb +12 -38
  475. data/lib/chef/providers.rb +7 -13
  476. data/lib/chef/recipe.rb +9 -7
  477. data/lib/chef/resource.rb +212 -245
  478. data/lib/chef/resource/action_class.rb +14 -18
  479. data/lib/chef/resource/apt_package.rb +11 -3
  480. data/lib/chef/resource/apt_preference.rb +52 -0
  481. data/lib/chef/resource/apt_repository.rb +57 -17
  482. data/lib/chef/resource/apt_update.rb +11 -3
  483. data/lib/chef/resource/bash.rb +1 -0
  484. data/lib/chef/resource/batch.rb +2 -1
  485. data/lib/chef/resource/bff_package.rb +5 -1
  486. data/lib/chef/resource/breakpoint.rb +15 -0
  487. data/lib/chef/resource/build_essential.rb +142 -0
  488. data/lib/chef/resource/cab_package.rb +8 -7
  489. data/lib/chef/resource/chef_gem.rb +20 -11
  490. data/lib/chef/resource/chef_handler.rb +132 -0
  491. data/lib/chef/resource/chocolatey_config.rb +83 -0
  492. data/lib/chef/resource/chocolatey_package.rb +20 -10
  493. data/lib/chef/resource/chocolatey_source.rb +95 -0
  494. data/lib/chef/resource/cookbook_file.rb +9 -13
  495. data/lib/chef/resource/cron.rb +29 -71
  496. data/lib/chef/resource/cron_access.rb +70 -0
  497. data/lib/chef/resource/cron_d.rb +238 -0
  498. data/lib/chef/resource/csh.rb +6 -0
  499. data/lib/chef/resource/directory.rb +13 -24
  500. data/lib/chef/resource/dmg_package.rb +171 -0
  501. data/lib/chef/resource/dnf_package.rb +34 -22
  502. data/lib/chef/resource/dpkg_package.rb +5 -2
  503. data/lib/chef/resource/dsc_resource.rb +14 -23
  504. data/lib/chef/resource/dsc_script.rb +24 -40
  505. data/lib/chef/resource/execute.rb +54 -89
  506. data/lib/chef/resource/file.rb +27 -10
  507. data/lib/chef/resource/file/verification.rb +17 -8
  508. data/lib/chef/resource/freebsd_package.rb +14 -3
  509. data/lib/chef/resource/gem_package.rb +29 -12
  510. data/lib/chef/resource/git.rb +4 -13
  511. data/lib/chef/resource/group.rb +24 -65
  512. data/lib/chef/resource/homebrew_cask.rb +100 -0
  513. data/lib/chef/resource/homebrew_package.rb +5 -1
  514. data/lib/chef/resource/homebrew_tap.rb +87 -0
  515. data/lib/chef/resource/hostname.rb +265 -0
  516. data/lib/chef/resource/http_request.rb +11 -22
  517. data/lib/chef/resource/ifconfig.rb +71 -113
  518. data/lib/chef/resource/ips_package.rb +6 -2
  519. data/lib/chef/resource/kernel_module.rb +135 -0
  520. data/lib/chef/resource/ksh.rb +7 -0
  521. data/lib/chef/resource/launchd.rb +211 -115
  522. data/lib/chef/resource/link.rb +28 -42
  523. data/lib/chef/resource/locale.rb +94 -0
  524. data/lib/chef/resource/log.rb +21 -45
  525. data/lib/chef/resource/lwrp_base.rb +8 -9
  526. data/lib/chef/resource/macos_userdefaults.rb +132 -0
  527. data/lib/chef/resource/macosx_service.rb +8 -25
  528. data/lib/chef/resource/macports_package.rb +2 -0
  529. data/lib/chef/resource/mdadm.rb +28 -73
  530. data/lib/chef/resource/mount.rb +45 -136
  531. data/lib/chef/resource/msu_package.rb +16 -14
  532. data/lib/chef/resource/ohai.rb +10 -2
  533. data/lib/chef/resource/ohai_hint.rb +95 -0
  534. data/lib/chef/resource/openbsd_package.rb +3 -0
  535. data/lib/chef/resource/openssl_dhparam.rb +77 -0
  536. data/lib/chef/resource/openssl_ec_private_key.rb +93 -0
  537. data/lib/chef/resource/openssl_ec_public_key.rb +75 -0
  538. data/lib/chef/resource/openssl_rsa_private_key.rb +91 -0
  539. data/lib/chef/resource/openssl_rsa_public_key.rb +74 -0
  540. data/lib/chef/resource/openssl_x509_certificate.rb +221 -0
  541. data/lib/chef/resource/openssl_x509_crl.rb +132 -0
  542. data/lib/chef/resource/openssl_x509_request.rb +151 -0
  543. data/lib/chef/resource/osx_profile.rb +14 -40
  544. data/lib/chef/resource/package.rb +33 -7
  545. data/lib/chef/resource/pacman_package.rb +3 -1
  546. data/lib/chef/resource/paludis_package.rb +8 -3
  547. data/lib/chef/resource/perl.rb +6 -0
  548. data/lib/chef/resource/portage_package.rb +6 -5
  549. data/lib/chef/resource/powershell_package.rb +18 -7
  550. data/lib/chef/resource/powershell_package_source.rb +169 -0
  551. data/lib/chef/resource/powershell_script.rb +12 -3
  552. data/lib/chef/resource/python.rb +5 -0
  553. data/lib/chef/resource/reboot.rb +16 -18
  554. data/lib/chef/resource/registry_key.rb +16 -30
  555. data/lib/chef/resource/remote_directory.rb +13 -48
  556. data/lib/chef/resource/remote_file.rb +70 -47
  557. data/lib/chef/resource/resource_notification.rb +47 -26
  558. data/lib/chef/resource/rhsm_errata.rb +46 -0
  559. data/lib/chef/resource/rhsm_errata_level.rb +51 -0
  560. data/lib/chef/resource/rhsm_register.rb +168 -0
  561. data/lib/chef/resource/rhsm_repo.rb +65 -0
  562. data/lib/chef/resource/rhsm_subscription.rb +98 -0
  563. data/lib/chef/resource/route.rb +16 -107
  564. data/lib/chef/resource/rpm_package.rb +3 -2
  565. data/lib/chef/resource/ruby.rb +6 -0
  566. data/lib/chef/resource/ruby_block.rb +6 -14
  567. data/lib/chef/resource/scm.rb +42 -146
  568. data/lib/chef/resource/script.rb +15 -35
  569. data/lib/chef/resource/service.rb +34 -30
  570. data/lib/chef/resource/smartos_package.rb +4 -2
  571. data/lib/chef/resource/solaris_package.rb +3 -1
  572. data/lib/chef/resource/ssh_known_hosts_entry.rb +146 -0
  573. data/lib/chef/resource/subversion.rb +21 -10
  574. data/lib/chef/resource/sudo.rb +230 -0
  575. data/lib/chef/resource/support/cron.d.erb +28 -0
  576. data/lib/chef/resource/support/cron_access.erb +4 -0
  577. data/lib/chef/resource/support/ssh_known_hosts.erb +3 -0
  578. data/lib/chef/resource/support/sudoer.erb +18 -0
  579. data/lib/chef/resource/swap_file.rb +209 -0
  580. data/lib/chef/resource/sysctl.rb +151 -0
  581. data/lib/chef/resource/systemd_unit.rb +34 -11
  582. data/lib/chef/resource/template.rb +22 -26
  583. data/lib/chef/resource/timezone.rb +135 -0
  584. data/lib/chef/resource/user.rb +19 -34
  585. data/lib/chef/resource/user/aix_user.rb +1 -1
  586. data/lib/chef/resource/user/dscl_user.rb +1 -1
  587. data/lib/chef/resource/user/linux_user.rb +1 -10
  588. data/lib/chef/resource/user/pw_user.rb +1 -1
  589. data/lib/chef/resource/user/solaris_user.rb +1 -1
  590. data/lib/chef/resource/user/windows_user.rb +5 -1
  591. data/lib/chef/resource/windows_ad_join.rb +120 -0
  592. data/lib/chef/resource/windows_auto_run.rb +87 -0
  593. data/lib/chef/resource/windows_certificate.rb +332 -0
  594. data/lib/chef/resource/windows_env.rb +49 -0
  595. data/lib/chef/resource/windows_feature.rb +90 -0
  596. data/lib/chef/resource/windows_feature_dism.rb +222 -0
  597. data/lib/chef/resource/windows_feature_powershell.rb +262 -0
  598. data/lib/chef/resource/windows_firewall_rule.rb +205 -0
  599. data/lib/chef/resource/windows_font.rb +125 -0
  600. data/lib/chef/resource/windows_package.rb +8 -2
  601. data/lib/chef/resource/windows_pagefile.rb +206 -0
  602. data/lib/chef/resource/{easy_install_package.rb → windows_path.rb} +14 -8
  603. data/lib/chef/resource/windows_printer.rb +146 -0
  604. data/lib/chef/resource/windows_printer_port.rb +136 -0
  605. data/lib/chef/resource/windows_script.rb +1 -1
  606. data/lib/chef/resource/windows_service.rb +86 -36
  607. data/lib/chef/resource/windows_share.rb +324 -0
  608. data/lib/chef/resource/windows_shortcut.rb +79 -0
  609. data/lib/chef/resource/windows_task.rb +349 -0
  610. data/lib/chef/resource/windows_workgroup.rb +112 -0
  611. data/lib/chef/resource/yum_package.rb +40 -24
  612. data/lib/chef/resource/yum_repository.rb +154 -45
  613. data/lib/chef/resource/zypper_package.rb +16 -0
  614. data/lib/chef/resource/zypper_repository.rb +103 -0
  615. data/lib/chef/resource_builder.rb +1 -65
  616. data/lib/chef/resource_collection.rb +19 -2
  617. data/lib/chef/resource_collection/resource_collection_serialization.rb +12 -3
  618. data/lib/chef/resource_collection/resource_list.rb +6 -0
  619. data/lib/chef/resource_collection/resource_set.rb +43 -16
  620. data/lib/chef/resource_definition.rb +1 -1
  621. data/lib/chef/resource_inspector.rb +108 -0
  622. data/lib/chef/resource_reporter.rb +9 -10
  623. data/lib/chef/resource_resolver.rb +5 -29
  624. data/lib/chef/resources.rb +53 -7
  625. data/lib/chef/role.rb +14 -20
  626. data/lib/chef/run_context.rb +91 -64
  627. data/lib/chef/run_context/cookbook_compiler.rb +65 -12
  628. data/lib/chef/run_list/run_list_expansion.rb +12 -10
  629. data/lib/chef/run_list/run_list_item.rb +1 -1
  630. data/lib/chef/run_list/versioned_recipe_list.rb +11 -9
  631. data/lib/chef/run_status.rb +14 -12
  632. data/lib/chef/runner.rb +50 -9
  633. data/lib/chef/search/query.rb +32 -33
  634. data/lib/chef/server_api.rb +3 -0
  635. data/lib/chef/server_api_versions.rb +21 -2
  636. data/lib/chef/shell.rb +86 -60
  637. data/lib/chef/shell/ext.rb +151 -151
  638. data/lib/chef/shell/model_wrapper.rb +1 -1
  639. data/lib/chef/shell/shell_session.rb +22 -11
  640. data/lib/chef/user.rb +19 -22
  641. data/lib/chef/user_v1.rb +38 -41
  642. data/lib/chef/util/backup.rb +2 -2
  643. data/lib/chef/util/diff.rb +3 -3
  644. data/lib/chef/util/dsc/configuration_generator.rb +12 -12
  645. data/lib/chef/util/dsc/lcm_output_parser.rb +59 -4
  646. data/lib/chef/util/dsc/local_configuration_manager.rb +35 -25
  647. data/lib/chef/util/file_edit.rb +14 -14
  648. data/lib/chef/util/powershell/cmdlet.rb +5 -5
  649. data/lib/chef/util/selinux.rb +6 -5
  650. data/lib/chef/util/windows/logon_session.rb +129 -0
  651. data/lib/chef/util/windows/net_group.rb +7 -1
  652. data/lib/chef/util/windows/net_use.rb +3 -3
  653. data/lib/chef/util/windows/net_user.rb +24 -16
  654. data/lib/chef/util/windows/volume.rb +2 -6
  655. data/lib/chef/version.rb +5 -3
  656. data/lib/chef/version/platform.rb +18 -0
  657. data/lib/chef/version_constraint.rb +3 -3
  658. data/lib/chef/version_constraint/platform.rb +2 -0
  659. data/lib/chef/version_string.rb +143 -0
  660. data/lib/chef/whitelist.rb +1 -1
  661. data/lib/chef/win32/api.rb +6 -6
  662. data/lib/chef/win32/api/error.rb +4 -4
  663. data/lib/chef/win32/api/file.rb +13 -12
  664. data/lib/chef/win32/api/net.rb +75 -59
  665. data/lib/chef/win32/api/security.rb +16 -0
  666. data/lib/chef/win32/eventlog.rb +2 -2
  667. data/lib/chef/win32/file.rb +10 -0
  668. data/lib/chef/win32/mutex.rb +1 -1
  669. data/lib/chef/win32/net.rb +15 -0
  670. data/lib/chef/win32/registry.rb +25 -25
  671. data/lib/chef/win32/security.rb +68 -35
  672. data/lib/chef/win32/security/securable_object.rb +10 -10
  673. data/lib/chef/win32/security/sid.rb +45 -2
  674. data/lib/chef/win32/system.rb +0 -0
  675. data/lib/chef/win32/unicode.rb +6 -0
  676. data/lib/chef/win32/version.rb +26 -33
  677. data/lib/chef/win32_service_constants.rb +143 -0
  678. data/spec/data/client.d_00/02-strings.rb +2 -0
  679. data/spec/data/cookbooks/openldap/templates/default/openldap_nested_variable_stuff.erb +1 -0
  680. data/spec/data/lwrp/providers/buck_passer.rb +1 -1
  681. data/spec/data/lwrp/providers/buck_passer_2.rb +1 -1
  682. data/spec/data/lwrp/providers/embedded_resource_accesses_providers_scope.rb +1 -1
  683. data/spec/data/lwrp/providers/inline_compiler.rb +0 -2
  684. data/spec/data/lwrp/resources/buck_passer.rb +5 -0
  685. data/spec/data/lwrp/resources/buck_passer_2.rb +3 -0
  686. data/spec/data/lwrp/resources/embedded_resource_accesses_providers_scope.rb +3 -0
  687. data/spec/data/lwrp/resources/inline_compiler.rb +3 -0
  688. data/spec/data/lwrp/resources/monkey_name_printer.rb +5 -0
  689. data/spec/data/lwrp/resources/paint_drying_watcher.rb +3 -0
  690. data/spec/data/lwrp/resources/thumb_twiddler.rb +3 -0
  691. data/spec/data/mixin/invalid_data.rb +3 -0
  692. data/spec/data/mixin/real_data.rb +2 -0
  693. data/spec/data/root_alias_cookbooks/dup_attr/attributes.rb +1 -0
  694. data/spec/data/root_alias_cookbooks/dup_attr/attributes/default.rb +1 -0
  695. data/spec/data/root_alias_cookbooks/dup_attr/metadata.rb +2 -0
  696. data/spec/data/root_alias_cookbooks/dup_attr/recipe.rb +3 -0
  697. data/spec/data/root_alias_cookbooks/dup_recipe/attributes.rb +1 -0
  698. data/spec/data/root_alias_cookbooks/dup_recipe/metadata.rb +2 -0
  699. data/spec/data/root_alias_cookbooks/dup_recipe/recipe.rb +3 -0
  700. data/spec/data/root_alias_cookbooks/dup_recipe/recipes/default.rb +3 -0
  701. data/spec/data/root_alias_cookbooks/simple/attributes.rb +1 -0
  702. data/spec/data/root_alias_cookbooks/simple/metadata.rb +2 -0
  703. data/spec/data/root_alias_cookbooks/simple/recipe.rb +3 -0
  704. data/spec/data/shef-config.rb +11 -10
  705. data/spec/data/templates/failed.erb +5 -0
  706. data/spec/data/windows_certificates/base64_test.cer +22 -0
  707. data/spec/data/windows_certificates/othertest.cer +0 -0
  708. data/spec/data/windows_certificates/test.cer +0 -0
  709. data/spec/data/windows_certificates/test.p7b +0 -0
  710. data/spec/data/windows_certificates/test.pem +21 -0
  711. data/spec/data/windows_certificates/test.pfx +0 -0
  712. data/spec/functional/assets/chefinittest +6 -4
  713. data/spec/functional/assets/inittest +36 -0
  714. data/spec/functional/assets/yumrepo/chef_rpm-1.10-1.aarch64.rpm +0 -0
  715. data/spec/functional/assets/yumrepo/chef_rpm-1.10-1.i686.rpm +0 -0
  716. data/spec/functional/assets/yumrepo/chef_rpm-1.10-1.ppc64.rpm +0 -0
  717. data/spec/functional/assets/yumrepo/chef_rpm-1.10-1.ppc64le.rpm +0 -0
  718. data/spec/functional/assets/yumrepo/chef_rpm-1.10-1.s390x.rpm +0 -0
  719. data/spec/functional/assets/yumrepo/chef_rpm-1.10-1.src.rpm +0 -0
  720. data/spec/functional/assets/yumrepo/chef_rpm-1.10-1.x86_64.rpm +0 -0
  721. data/spec/functional/assets/yumrepo/chef_rpm-1.2-1.aarch64.rpm +0 -0
  722. data/spec/functional/assets/yumrepo/chef_rpm-1.2-1.i686.rpm +0 -0
  723. data/spec/functional/assets/yumrepo/chef_rpm-1.2-1.ppc64.rpm +0 -0
  724. data/spec/functional/assets/yumrepo/chef_rpm-1.2-1.ppc64le.rpm +0 -0
  725. data/spec/functional/assets/yumrepo/chef_rpm-1.2-1.s390x.rpm +0 -0
  726. data/spec/functional/assets/yumrepo/chef_rpm-1.2-1.src.rpm +0 -0
  727. data/spec/functional/assets/yumrepo/chef_rpm-1.2-1.x86_64.rpm +0 -0
  728. data/spec/functional/assets/yumrepo/repodata/4632d67cb92636e7575d911c24f0e04d3505a944e97c483abe0c3e73a7c62d33-filelists.sqlite.bz2 +0 -0
  729. data/spec/functional/assets/yumrepo/repodata/74599b793e54d877323837d2d81a1c3c594c44e4335f9528234bb490f7b9b439-other.xml.gz +0 -0
  730. data/spec/functional/assets/yumrepo/repodata/a845d418f919d2115ab95a56b2c76f6825ad0d0bede49181a55c04f58995d057-primary.sqlite.bz2 +0 -0
  731. data/spec/functional/assets/yumrepo/repodata/af9b7cf9ef23bd7b43068d74a460f3b5d06753d638e58e4a0c9edc35bfb9cdc4-other.sqlite.bz2 +0 -0
  732. data/spec/functional/assets/yumrepo/repodata/bdb4f5f1492a3b9532f22c43110a81500dd744f23da0aec5c33b2a41317c737d-filelists.xml.gz +0 -0
  733. data/spec/functional/assets/yumrepo/repodata/c10d1d34ce99e02f12ec96ef68360543ab1bb7c3cb81a4a2bf78df7d8597e9df-primary.xml.gz +0 -0
  734. data/spec/functional/assets/yumrepo/repodata/filelists.xml.gz +0 -0
  735. data/spec/functional/assets/yumrepo/repodata/other.xml.gz +0 -0
  736. data/spec/functional/assets/yumrepo/repodata/primary.xml.gz +0 -0
  737. data/spec/functional/assets/yumrepo/repodata/repomd.xml +19 -53
  738. data/spec/functional/assets/zypprepo/chef_rpm-1.10-1.aarch64.rpm +0 -0
  739. data/spec/functional/assets/zypprepo/chef_rpm-1.10-1.i686.rpm +0 -0
  740. data/spec/functional/assets/zypprepo/chef_rpm-1.10-1.ppc64.rpm +0 -0
  741. data/spec/functional/assets/zypprepo/chef_rpm-1.10-1.ppc64le.rpm +0 -0
  742. data/spec/functional/assets/zypprepo/chef_rpm-1.10-1.s390x.rpm +0 -0
  743. data/spec/functional/assets/zypprepo/chef_rpm-1.10-1.src.rpm +0 -0
  744. data/spec/functional/assets/zypprepo/chef_rpm-1.10-1.x86_64.rpm +0 -0
  745. data/spec/functional/assets/zypprepo/chef_rpm-1.2-1.aarch64.rpm +0 -0
  746. data/spec/functional/assets/zypprepo/chef_rpm-1.2-1.i686.rpm +0 -0
  747. data/spec/functional/assets/zypprepo/chef_rpm-1.2-1.ppc64.rpm +0 -0
  748. data/spec/functional/assets/zypprepo/chef_rpm-1.2-1.ppc64le.rpm +0 -0
  749. data/spec/functional/assets/zypprepo/chef_rpm-1.2-1.s390x.rpm +0 -0
  750. data/spec/functional/assets/zypprepo/chef_rpm-1.2-1.src.rpm +0 -0
  751. data/spec/functional/assets/zypprepo/chef_rpm-1.2-1.x86_64.rpm +0 -0
  752. data/spec/functional/audit/rspec_formatter_spec.rb +1 -1
  753. data/spec/functional/audit/runner_spec.rb +1 -1
  754. data/spec/functional/dsl/reboot_pending_spec.rb +3 -3
  755. data/spec/functional/dsl/registry_helper_spec.rb +3 -3
  756. data/spec/functional/event_loggers/windows_eventlog_spec.rb +2 -2
  757. data/spec/functional/http/simple_spec.rb +25 -19
  758. data/spec/functional/knife/exec_spec.rb +1 -1
  759. data/spec/functional/knife/ssh_spec.rb +84 -9
  760. data/spec/functional/mixin/from_file_spec.rb +82 -0
  761. data/spec/functional/mixin/powershell_out_spec.rb +3 -3
  762. data/spec/functional/mixin/shell_out_spec.rb +33 -3
  763. data/spec/functional/mixin/user_context_spec.rb +117 -0
  764. data/spec/functional/notifications_spec.rb +1 -1
  765. data/spec/functional/rebooter_spec.rb +27 -15
  766. data/spec/functional/resource/aixinit_service_spec.rb +2 -2
  767. data/spec/functional/resource/{package_spec.rb → apt_package_spec.rb} +21 -21
  768. data/spec/functional/resource/bash_spec.rb +12 -46
  769. data/spec/functional/resource/bff_spec.rb +4 -4
  770. data/spec/functional/resource/chocolatey_package_spec.rb +1 -8
  771. data/spec/functional/resource/cron_spec.rb +3 -3
  772. data/spec/functional/resource/dnf_package_spec.rb +128 -128
  773. data/spec/functional/resource/dsc_resource_spec.rb +3 -3
  774. data/spec/functional/resource/dsc_script_spec.rb +95 -95
  775. data/spec/functional/resource/execute_spec.rb +5 -5
  776. data/spec/functional/resource/file_spec.rb +1 -1
  777. data/spec/functional/resource/git_spec.rb +19 -19
  778. data/spec/functional/resource/group_spec.rb +44 -29
  779. data/spec/functional/resource/ifconfig_spec.rb +8 -7
  780. data/spec/functional/resource/insserv_spec.rb +206 -0
  781. data/spec/functional/resource/link_spec.rb +15 -19
  782. data/spec/functional/resource/mount_spec.rb +10 -6
  783. data/spec/functional/resource/msu_package_spec.rb +14 -0
  784. data/spec/functional/resource/powershell_script_spec.rb +15 -17
  785. data/spec/functional/resource/reboot_spec.rb +3 -3
  786. data/spec/functional/resource/registry_spec.rb +86 -86
  787. data/spec/functional/resource/remote_file_spec.rb +190 -15
  788. data/spec/functional/resource/rpm_spec.rb +2 -2
  789. data/spec/functional/resource/template_spec.rb +35 -2
  790. data/{lib/chef/knife/cookbook_site_vendor.rb → spec/functional/resource/timezone_spec.rb} +15 -22
  791. data/spec/functional/resource/user/dscl_spec.rb +2 -3
  792. data/spec/functional/resource/user/windows_spec.rb +131 -19
  793. data/spec/functional/resource/windows_certificate_spec.rb +492 -0
  794. data/spec/functional/resource/windows_env_spec.rb +285 -0
  795. data/spec/functional/resource/windows_path_spec.rb +64 -0
  796. data/spec/functional/resource/windows_service_spec.rb +1 -1
  797. data/spec/functional/resource/windows_task_spec.rb +1917 -0
  798. data/spec/functional/resource/yum_package_spec.rb +959 -0
  799. data/spec/functional/resource/zypper_package_spec.rb +233 -0
  800. data/spec/functional/root_alias_spec.rb +78 -0
  801. data/spec/functional/run_lock_spec.rb +4 -4
  802. data/spec/functional/shell_spec.rb +39 -41
  803. data/spec/functional/util/powershell/cmdlet_spec.rb +9 -9
  804. data/spec/functional/version_spec.rb +1 -1
  805. data/spec/functional/win32/crypto_spec.rb +10 -10
  806. data/spec/functional/win32/registry_spec.rb +66 -66
  807. data/spec/functional/win32/security_spec.rb +113 -7
  808. data/spec/functional/win32/versions_spec.rb +7 -9
  809. data/spec/integration/client/client_spec.rb +384 -187
  810. data/spec/integration/client/exit_code_spec.rb +21 -124
  811. data/spec/integration/client/ipv6_spec.rb +37 -37
  812. data/spec/integration/knife/chef_fs_data_store_spec.rb +130 -130
  813. data/spec/integration/knife/chef_repo_path_spec.rb +422 -420
  814. data/spec/integration/knife/chef_repository_file_system_spec.rb +35 -132
  815. data/spec/integration/knife/chefignore_spec.rb +88 -88
  816. data/spec/integration/knife/client_bulk_delete_spec.rb +49 -49
  817. data/spec/integration/knife/client_create_spec.rb +6 -6
  818. data/spec/integration/knife/client_delete_spec.rb +13 -13
  819. data/spec/integration/knife/client_key_create_spec.rb +1 -1
  820. data/spec/integration/knife/client_key_delete_spec.rb +2 -2
  821. data/spec/integration/knife/client_key_list_spec.rb +4 -4
  822. data/spec/integration/knife/client_list_spec.rb +8 -8
  823. data/spec/integration/knife/common_options_spec.rb +59 -41
  824. data/spec/integration/knife/config_get_profile_spec.rb +112 -0
  825. data/spec/integration/knife/config_get_spec.rb +183 -0
  826. data/spec/integration/knife/config_list_profiles_spec.rb +188 -0
  827. data/spec/integration/knife/config_use_profile_spec.rb +100 -0
  828. data/spec/integration/knife/cookbook_api_ipv6_spec.rb +38 -38
  829. data/spec/integration/knife/cookbook_bulk_delete_spec.rb +16 -16
  830. data/spec/integration/knife/cookbook_download_spec.rb +13 -37
  831. data/spec/integration/knife/cookbook_list_spec.rb +8 -8
  832. data/spec/integration/knife/cookbook_show_spec.rb +85 -96
  833. data/spec/integration/knife/cookbook_upload_spec.rb +24 -24
  834. data/spec/integration/knife/data_bag_create_spec.rb +82 -13
  835. data/spec/integration/knife/data_bag_delete_spec.rb +8 -8
  836. data/spec/integration/knife/data_bag_edit_spec.rb +104 -0
  837. data/spec/integration/knife/data_bag_from_file_spec.rb +47 -47
  838. data/spec/integration/knife/data_bag_list_spec.rb +4 -4
  839. data/spec/integration/knife/data_bag_show_spec.rb +56 -15
  840. data/spec/integration/knife/delete_spec.rb +593 -593
  841. data/spec/integration/knife/deps_spec.rb +192 -196
  842. data/spec/integration/knife/diff_spec.rb +116 -116
  843. data/spec/integration/knife/download_spec.rb +510 -510
  844. data/spec/integration/knife/environment_compare_spec.rb +17 -17
  845. data/spec/integration/knife/environment_create_spec.rb +1 -1
  846. data/spec/integration/knife/environment_from_file_spec.rb +59 -59
  847. data/spec/integration/knife/environment_list_spec.rb +4 -4
  848. data/spec/integration/knife/environment_show_spec.rb +27 -27
  849. data/spec/integration/knife/list_spec.rb +731 -731
  850. data/spec/integration/knife/node_bulk_delete_spec.rb +8 -8
  851. data/spec/integration/knife/node_create_spec.rb +1 -1
  852. data/spec/integration/knife/node_delete_spec.rb +6 -6
  853. data/spec/integration/knife/node_environment_set_spec.rb +3 -3
  854. data/spec/integration/knife/node_from_file_spec.rb +16 -16
  855. data/spec/integration/knife/node_list_spec.rb +5 -5
  856. data/spec/integration/knife/raw_spec.rb +123 -119
  857. data/spec/integration/knife/redirection_spec.rb +6 -4
  858. data/spec/integration/knife/role_bulk_delete_spec.rb +8 -8
  859. data/spec/integration/knife/role_create_spec.rb +1 -1
  860. data/spec/integration/knife/role_delete_spec.rb +6 -6
  861. data/spec/integration/knife/role_from_file_spec.rb +42 -42
  862. data/spec/integration/knife/role_list_spec.rb +5 -5
  863. data/spec/integration/knife/role_show_spec.rb +11 -11
  864. data/spec/integration/knife/search_node_spec.rb +39 -0
  865. data/spec/integration/knife/serve_spec.rb +58 -22
  866. data/spec/integration/knife/show_spec.rb +57 -57
  867. data/spec/integration/knife/upload_spec.rb +399 -407
  868. data/spec/integration/recipes/accumulator_spec.rb +8 -8
  869. data/spec/integration/recipes/lwrp_inline_resources_spec.rb +15 -19
  870. data/spec/integration/recipes/lwrp_spec.rb +12 -12
  871. data/spec/integration/recipes/noop_resource_spec.rb +1 -1
  872. data/spec/integration/recipes/notifies_spec.rb +217 -157
  873. data/spec/integration/recipes/notifying_block_spec.rb +2 -2
  874. data/spec/integration/recipes/recipe_dsl_spec.rb +87 -237
  875. data/spec/integration/recipes/remote_directory.rb +1 -1
  876. data/spec/integration/recipes/resource_action_spec.rb +62 -139
  877. data/spec/integration/recipes/resource_converge_if_changed_spec.rb +144 -88
  878. data/spec/integration/recipes/resource_load_spec.rb +13 -29
  879. data/spec/integration/recipes/unified_mode_spec.rb +876 -0
  880. data/spec/integration/solo/solo_spec.rb +42 -42
  881. data/spec/scripts/ssl-serve.rb +12 -12
  882. data/spec/spec_helper.rb +126 -62
  883. data/spec/stress/win32/file_spec.rb +2 -2
  884. data/spec/stress/win32/security_spec.rb +2 -2
  885. data/spec/support/lib/chef/resource/one_two_three_four.rb +0 -2
  886. data/spec/support/lib/chef/resource/zen_master.rb +1 -3
  887. data/spec/support/mock/constant.rb +1 -1
  888. data/spec/support/platform_helpers.rb +54 -10
  889. data/spec/support/shared/context/client.rb +45 -35
  890. data/spec/support/shared/examples/client.rb +51 -0
  891. data/spec/support/shared/functional/directory_resource.rb +12 -10
  892. data/spec/support/shared/functional/execute_resource.rb +1 -1
  893. data/spec/support/shared/functional/file_resource.rb +8 -8
  894. data/spec/support/shared/functional/securable_resource.rb +116 -85
  895. data/spec/support/shared/functional/securable_resource_with_reporting.rb +6 -6
  896. data/spec/support/shared/functional/win32_service.rb +5 -5
  897. data/spec/support/shared/functional/windows_script.rb +3 -3
  898. data/spec/support/shared/integration/app_server_support.rb +5 -5
  899. data/spec/support/shared/integration/integration_helper.rb +2 -2
  900. data/spec/support/shared/integration/knife_support.rb +15 -4
  901. data/spec/support/shared/unit/api_error_inspector.rb +11 -11
  902. data/spec/support/shared/unit/api_versioning.rb +4 -4
  903. data/spec/support/shared/unit/application_dot_d.rb +2 -0
  904. data/spec/support/shared/unit/execute_resource.rb +14 -16
  905. data/spec/support/shared/unit/provider/file.rb +22 -13
  906. data/spec/support/shared/unit/provider/useradd_based_user_provider.rb +41 -41
  907. data/spec/support/shared/unit/script_resource.rb +1 -9
  908. data/spec/support/shared/unit/user_and_client_shared.rb +3 -3
  909. data/spec/tiny_server.rb +8 -9
  910. data/spec/unit/api_client/registration_spec.rb +31 -31
  911. data/spec/unit/api_client_spec.rb +8 -8
  912. data/spec/unit/api_client_v1_spec.rb +9 -9
  913. data/spec/unit/application/apply_spec.rb +4 -4
  914. data/spec/unit/application/client_spec.rb +53 -24
  915. data/spec/unit/application/exit_code_spec.rb +4 -89
  916. data/spec/unit/application/knife_spec.rb +3 -3
  917. data/spec/unit/application/solo_spec.rb +6 -13
  918. data/spec/unit/application_spec.rb +116 -41
  919. data/spec/unit/audit/audit_event_proxy_spec.rb +48 -48
  920. data/spec/unit/audit/audit_reporter_spec.rb +71 -75
  921. data/spec/unit/audit/control_group_data_spec.rb +34 -34
  922. data/spec/unit/audit/runner_spec.rb +2 -2
  923. data/spec/unit/chef_class_spec.rb +130 -0
  924. data/spec/unit/chef_fs/data_handler/data_bag_item_data_handler.rb +82 -0
  925. data/spec/unit/chef_fs/data_handler/data_handler_base_spec.rb +65 -0
  926. data/spec/unit/chef_fs/diff_spec.rb +45 -45
  927. data/spec/unit/chef_fs/file_pattern_spec.rb +2 -2
  928. data/spec/unit/chef_fs/file_system/operation_failed_error_spec.rb +2 -2
  929. data/spec/unit/chef_fs/file_system/repository/directory_spec.rb +4 -4
  930. data/spec/unit/chef_fs/file_system_spec.rb +9 -9
  931. data/spec/unit/chef_fs/parallelizer.rb +12 -12
  932. data/spec/unit/client_spec.rb +97 -46
  933. data/spec/unit/config_fetcher_spec.rb +23 -23
  934. data/spec/unit/config_spec.rb +2 -2
  935. data/spec/unit/cookbook/cookbook_version_loader_spec.rb +22 -19
  936. data/spec/unit/cookbook/file_vendor_spec.rb +20 -9
  937. data/spec/unit/cookbook/gem_installer_spec.rb +113 -0
  938. data/spec/unit/cookbook/manifest_v0_spec.rb +133 -0
  939. data/spec/unit/cookbook/manifest_v2_spec.rb +70 -0
  940. data/spec/unit/cookbook/metadata_spec.rb +114 -193
  941. data/spec/unit/cookbook/synchronizer_spec.rb +188 -158
  942. data/spec/unit/cookbook/syntax_check_spec.rb +1 -0
  943. data/spec/unit/cookbook_loader_spec.rb +33 -30
  944. data/spec/unit/cookbook_manifest_spec.rb +33 -48
  945. data/spec/unit/cookbook_site_streaming_uploader_spec.rb +6 -10
  946. data/spec/unit/cookbook_spec.rb +10 -14
  947. data/spec/unit/cookbook_uploader_spec.rb +9 -9
  948. data/spec/unit/cookbook_version_file_specificity_spec.rb +156 -109
  949. data/spec/unit/cookbook_version_spec.rb +19 -128
  950. data/spec/unit/daemon_spec.rb +25 -16
  951. data/spec/unit/data_bag_item_spec.rb +7 -3
  952. data/spec/unit/data_bag_spec.rb +2 -2
  953. data/spec/unit/data_collector/messages/helpers_spec.rb +9 -0
  954. data/spec/unit/data_collector/messages_spec.rb +137 -0
  955. data/spec/unit/data_collector/resource_report_spec.rb +145 -0
  956. data/spec/unit/data_collector_spec.rb +137 -2
  957. data/spec/unit/deprecated_spec.rb +19 -13
  958. data/spec/unit/deprecation_spec.rb +0 -14
  959. data/spec/unit/dsl/audit_spec.rb +1 -1
  960. data/spec/unit/dsl/declare_resource_spec.rb +10 -1
  961. data/spec/unit/dsl/platform_introspection_spec.rb +16 -16
  962. data/spec/unit/dsl/reboot_pending_spec.rb +1 -14
  963. data/spec/unit/dsl/recipe_spec.rb +1 -18
  964. data/spec/unit/encrypted_data_bag_item_spec.rb +6 -6
  965. data/spec/unit/environment_spec.rb +19 -19
  966. data/spec/unit/exceptions_spec.rb +1 -1
  967. data/spec/unit/file_access_control_spec.rb +8 -8
  968. data/spec/unit/file_content_management/deploy/mv_unix_spec.rb +16 -4
  969. data/spec/unit/file_content_management/deploy/mv_windows_spec.rb +26 -26
  970. data/spec/unit/formatters/base_spec.rb +34 -5
  971. data/spec/unit/formatters/doc_spec.rb +18 -0
  972. data/spec/unit/formatters/error_description_spec.rb +66 -21
  973. data/spec/unit/formatters/error_inspectors/compile_error_inspector_spec.rb +16 -16
  974. data/spec/unit/formatters/error_inspectors/cookbook_resolve_error_inspector_spec.rb +4 -4
  975. data/spec/unit/formatters/error_inspectors/cookbook_sync_error_inspector_spec.rb +1 -1
  976. data/spec/unit/formatters/error_inspectors/node_load_error_inspector_spec.rb +1 -1
  977. data/spec/unit/formatters/error_inspectors/registration_error_inspector_spec.rb +1 -1
  978. data/spec/unit/formatters/error_inspectors/resource_failure_inspector_spec.rb +1 -1
  979. data/spec/unit/formatters/error_inspectors/run_list_expansion_error_inspector_spec.rb +7 -7
  980. data/spec/unit/guard_interpreter/resource_guard_interpreter_spec.rb +4 -4
  981. data/spec/unit/handler/json_file_spec.rb +1 -1
  982. data/spec/unit/http/api_versions_spec.rb +18 -5
  983. data/spec/unit/http/authenticator_spec.rb +58 -13
  984. data/spec/unit/http/http_request_spec.rb +7 -1
  985. data/spec/unit/http/socketless_chef_zero_client_spec.rb +2 -1
  986. data/spec/unit/http/ssl_policies_spec.rb +1 -1
  987. data/spec/unit/http/validate_content_length_spec.rb +7 -7
  988. data/spec/unit/http_spec.rb +9 -0
  989. data/spec/unit/json_compat_spec.rb +0 -32
  990. data/spec/unit/key_spec.rb +12 -12
  991. data/spec/unit/knife/bootstrap/client_builder_spec.rb +4 -4
  992. data/spec/unit/knife/bootstrap_spec.rb +160 -12
  993. data/spec/unit/knife/client_bulk_delete_spec.rb +1 -1
  994. data/spec/unit/knife/client_delete_spec.rb +2 -2
  995. data/spec/unit/knife/client_reregister_spec.rb +1 -1
  996. data/spec/unit/knife/configure_client_spec.rb +4 -6
  997. data/spec/unit/knife/configure_spec.rb +12 -63
  998. data/spec/unit/knife/cookbook_bulk_delete_spec.rb +1 -1
  999. data/spec/unit/knife/cookbook_create_spec.rb +1 -220
  1000. data/spec/unit/knife/cookbook_delete_spec.rb +6 -6
  1001. data/spec/unit/knife/cookbook_download_spec.rb +64 -46
  1002. data/spec/unit/knife/cookbook_list_spec.rb +7 -7
  1003. data/spec/unit/knife/cookbook_show_spec.rb +62 -29
  1004. data/spec/unit/knife/cookbook_test_spec.rb +2 -2
  1005. data/spec/unit/knife/cookbook_upload_spec.rb +19 -19
  1006. data/spec/unit/knife/core/bootstrap_context_spec.rb +54 -37
  1007. data/spec/unit/knife/core/cookbook_scm_repo_spec.rb +21 -21
  1008. data/spec/unit/knife/core/gem_glob_loader_spec.rb +2 -2
  1009. data/spec/unit/knife/core/hashed_command_loader_spec.rb +1 -1
  1010. data/spec/unit/knife/core/node_editor_spec.rb +6 -6
  1011. data/spec/unit/knife/core/object_loader_spec.rb +1 -1
  1012. data/spec/unit/knife/core/subcommand_loader_spec.rb +0 -6
  1013. data/spec/unit/knife/core/ui_spec.rb +76 -66
  1014. data/spec/unit/knife/data_bag_create_spec.rb +107 -41
  1015. data/spec/unit/knife/data_bag_edit_spec.rb +2 -3
  1016. data/spec/unit/knife/data_bag_secret_options_spec.rb +5 -5
  1017. data/spec/unit/knife/data_bag_show_spec.rb +16 -2
  1018. data/spec/unit/knife/environment_compare_spec.rb +3 -3
  1019. data/spec/unit/knife/environment_from_file_spec.rb +1 -1
  1020. data/spec/unit/knife/key_create_spec.rb +4 -4
  1021. data/spec/unit/knife/key_delete_spec.rb +3 -3
  1022. data/spec/unit/knife/key_edit_spec.rb +3 -3
  1023. data/spec/unit/knife/key_list_spec.rb +3 -3
  1024. data/spec/unit/knife/key_show_spec.rb +3 -3
  1025. data/spec/unit/knife/node_delete_spec.rb +1 -1
  1026. data/spec/unit/knife/node_edit_spec.rb +10 -8
  1027. data/spec/unit/knife/node_from_file_spec.rb +1 -1
  1028. data/spec/unit/knife/node_policy_set_spec.rb +122 -0
  1029. data/spec/unit/knife/node_run_list_add_spec.rb +1 -1
  1030. data/spec/unit/knife/osc_user_edit_spec.rb +1 -1
  1031. data/spec/unit/knife/osc_user_reregister_spec.rb +2 -2
  1032. data/spec/unit/knife/osc_user_show_spec.rb +1 -1
  1033. data/spec/unit/knife/role_bulk_delete_spec.rb +1 -1
  1034. data/spec/unit/knife/role_create_spec.rb +1 -1
  1035. data/spec/unit/knife/role_delete_spec.rb +1 -1
  1036. data/spec/unit/knife/role_env_run_list_add_spec.rb +4 -4
  1037. data/spec/unit/knife/role_env_run_list_clear_spec.rb +1 -1
  1038. data/spec/unit/knife/role_env_run_list_remove_spec.rb +1 -1
  1039. data/spec/unit/knife/role_env_run_list_replace_spec.rb +1 -1
  1040. data/spec/unit/knife/role_env_run_list_set_spec.rb +1 -1
  1041. data/spec/unit/knife/role_from_file_spec.rb +1 -1
  1042. data/spec/unit/knife/role_run_list_add_spec.rb +4 -4
  1043. data/spec/unit/knife/role_run_list_clear_spec.rb +1 -1
  1044. data/spec/unit/knife/role_run_list_remove_spec.rb +1 -1
  1045. data/spec/unit/knife/role_run_list_replace_spec.rb +1 -1
  1046. data/spec/unit/knife/role_run_list_set_spec.rb +1 -1
  1047. data/spec/unit/knife/ssh_spec.rb +136 -66
  1048. data/spec/unit/knife/ssl_check_spec.rb +23 -23
  1049. data/spec/unit/knife/ssl_fetch_spec.rb +11 -11
  1050. data/spec/unit/knife/status_spec.rb +2 -0
  1051. data/spec/unit/knife/{cookbook_site_download_spec.rb → supermarket_download_spec.rb} +28 -26
  1052. data/spec/unit/knife/{cookbook_site_install_spec.rb → supermarket_install_spec.rb} +10 -9
  1053. data/spec/unit/knife/{cookbook_site_share_spec.rb → supermarket_share_spec.rb} +15 -15
  1054. data/spec/unit/knife/{cookbook_site_unshare_spec.rb → supermarket_unshare_spec.rb} +9 -8
  1055. data/spec/unit/knife/user_delete_spec.rb +1 -1
  1056. data/spec/unit/knife/user_reregister_spec.rb +1 -1
  1057. data/spec/unit/knife_spec.rb +65 -38
  1058. data/spec/unit/log/syslog_spec.rb +4 -6
  1059. data/spec/unit/log/winevt_spec.rb +3 -4
  1060. data/spec/unit/lwrp_spec.rb +50 -137
  1061. data/spec/unit/mash_spec.rb +3 -3
  1062. data/spec/unit/mixin/api_version_request_handling_spec.rb +18 -18
  1063. data/spec/unit/mixin/checksum_spec.rb +1 -1
  1064. data/spec/unit/mixin/enforce_ownership_and_permissions_spec.rb +8 -8
  1065. data/spec/unit/mixin/homebrew_user_spec.rb +2 -6
  1066. data/spec/unit/mixin/openssl_helper_spec.rb +857 -0
  1067. data/spec/unit/mixin/params_validate_spec.rb +104 -93
  1068. data/spec/unit/mixin/path_sanity_spec.rb +7 -7
  1069. data/spec/unit/mixin/powershell_exec_spec.rb +43 -0
  1070. data/spec/unit/mixin/powershell_type_coercions_spec.rb +8 -7
  1071. data/spec/unit/mixin/properties_spec.rb +12 -2
  1072. data/spec/unit/mixin/securable_spec.rb +27 -27
  1073. data/spec/unit/mixin/shell_out_spec.rb +335 -187
  1074. data/spec/unit/mixin/template_spec.rb +45 -0
  1075. data/spec/unit/mixin/user_context_spec.rb +108 -0
  1076. data/spec/unit/mixin/versioned_api_spec.rb +21 -0
  1077. data/spec/unit/mixin/xml_escape_spec.rb +1 -1
  1078. data/spec/unit/node/attribute_spec.rb +77 -45
  1079. data/spec/unit/node/immutable_collections_spec.rb +126 -5
  1080. data/spec/unit/node/vivid_mash_spec.rb +3 -3
  1081. data/spec/unit/node_map_spec.rb +90 -18
  1082. data/spec/unit/node_spec.rb +171 -156
  1083. data/spec/unit/org_spec.rb +2 -2
  1084. data/spec/unit/platform/query_helpers_spec.rb +30 -43
  1085. data/spec/unit/policy_builder/expand_node_object_spec.rb +6 -31
  1086. data/spec/unit/policy_builder/policyfile_spec.rb +162 -35
  1087. data/spec/unit/property/validation_spec.rb +108 -70
  1088. data/spec/unit/property_spec.rb +139 -135
  1089. data/spec/unit/provider/apt_preference_spec.rb +87 -0
  1090. data/spec/unit/provider/apt_repository_spec.rb +131 -60
  1091. data/spec/unit/provider/apt_update_spec.rb +9 -7
  1092. data/spec/unit/provider/cookbook_file/content_spec.rb +1 -1
  1093. data/spec/unit/provider/cookbook_file_spec.rb +2 -1
  1094. data/spec/unit/provider/cron/unix_spec.rb +20 -15
  1095. data/spec/unit/provider/cron_spec.rb +439 -365
  1096. data/spec/unit/provider/dsc_resource_spec.rb +10 -10
  1097. data/spec/unit/provider/dsc_script_spec.rb +1 -1
  1098. data/spec/unit/provider/execute_spec.rb +25 -16
  1099. data/spec/unit/provider/file/content_spec.rb +3 -3
  1100. data/spec/unit/provider/file_spec.rb +2 -1
  1101. data/spec/unit/provider/git_spec.rb +185 -130
  1102. data/spec/unit/provider/group/dscl_spec.rb +39 -31
  1103. data/spec/unit/provider/group/gpasswd_spec.rb +12 -9
  1104. data/spec/unit/provider/group/groupadd_spec.rb +16 -16
  1105. data/spec/unit/provider/group/groupmod_spec.rb +19 -16
  1106. data/spec/unit/provider/group/pw_spec.rb +12 -9
  1107. data/spec/unit/provider/group/suse_spec.rb +2 -2
  1108. data/spec/unit/provider/group/usermod_spec.rb +10 -10
  1109. data/spec/unit/provider/group/windows_spec.rb +18 -3
  1110. data/spec/unit/provider/group_spec.rb +16 -16
  1111. data/spec/unit/provider/http_request_spec.rb +1 -1
  1112. data/spec/unit/provider/ifconfig/aix_spec.rb +20 -20
  1113. data/spec/unit/provider/ifconfig/debian_spec.rb +16 -16
  1114. data/spec/unit/provider/ifconfig/redhat_spec.rb +10 -0
  1115. data/spec/unit/provider/ifconfig_spec.rb +33 -15
  1116. data/spec/unit/provider/launchd_spec.rb +52 -52
  1117. data/spec/unit/provider/link_spec.rb +13 -11
  1118. data/spec/unit/provider/log_spec.rb +18 -13
  1119. data/spec/unit/provider/mdadm_spec.rb +3 -3
  1120. data/spec/unit/provider/mount/aix_spec.rb +85 -45
  1121. data/spec/unit/provider/mount/mount_spec.rb +90 -37
  1122. data/spec/unit/provider/mount/solaris_spec.rb +88 -88
  1123. data/spec/unit/provider/mount/windows_spec.rb +6 -6
  1124. data/spec/unit/provider/ohai_spec.rb +9 -9
  1125. data/spec/unit/provider/osx_profile_spec.rb +6 -4
  1126. data/spec/unit/provider/package/apt_spec.rb +576 -447
  1127. data/spec/unit/provider/package/{aix_spec.rb → bff_spec.rb} +45 -43
  1128. data/spec/unit/provider/package/cab_spec.rb +58 -58
  1129. data/spec/unit/provider/package/chocolatey_spec.rb +66 -48
  1130. data/spec/unit/provider/package/dpkg_spec.rb +33 -33
  1131. data/spec/unit/provider/package/freebsd/pkg_spec.rb +36 -36
  1132. data/spec/unit/provider/package/freebsd/pkgng_spec.rb +22 -22
  1133. data/spec/unit/provider/package/freebsd/port_spec.rb +21 -21
  1134. data/spec/unit/provider/package/homebrew_spec.rb +6 -5
  1135. data/spec/unit/provider/package/ips_spec.rb +96 -96
  1136. data/spec/unit/provider/package/macports_spec.rb +27 -27
  1137. data/spec/unit/provider/package/msu_spec.rb +44 -44
  1138. data/spec/unit/provider/package/openbsd_spec.rb +19 -19
  1139. data/spec/unit/provider/package/pacman_spec.rb +52 -52
  1140. data/spec/unit/provider/package/paludis_spec.rb +33 -33
  1141. data/spec/unit/provider/package/portage_spec.rb +27 -163
  1142. data/spec/unit/provider/package/powershell_spec.rb +236 -72
  1143. data/spec/unit/provider/package/rpm_spec.rb +26 -26
  1144. data/spec/unit/provider/package/rubygems_spec.rb +255 -98
  1145. data/spec/unit/provider/package/smartos_spec.rb +21 -21
  1146. data/spec/unit/provider/package/solaris_spec.rb +38 -38
  1147. data/spec/unit/provider/package/windows/exe_spec.rb +2 -2
  1148. data/spec/unit/provider/package/windows/msi_spec.rb +2 -2
  1149. data/spec/unit/provider/package/windows/registry_uninstall_entry_spec.rb +78 -0
  1150. data/spec/unit/provider/package/windows_spec.rb +22 -2
  1151. data/{lib/chef/mixin/language_include_recipe.rb → spec/unit/provider/package/yum/python_helper_spec.rb} +8 -10
  1152. data/spec/unit/provider/package/yum/yum_cache_spec.rb +86 -4
  1153. data/spec/unit/provider/package/zypper_spec.rb +207 -68
  1154. data/spec/unit/provider/package_spec.rb +87 -23
  1155. data/spec/unit/provider/powershell_script_spec.rb +16 -6
  1156. data/spec/unit/provider/registry_key_spec.rb +103 -23
  1157. data/spec/unit/provider/remote_directory_spec.rb +1 -1
  1158. data/spec/unit/provider/remote_file/cache_control_data_spec.rb +8 -8
  1159. data/spec/unit/provider/remote_file/content_spec.rb +6 -6
  1160. data/spec/unit/provider/remote_file/fetcher_spec.rb +6 -5
  1161. data/spec/unit/provider/remote_file/ftp_spec.rb +1 -1
  1162. data/spec/unit/provider/remote_file/http_spec.rb +26 -24
  1163. data/spec/unit/provider/remote_file/local_file_spec.rb +2 -2
  1164. data/spec/unit/provider/remote_file/network_file_spec.rb +9 -4
  1165. data/spec/unit/provider/remote_file/sftp_spec.rb +2 -2
  1166. data/spec/unit/provider/remote_file_spec.rb +2 -1
  1167. data/spec/unit/provider/route_spec.rb +36 -14
  1168. data/spec/unit/provider/script_spec.rb +2 -2
  1169. data/spec/unit/provider/service/aix_service_spec.rb +8 -8
  1170. data/spec/unit/provider/service/aixinit_service_spec.rb +4 -4
  1171. data/spec/unit/provider/service/arch_service_spec.rb +36 -36
  1172. data/spec/unit/provider/service/debian_service_spec.rb +42 -168
  1173. data/spec/unit/provider/service/freebsd_service_spec.rb +37 -37
  1174. data/spec/unit/provider/service/gentoo_service_spec.rb +1 -1
  1175. data/spec/unit/provider/service/init_service_spec.rb +30 -30
  1176. data/spec/unit/provider/service/insserv_service_spec.rb +4 -4
  1177. data/spec/unit/provider/service/invokercd_service_spec.rb +30 -30
  1178. data/spec/unit/provider/service/macosx_spec.rb +68 -63
  1179. data/spec/unit/provider/service/openbsd_service_spec.rb +12 -12
  1180. data/spec/unit/provider/service/redhat_spec.rb +27 -27
  1181. data/spec/unit/provider/service/simple_service_spec.rb +20 -20
  1182. data/spec/unit/provider/service/solaris_smf_service_spec.rb +54 -17
  1183. data/spec/unit/provider/service/systemd_service_spec.rb +37 -43
  1184. data/spec/unit/provider/service/upstart_service_spec.rb +33 -46
  1185. data/spec/unit/provider/service/windows_spec.rb +517 -70
  1186. data/spec/unit/provider/service_spec.rb +4 -4
  1187. data/spec/unit/provider/subversion_spec.rb +15 -15
  1188. data/spec/unit/provider/systemd_unit_spec.rb +241 -159
  1189. data/spec/unit/provider/template/content_spec.rb +44 -44
  1190. data/spec/unit/provider/template_spec.rb +3 -5
  1191. data/spec/unit/provider/user/aix_spec.rb +96 -0
  1192. data/spec/unit/provider/user/dscl_spec.rb +39 -21
  1193. data/spec/unit/provider/user/linux_spec.rb +5 -43
  1194. data/spec/unit/provider/user/pw_spec.rb +29 -49
  1195. data/spec/unit/provider/user/solaris_spec.rb +8 -9
  1196. data/spec/unit/provider/user/windows_spec.rb +23 -11
  1197. data/spec/unit/provider/user_spec.rb +52 -36
  1198. data/spec/unit/provider/{env_spec.rb → windows_env_spec.rb} +106 -16
  1199. data/spec/unit/provider/windows_path_spec.rb +65 -0
  1200. data/spec/unit/provider/windows_task_spec.rb +435 -0
  1201. data/spec/unit/provider/zypper_repository_spec.rb +126 -0
  1202. data/spec/unit/provider_resolver_spec.rb +41 -54
  1203. data/spec/unit/provider_spec.rb +10 -7
  1204. data/spec/unit/recipe_spec.rb +19 -188
  1205. data/spec/unit/resource/apt_package_spec.rb +19 -1
  1206. data/spec/unit/resource/apt_preference_spec.rb +57 -0
  1207. data/spec/unit/resource/apt_repository_spec.rb +58 -16
  1208. data/spec/unit/resource/apt_update_spec.rb +22 -10
  1209. data/spec/unit/resource/bash_spec.rb +14 -9
  1210. data/spec/unit/resource/batch_spec.rb +2 -5
  1211. data/spec/unit/resource/bff_package_spec.rb +51 -0
  1212. data/spec/unit/resource/breakpoint_spec.rb +30 -13
  1213. data/spec/unit/resource/build_essential_spec.rb +43 -0
  1214. data/spec/unit/resource/cab_package_spec.rb +30 -4
  1215. data/spec/unit/resource/chef_gem_spec.rb +32 -64
  1216. data/spec/unit/resource/chef_handler_spec.rb +40 -0
  1217. data/spec/unit/resource/chocolatey_config_spec.rb +98 -0
  1218. data/spec/unit/resource/chocolatey_package_spec.rb +24 -12
  1219. data/spec/unit/resource/chocolatey_source_spec.rb +102 -0
  1220. data/spec/unit/resource/conditional_spec.rb +5 -5
  1221. data/spec/unit/resource/cookbook_file_spec.rb +36 -31
  1222. data/{lib/chef/mixin/language_include_attribute.rb → spec/unit/resource/cron_access_spec.rb} +14 -12
  1223. data/spec/unit/resource/cron_d_spec.rb +90 -0
  1224. data/spec/unit/resource/cron_spec.rb +73 -86
  1225. data/spec/unit/resource/csh_spec.rb +14 -9
  1226. data/spec/unit/resource/directory_spec.rb +23 -36
  1227. data/spec/unit/resource/{deploy_revision_spec.rb → dmg_package_spec.rb} +15 -18
  1228. data/spec/unit/resource/dnf_package_spec.rb +47 -38
  1229. data/spec/unit/resource/dpkg_package_spec.rb +18 -0
  1230. data/spec/unit/resource/dsc_resource_spec.rb +7 -7
  1231. data/spec/unit/resource/dsc_script_spec.rb +49 -49
  1232. data/spec/unit/resource/execute_spec.rb +47 -19
  1233. data/spec/unit/resource/file/verification/systemd_unit_spec.rb +1 -1
  1234. data/spec/unit/resource/file/verification_spec.rb +27 -19
  1235. data/spec/unit/resource/file_spec.rb +58 -61
  1236. data/spec/unit/resource/freebsd_package_spec.rb +47 -31
  1237. data/spec/unit/resource/gem_package_spec.rb +30 -5
  1238. data/spec/unit/resource/git_spec.rb +23 -11
  1239. data/spec/unit/resource/group_spec.rb +78 -75
  1240. data/spec/unit/resource/homebrew_cask_spec.rb +40 -0
  1241. data/spec/unit/resource/homebrew_package_spec.rb +18 -0
  1242. data/spec/unit/resource/homebrew_tap_spec.rb +44 -0
  1243. data/spec/unit/resource/hostname_spec.rb +47 -0
  1244. data/spec/unit/resource/http_request_spec.rb +23 -17
  1245. data/spec/unit/resource/ifconfig_spec.rb +4 -4
  1246. data/spec/unit/resource/ips_package_spec.rb +21 -7
  1247. data/spec/unit/resource/kernel_module_spec.rb +48 -0
  1248. data/spec/unit/resource/ksh_spec.rb +14 -9
  1249. data/spec/unit/resource/launchd_spec.rb +23 -15
  1250. data/spec/unit/resource/link_spec.rb +52 -62
  1251. data/spec/unit/resource/locale_spec.rb +60 -0
  1252. data/spec/unit/resource/log_spec.rb +22 -31
  1253. data/spec/unit/resource/{timestamped_deploy_spec.rb → macos_user_defaults_spec.rb} +14 -11
  1254. data/spec/unit/resource/macports_package_spec.rb +19 -0
  1255. data/spec/unit/resource/mdadm_spec.rb +41 -44
  1256. data/spec/unit/resource/mount_spec.rb +94 -131
  1257. data/spec/unit/resource/msu_package_spec.rb +25 -11
  1258. data/spec/unit/resource/ohai_hint_spec.rb +44 -0
  1259. data/spec/unit/resource/ohai_spec.rb +17 -16
  1260. data/spec/unit/resource/openbsd_package_spec.rb +24 -14
  1261. data/spec/unit/resource/openssl_dhparam.rb +61 -0
  1262. data/spec/unit/resource/openssl_ec_private_key_spec.rb +64 -0
  1263. data/spec/unit/resource/openssl_ec_public_key_spec.rb +43 -0
  1264. data/spec/unit/resource/openssl_rsa_private_key_spec.rb +64 -0
  1265. data/spec/unit/resource/openssl_rsa_public_key_spec.rb +43 -0
  1266. data/spec/unit/resource/openssl_x509_certificate_spec.rb +72 -0
  1267. data/spec/unit/resource/openssl_x509_crl_spec.rb +61 -0
  1268. data/spec/unit/resource/openssl_x509_request.rb +68 -0
  1269. data/spec/unit/resource/osx_profile_spec.rb +10 -12
  1270. data/spec/unit/resource/package_spec.rb +47 -37
  1271. data/spec/unit/resource/pacman_package_spec.rb +17 -3
  1272. data/spec/unit/resource/paludis_package_spec.rb +36 -0
  1273. data/spec/unit/resource/perl_spec.rb +13 -9
  1274. data/spec/unit/resource/portage_package_spec.rb +18 -10
  1275. data/spec/unit/resource/powershell_package_source_spec.rb +219 -0
  1276. data/spec/unit/resource/powershell_package_spec.rb +42 -12
  1277. data/spec/unit/resource/powershell_script_spec.rb +10 -10
  1278. data/spec/unit/resource/python_spec.rb +10 -10
  1279. data/spec/unit/resource/reboot_spec.rb +47 -0
  1280. data/spec/unit/resource/registry_key_spec.rb +99 -99
  1281. data/spec/unit/resource/remote_directory_spec.rb +50 -42
  1282. data/spec/unit/resource/remote_file_spec.rb +95 -82
  1283. data/spec/unit/resource/resource_notification_spec.rb +8 -8
  1284. data/spec/unit/resource/rhsm_errata_level_spec.rb +50 -0
  1285. data/spec/unit/resource/rhsm_errata_spec.rb +39 -0
  1286. data/spec/unit/resource/rhsm_register_spec.rb +204 -0
  1287. data/spec/unit/resource/rhsm_repo_spec.rb +64 -0
  1288. data/spec/unit/resource/rhsm_subscription_spec.rb +98 -0
  1289. data/spec/unit/resource/route_spec.rb +36 -48
  1290. data/spec/unit/resource/rpm_package_spec.rb +22 -6
  1291. data/spec/unit/resource/ruby_block_spec.rb +15 -18
  1292. data/spec/unit/resource/ruby_spec.rb +9 -10
  1293. data/spec/unit/resource/scm_spec.rb +64 -84
  1294. data/spec/unit/resource/script_spec.rb +10 -2
  1295. data/spec/unit/resource/service_spec.rb +102 -75
  1296. data/spec/unit/resource/smartos_package_spec.rb +21 -2
  1297. data/spec/unit/resource/solaris_package_spec.rb +16 -4
  1298. data/spec/unit/resource/ssh_known_hosts_entry_spec.rb +55 -0
  1299. data/spec/unit/resource/subversion_spec.rb +39 -19
  1300. data/spec/unit/resource/sudo_spec.rb +99 -0
  1301. data/spec/unit/resource/swap_file_spec.rb +39 -0
  1302. data/spec/unit/resource/sysctl_spec.rb +54 -0
  1303. data/spec/unit/resource/systemd_unit_spec.rb +58 -61
  1304. data/spec/unit/resource/template_spec.rb +74 -62
  1305. data/spec/unit/resource/timezone.rb +39 -0
  1306. data/spec/unit/resource/user_spec.rb +45 -56
  1307. data/spec/unit/resource/windows_ad_join_spec.rb +51 -0
  1308. data/spec/unit/resource/windows_auto_run_spec.rb +50 -0
  1309. data/spec/unit/resource/windows_certificate.rb +83 -0
  1310. data/spec/unit/resource/windows_env_spec.rb +75 -0
  1311. data/spec/unit/resource/windows_feature.rb +64 -0
  1312. data/spec/unit/resource/windows_feature_dism.rb +72 -0
  1313. data/spec/unit/resource/windows_feature_powershell.rb +72 -0
  1314. data/spec/unit/resource/windows_firewall_rule_spec.rb +401 -0
  1315. data/spec/unit/resource/windows_font_spec.rb +43 -0
  1316. data/spec/unit/resource/windows_package_spec.rb +16 -6
  1317. data/spec/unit/resource/windows_pagefile_spec.rb +49 -0
  1318. data/spec/unit/resource/windows_path_spec.rb +40 -0
  1319. data/spec/unit/resource/windows_printer_port_spec.rb +62 -0
  1320. data/spec/unit/resource/windows_printer_spec.rb +52 -0
  1321. data/spec/unit/resource/windows_service_spec.rb +49 -5
  1322. data/spec/unit/resource/windows_share.rb +39 -0
  1323. data/spec/unit/resource/windows_shortcut_spec.rb +38 -0
  1324. data/spec/unit/resource/windows_task_spec.rb +399 -0
  1325. data/spec/unit/resource/windows_workgroup_spec.rb +74 -0
  1326. data/spec/unit/resource/yum_package_spec.rb +6 -6
  1327. data/spec/unit/resource/yum_repository_spec.rb +112 -9
  1328. data/spec/unit/resource/zypper_package_spec.rb +51 -0
  1329. data/spec/unit/resource/zypper_repository_spec.rb +115 -0
  1330. data/spec/unit/resource_collection/resource_set_spec.rb +52 -7
  1331. data/spec/unit/resource_collection_spec.rb +17 -8
  1332. data/spec/unit/resource_definition_spec.rb +2 -2
  1333. data/spec/unit/resource_inspector_spec.rb +60 -0
  1334. data/spec/unit/resource_reporter_spec.rb +39 -39
  1335. data/spec/unit/resource_spec.rb +154 -100
  1336. data/spec/unit/role_spec.rb +22 -22
  1337. data/spec/unit/run_context/child_run_context_spec.rb +3 -3
  1338. data/spec/unit/run_context/cookbook_compiler_spec.rb +1 -3
  1339. data/spec/unit/run_context_spec.rb +1 -1
  1340. data/spec/unit/run_list/run_list_item_spec.rb +3 -3
  1341. data/spec/unit/run_list/versioned_recipe_list_spec.rb +19 -16
  1342. data/spec/unit/run_list_spec.rb +6 -6
  1343. data/spec/unit/runner_spec.rb +16 -30
  1344. data/spec/unit/scan_access_control_spec.rb +3 -3
  1345. data/spec/unit/search/query_spec.rb +36 -43
  1346. data/spec/unit/server_api_spec.rb +75 -1
  1347. data/spec/unit/server_api_versions_spec.rb +22 -0
  1348. data/spec/unit/shell/model_wrapper_spec.rb +4 -4
  1349. data/spec/unit/shell/shell_ext_spec.rb +4 -4
  1350. data/spec/unit/shell/shell_session_spec.rb +113 -58
  1351. data/spec/unit/user_spec.rb +3 -3
  1352. data/spec/unit/user_v1_spec.rb +27 -27
  1353. data/spec/unit/util/diff_spec.rb +1 -1
  1354. data/spec/unit/util/dsc/configuration_generator_spec.rb +4 -4
  1355. data/spec/unit/util/dsc/lcm_output_parser_spec.rb +172 -88
  1356. data/spec/unit/util/dsc/local_configuration_manager_spec.rb +77 -24
  1357. data/spec/unit/util/file_edit_spec.rb +38 -38
  1358. data/spec/unit/util/powershell/cmdlet_spec.rb +1 -1
  1359. data/spec/unit/util/selinux_spec.rb +10 -13
  1360. data/spec/unit/util/windows/logon_session_spec.rb +285 -0
  1361. data/spec/unit/version_string_spec.rb +79 -0
  1362. data/spec/unit/win32/error_spec.rb +12 -2
  1363. data/spec/unit/win32/link_spec.rb +73 -0
  1364. data/spec/unit/win32/registry_spec.rb +3 -3
  1365. data/spec/unit/win32/security_spec.rb +69 -1
  1366. data/spec/unit/windows_service_spec.rb +6 -4
  1367. data/tasks/announce.rb +1 -1
  1368. data/tasks/bin/run_external_test +22 -40
  1369. data/tasks/dependencies.rb +21 -114
  1370. data/tasks/maintainers.rb +13 -13
  1371. data/tasks/rspec.rb +3 -3
  1372. data/tasks/templates/prerelease.md.erb +11 -2
  1373. data/tasks/templates/release.md.erb +9 -1
  1374. metadata +335 -404
  1375. data/CONTRIBUTING.md +0 -151
  1376. data/VERSION +0 -1
  1377. data/acceptance/.gitignore +0 -3
  1378. data/acceptance/.shared/kitchen_acceptance/.kitchen.digitalocean.yml +0 -33
  1379. data/acceptance/.shared/kitchen_acceptance/.kitchen.ec2.yml +0 -282
  1380. data/acceptance/.shared/kitchen_acceptance/.kitchen.vagrant.yml +0 -59
  1381. data/acceptance/.shared/kitchen_acceptance/libraries/kitchen.rb +0 -68
  1382. data/acceptance/.shared/kitchen_acceptance/metadata.rb +0 -1
  1383. data/acceptance/Gemfile +0 -16
  1384. data/acceptance/Gemfile.lock +0 -258
  1385. data/acceptance/README.md +0 -137
  1386. data/acceptance/basics/.acceptance/acceptance-cookbook/.gitignore +0 -2
  1387. data/acceptance/basics/.acceptance/acceptance-cookbook/metadata.rb +0 -3
  1388. data/acceptance/basics/.acceptance/acceptance-cookbook/recipes/destroy.rb +0 -1
  1389. data/acceptance/basics/.acceptance/acceptance-cookbook/recipes/provision.rb +0 -1
  1390. data/acceptance/basics/.acceptance/acceptance-cookbook/recipes/verify.rb +0 -1
  1391. data/acceptance/basics/.kitchen.yml +0 -4
  1392. data/acceptance/basics/test/integration/chef-current-install/serverspec/chef_client_spec.rb +0 -19
  1393. data/acceptance/basics/test/integration/chef-current-install/serverspec/spec_helper.rb +0 -6
  1394. data/acceptance/basics/test/integration/helpers/serverspec/Gemfile +0 -8
  1395. data/acceptance/data-collector/.acceptance/acceptance-cookbook/.gitignore +0 -2
  1396. data/acceptance/data-collector/.acceptance/acceptance-cookbook/metadata.rb +0 -3
  1397. data/acceptance/data-collector/.acceptance/acceptance-cookbook/recipes/destroy.rb +0 -2
  1398. data/acceptance/data-collector/.acceptance/acceptance-cookbook/recipes/provision.rb +0 -2
  1399. data/acceptance/data-collector/.acceptance/acceptance-cookbook/recipes/verify.rb +0 -2
  1400. data/acceptance/data-collector/.acceptance/data-collector-test/.gitignore +0 -16
  1401. data/acceptance/data-collector/.acceptance/data-collector-test/Berksfile +0 -3
  1402. data/acceptance/data-collector/.acceptance/data-collector-test/files/default/api.rb +0 -85
  1403. data/acceptance/data-collector/.acceptance/data-collector-test/files/default/apigemfile +0 -3
  1404. data/acceptance/data-collector/.acceptance/data-collector-test/files/default/client-rb-both-mode.rb +0 -4
  1405. data/acceptance/data-collector/.acceptance/data-collector-test/files/default/client-rb-client-mode.rb +0 -4
  1406. data/acceptance/data-collector/.acceptance/data-collector-test/files/default/client-rb-no-endpoint.rb +0 -2
  1407. data/acceptance/data-collector/.acceptance/data-collector-test/files/default/client-rb-solo-mode.rb +0 -4
  1408. data/acceptance/data-collector/.acceptance/data-collector-test/files/default/config.ru +0 -2
  1409. data/acceptance/data-collector/.acceptance/data-collector-test/metadata.rb +0 -7
  1410. data/acceptance/data-collector/.acceptance/data-collector-test/recipes/default.rb +0 -38
  1411. data/acceptance/data-collector/.kitchen.yml +0 -9
  1412. data/acceptance/data-collector/Berksfile +0 -3
  1413. data/acceptance/data-collector/test/integration/default/serverspec/default_spec.rb +0 -204
  1414. data/acceptance/data-collector/test/integration/helpers/serverspec/Gemfile +0 -8
  1415. data/acceptance/fips/.acceptance/acceptance-cookbook/.gitignore +0 -2
  1416. data/acceptance/fips/.acceptance/acceptance-cookbook/metadata.rb +0 -2
  1417. data/acceptance/fips/.acceptance/acceptance-cookbook/recipes/destroy.rb +0 -1
  1418. data/acceptance/fips/.acceptance/acceptance-cookbook/recipes/provision.rb +0 -1
  1419. data/acceptance/fips/.acceptance/acceptance-cookbook/recipes/verify.rb +0 -1
  1420. data/acceptance/fips/.kitchen.yml +0 -8
  1421. data/acceptance/fips/test/integration/fips-integration/serverspec/Gemfile +0 -9
  1422. data/acceptance/fips/test/integration/fips-integration/serverspec/fips-integration_spec.rb +0 -52
  1423. data/acceptance/fips/test/integration/fips-unit-functional/serverspec/Gemfile +0 -7
  1424. data/acceptance/fips/test/integration/fips-unit-functional/serverspec/fips-unit-functional_spec.rb +0 -56
  1425. data/acceptance/omnitruck/.acceptance/acceptance-cookbook/.gitignore +0 -2
  1426. data/acceptance/omnitruck/.acceptance/acceptance-cookbook/metadata.rb +0 -1
  1427. data/acceptance/omnitruck/.acceptance/acceptance-cookbook/recipes/destroy.rb +0 -1
  1428. data/acceptance/omnitruck/.acceptance/acceptance-cookbook/recipes/provision.rb +0 -1
  1429. data/acceptance/omnitruck/.acceptance/acceptance-cookbook/recipes/verify.rb +0 -61
  1430. data/acceptance/top-cookbooks/.acceptance/acceptance-cookbook/.gitignore +0 -2
  1431. data/acceptance/top-cookbooks/.acceptance/acceptance-cookbook/libraries/cookbook_kitchen.rb +0 -43
  1432. data/acceptance/top-cookbooks/.acceptance/acceptance-cookbook/libraries/top_cookbooks.rb +0 -45
  1433. data/acceptance/top-cookbooks/.acceptance/acceptance-cookbook/metadata.rb +0 -3
  1434. data/acceptance/top-cookbooks/.acceptance/acceptance-cookbook/recipes/destroy.rb +0 -1
  1435. data/acceptance/top-cookbooks/.acceptance/acceptance-cookbook/recipes/provision.rb +0 -1
  1436. data/acceptance/top-cookbooks/.acceptance/acceptance-cookbook/recipes/verify.rb +0 -1
  1437. data/acceptance/top-cookbooks/.gitignore +0 -1
  1438. data/acceptance/top-cookbooks/.kitchen.chocolatey.yml +0 -6
  1439. data/acceptance/top-cookbooks/.kitchen.docker.yml +0 -9
  1440. data/acceptance/top-cookbooks/.kitchen.git.yml +0 -11
  1441. data/acceptance/top-cookbooks/.kitchen.iis.yml +0 -4
  1442. data/acceptance/top-cookbooks/.kitchen.learn-the-basics-rhel.yml +0 -7
  1443. data/acceptance/top-cookbooks/.kitchen.learn-the-basics-ubuntu.yml +0 -7
  1444. data/acceptance/top-cookbooks/.kitchen.learn-the-basics-windows.yml +0 -7
  1445. data/acceptance/top-cookbooks/.kitchen.powershell.yml +0 -4
  1446. data/acceptance/top-cookbooks/.kitchen.sql_server.yml +0 -5
  1447. data/acceptance/top-cookbooks/.kitchen.winbox.yml +0 -8
  1448. data/acceptance/top-cookbooks/.kitchen.windows.yml +0 -38
  1449. data/acceptance/trivial/.acceptance/acceptance-cookbook/.gitignore +0 -2
  1450. data/acceptance/trivial/.acceptance/acceptance-cookbook/metadata.rb +0 -2
  1451. data/acceptance/trivial/.acceptance/acceptance-cookbook/recipes/destroy.rb +0 -1
  1452. data/acceptance/trivial/.acceptance/acceptance-cookbook/recipes/provision.rb +0 -1
  1453. data/acceptance/trivial/.acceptance/acceptance-cookbook/recipes/verify.rb +0 -1
  1454. data/acceptance/trivial/.kitchen.yml +0 -7
  1455. data/acceptance/trivial/test/integration/chef-current-install/inspec/chef_client_spec.rb +0 -5
  1456. data/acceptance/windows-service/.acceptance/acceptance-cookbook/.gitignore +0 -2
  1457. data/acceptance/windows-service/.acceptance/acceptance-cookbook/metadata.rb +0 -2
  1458. data/acceptance/windows-service/.acceptance/acceptance-cookbook/recipes/destroy.rb +0 -1
  1459. data/acceptance/windows-service/.acceptance/acceptance-cookbook/recipes/provision.rb +0 -1
  1460. data/acceptance/windows-service/.acceptance/acceptance-cookbook/recipes/verify.rb +0 -1
  1461. data/acceptance/windows-service/.kitchen.yml +0 -7
  1462. data/acceptance/windows-service/test/integration/chef-windows-service/inspec/chef_windows_service_spec.rb +0 -58
  1463. data/distro/common/html/_sources/ctl_chef_client.txt +0 -36
  1464. data/distro/common/html/_sources/ctl_chef_server.txt +0 -341
  1465. data/distro/common/html/_sources/ctl_chef_shell.txt +0 -15
  1466. data/distro/common/html/_sources/ctl_chef_solo.txt +0 -25
  1467. data/distro/common/html/_sources/index.txt +0 -135
  1468. data/distro/common/html/_sources/knife.txt +0 -74
  1469. data/distro/common/html/_sources/knife_bootstrap.txt +0 -56
  1470. data/distro/common/html/_sources/knife_client.txt +0 -151
  1471. data/distro/common/html/_sources/knife_common_options.txt +0 -6
  1472. data/distro/common/html/_sources/knife_configure.txt +0 -29
  1473. data/distro/common/html/_sources/knife_cookbook.txt +0 -236
  1474. data/distro/common/html/_sources/knife_cookbook_site.txt +0 -157
  1475. data/distro/common/html/_sources/knife_data_bag.txt +0 -160
  1476. data/distro/common/html/_sources/knife_delete.txt +0 -26
  1477. data/distro/common/html/_sources/knife_deps.txt +0 -61
  1478. data/distro/common/html/_sources/knife_diff.txt +0 -34
  1479. data/distro/common/html/_sources/knife_download.txt +0 -44
  1480. data/distro/common/html/_sources/knife_edit.txt +0 -26
  1481. data/distro/common/html/_sources/knife_environment.txt +0 -158
  1482. data/distro/common/html/_sources/knife_exec.txt +0 -47
  1483. data/distro/common/html/_sources/knife_index_rebuild.txt +0 -21
  1484. data/distro/common/html/_sources/knife_list.txt +0 -33
  1485. data/distro/common/html/_sources/knife_node.txt +0 -250
  1486. data/distro/common/html/_sources/knife_raw.txt +0 -35
  1487. data/distro/common/html/_sources/knife_recipe_list.txt +0 -23
  1488. data/distro/common/html/_sources/knife_role.txt +0 -157
  1489. data/distro/common/html/_sources/knife_search.txt +0 -53
  1490. data/distro/common/html/_sources/knife_serve.txt +0 -19
  1491. data/distro/common/html/_sources/knife_show.txt +0 -27
  1492. data/distro/common/html/_sources/knife_ssh.txt +0 -43
  1493. data/distro/common/html/_sources/knife_ssl_check.txt +0 -41
  1494. data/distro/common/html/_sources/knife_ssl_fetch.txt +0 -41
  1495. data/distro/common/html/_sources/knife_status.txt +0 -37
  1496. data/distro/common/html/_sources/knife_tag.txt +0 -69
  1497. data/distro/common/html/_sources/knife_upload.txt +0 -49
  1498. data/distro/common/html/_sources/knife_user.txt +0 -127
  1499. data/distro/common/html/_sources/knife_using.txt +0 -43
  1500. data/distro/common/html/_sources/knife_xargs.txt +0 -30
  1501. data/distro/common/html/_static/ajax-loader.gif +0 -0
  1502. data/distro/common/html/_static/basic.css +0 -537
  1503. data/distro/common/html/_static/chef.ico +0 -0
  1504. data/distro/common/html/_static/chef_html_logo.png +0 -0
  1505. data/distro/common/html/_static/comment-bright.png +0 -0
  1506. data/distro/common/html/_static/comment-close.png +0 -0
  1507. data/distro/common/html/_static/comment.png +0 -0
  1508. data/distro/common/html/_static/contents.png +0 -0
  1509. data/distro/common/html/_static/doctools.js +0 -238
  1510. data/distro/common/html/_static/down-pressed.png +0 -0
  1511. data/distro/common/html/_static/down.png +0 -0
  1512. data/distro/common/html/_static/file.png +0 -0
  1513. data/distro/common/html/_static/guide.css +0 -505
  1514. data/distro/common/html/_static/jquery.js +0 -2
  1515. data/distro/common/html/_static/minus.png +0 -0
  1516. data/distro/common/html/_static/navigation.png +0 -0
  1517. data/distro/common/html/_static/plus.png +0 -0
  1518. data/distro/common/html/_static/pygments.css +0 -62
  1519. data/distro/common/html/_static/searchtools.js +0 -622
  1520. data/distro/common/html/_static/underscore.js +0 -31
  1521. data/distro/common/html/_static/up-pressed.png +0 -0
  1522. data/distro/common/html/_static/up.png +0 -0
  1523. data/distro/common/html/_static/websupport.js +0 -808
  1524. data/distro/common/html/ctl_chef_client.html +0 -270
  1525. data/distro/common/html/ctl_chef_server.html +0 -728
  1526. data/distro/common/html/ctl_chef_shell.html +0 -163
  1527. data/distro/common/html/ctl_chef_solo.html +0 -194
  1528. data/distro/common/html/index.html +0 -202
  1529. data/distro/common/html/knife.html +0 -170
  1530. data/distro/common/html/knife_bootstrap.html +0 -285
  1531. data/distro/common/html/knife_client.html +0 -285
  1532. data/distro/common/html/knife_common_options.html +0 -96
  1533. data/distro/common/html/knife_configure.html +0 -105
  1534. data/distro/common/html/knife_cookbook.html +0 -487
  1535. data/distro/common/html/knife_cookbook_site.html +0 -375
  1536. data/distro/common/html/knife_data_bag.html +0 -374
  1537. data/distro/common/html/knife_delete.html +0 -93
  1538. data/distro/common/html/knife_deps.html +0 -143
  1539. data/distro/common/html/knife_diff.html +0 -123
  1540. data/distro/common/html/knife_download.html +0 -145
  1541. data/distro/common/html/knife_edit.html +0 -89
  1542. data/distro/common/html/knife_environment.html +0 -322
  1543. data/distro/common/html/knife_exec.html +0 -220
  1544. data/distro/common/html/knife_index_rebuild.html +0 -83
  1545. data/distro/common/html/knife_list.html +0 -114
  1546. data/distro/common/html/knife_node.html +0 -458
  1547. data/distro/common/html/knife_raw.html +0 -110
  1548. data/distro/common/html/knife_recipe_list.html +0 -91
  1549. data/distro/common/html/knife_role.html +0 -295
  1550. data/distro/common/html/knife_search.html +0 -203
  1551. data/distro/common/html/knife_serve.html +0 -79
  1552. data/distro/common/html/knife_show.html +0 -104
  1553. data/distro/common/html/knife_ssh.html +0 -177
  1554. data/distro/common/html/knife_ssl_check.html +0 -151
  1555. data/distro/common/html/knife_ssl_fetch.html +0 -151
  1556. data/distro/common/html/knife_status.html +0 -144
  1557. data/distro/common/html/knife_tag.html +0 -138
  1558. data/distro/common/html/knife_upload.html +0 -153
  1559. data/distro/common/html/knife_user.html +0 -242
  1560. data/distro/common/html/knife_using.html +0 -210
  1561. data/distro/common/html/knife_xargs.html +0 -122
  1562. data/distro/common/html/objects.inv +0 -0
  1563. data/distro/common/html/search.html +0 -82
  1564. data/distro/common/html/searchindex.js +0 -1
  1565. data/distro/common/man/man1/README.md +0 -58
  1566. data/distro/common/man/man1/chef-shell.1 +0 -194
  1567. data/distro/common/man/man1/knife-bootstrap.1 +0 -215
  1568. data/distro/common/man/man1/knife-client.1 +0 -443
  1569. data/distro/common/man/man1/knife-configure.1 +0 -161
  1570. data/distro/common/man/man1/knife-cookbook-site.1 +0 -552
  1571. data/distro/common/man/man1/knife-cookbook.1 +0 -770
  1572. data/distro/common/man/man1/knife-data-bag.1 +0 -617
  1573. data/distro/common/man/man1/knife-delete.1 +0 -127
  1574. data/distro/common/man/man1/knife-deps.1 +0 -246
  1575. data/distro/common/man/man1/knife-diff.1 +0 -226
  1576. data/distro/common/man/man1/knife-download.1 +0 -258
  1577. data/distro/common/man/man1/knife-edit.1 +0 -121
  1578. data/distro/common/man/man1/knife-environment.1 +0 -496
  1579. data/distro/common/man/man1/knife-exec.1 +0 -362
  1580. data/distro/common/man/man1/knife-index-rebuild.1 +0 -63
  1581. data/distro/common/man/man1/knife-list.1 +0 -174
  1582. data/distro/common/man/man1/knife-node.1 +0 -716
  1583. data/distro/common/man/man1/knife-raw.1 +0 -172
  1584. data/distro/common/man/man1/knife-recipe-list.1 +0 -85
  1585. data/distro/common/man/man1/knife-role.1 +0 -426
  1586. data/distro/common/man/man1/knife-search.1 +0 -359
  1587. data/distro/common/man/man1/knife-serve.1 +0 -109
  1588. data/distro/common/man/man1/knife-show.1 +0 -160
  1589. data/distro/common/man/man1/knife-ssh.1 +0 -284
  1590. data/distro/common/man/man1/knife-ssl-check.1 +0 -207
  1591. data/distro/common/man/man1/knife-ssl-fetch.1 +0 -207
  1592. data/distro/common/man/man1/knife-status.1 +0 -234
  1593. data/distro/common/man/man1/knife-tag.1 +0 -189
  1594. data/distro/common/man/man1/knife-upload.1 +0 -280
  1595. data/distro/common/man/man1/knife-user.1 +0 -356
  1596. data/distro/common/man/man1/knife-xargs.1 +0 -189
  1597. data/distro/common/man/man1/knife.1 +0 -332
  1598. data/distro/common/man/man8/chef-apply.8 +0 -86
  1599. data/distro/common/man/man8/chef-client.8 +0 -398
  1600. data/distro/common/man/man8/chef-solo.8 +0 -260
  1601. data/distro/common/markdown/README +0 -3
  1602. data/distro/common/markdown/man1/chef-shell.mkd +0 -195
  1603. data/distro/common/markdown/man1/knife-bootstrap.mkd +0 -141
  1604. data/distro/common/markdown/man1/knife-client.mkd +0 -103
  1605. data/distro/common/markdown/man1/knife-configure.mkd +0 -71
  1606. data/distro/common/markdown/man1/knife-cookbook-site.mkd +0 -123
  1607. data/distro/common/markdown/man1/knife-cookbook.mkd +0 -263
  1608. data/distro/common/markdown/man1/knife-data-bag.mkd +0 -121
  1609. data/distro/common/markdown/man1/knife-environment.mkd +0 -151
  1610. data/distro/common/markdown/man1/knife-exec.mkd +0 -42
  1611. data/distro/common/markdown/man1/knife-index.mkd +0 -30
  1612. data/distro/common/markdown/man1/knife-node.mkd +0 -130
  1613. data/distro/common/markdown/man1/knife-role.mkd +0 -85
  1614. data/distro/common/markdown/man1/knife-search.mkd +0 -180
  1615. data/distro/common/markdown/man1/knife-ssh.mkd +0 -69
  1616. data/distro/common/markdown/man1/knife-status.mkd +0 -36
  1617. data/distro/common/markdown/man1/knife-tag.mkd +0 -39
  1618. data/distro/common/markdown/man1/knife.mkd +0 -213
  1619. data/distro/common/markdown/man8/chef-client.mkd +0 -75
  1620. data/distro/common/markdown/man8/chef-expander.mkd +0 -81
  1621. data/distro/common/markdown/man8/chef-expanderctl.mkd +0 -57
  1622. data/distro/common/markdown/man8/chef-server-webui.mkd +0 -121
  1623. data/distro/common/markdown/man8/chef-server.mkd +0 -120
  1624. data/distro/common/markdown/man8/chef-solo.mkd +0 -107
  1625. data/distro/common/markdown/man8/chef-solr.mkd +0 -89
  1626. data/distro/powershell/chef/chef.psm1 +0 -442
  1627. data/lib-backcompat/chef/chef_fs/file_system/acl_entry.rb +0 -5
  1628. data/lib-backcompat/chef/chef_fs/file_system/already_exists_error.rb +0 -20
  1629. data/lib-backcompat/chef/chef_fs/file_system/chef_repository_file_system_root_dir.rb +0 -5
  1630. data/lib-backcompat/chef/chef_fs/file_system/chef_server_root_dir.rb +0 -5
  1631. data/lib-backcompat/chef/chef_fs/file_system/cookbook_frozen_error.rb +0 -20
  1632. data/lib-backcompat/chef/chef_fs/file_system/default_environment_cannot_be_modified_error.rb +0 -20
  1633. data/lib-backcompat/chef/chef_fs/file_system/file_system_error.rb +0 -20
  1634. data/lib-backcompat/chef/chef_fs/file_system/must_delete_recursively_error.rb +0 -20
  1635. data/lib-backcompat/chef/chef_fs/file_system/not_found_error.rb +0 -20
  1636. data/lib-backcompat/chef/chef_fs/file_system/operation_failed_error.rb +0 -20
  1637. data/lib-backcompat/chef/chef_fs/file_system/operation_not_allowed_error.rb +0 -20
  1638. data/lib-backcompat/chef/chef_fs/file_system/repository/chef_repository_file_system_acls_dir.rb +0 -5
  1639. data/lib-backcompat/chef/chef_fs/file_system/repository/chef_repository_file_system_client_keys_dir.rb +0 -5
  1640. data/lib-backcompat/chef/chef_fs/file_system/repository/chef_repository_file_system_entry.rb +0 -6
  1641. data/lib-backcompat/chef/chef_fs/file_system/repository/chef_repository_file_system_policies_dir.rb +0 -5
  1642. data/lib-backcompat/chef/chef_fs/file_system/repository/file_system_root_dir.rb +0 -34
  1643. data/lib/chef/deprecation/mixin/template.rb +0 -48
  1644. data/lib/chef/deprecation/provider/cookbook_file.rb +0 -54
  1645. data/lib/chef/deprecation/provider/file.rb +0 -198
  1646. data/lib/chef/deprecation/provider/remote_directory.rb +0 -52
  1647. data/lib/chef/deprecation/provider/remote_file.rb +0 -85
  1648. data/lib/chef/deprecation/provider/template.rb +0 -63
  1649. data/lib/chef/dsl/method_missing.rb +0 -75
  1650. data/lib/chef/knife/core/custom_manifest_loader.rb +0 -69
  1651. data/lib/chef/knife/help.rb +0 -101
  1652. data/lib/chef/knife/help_topics.rb +0 -4
  1653. data/lib/chef/knife/index_rebuild.rb +0 -133
  1654. data/lib/chef/mixin/command.rb +0 -194
  1655. data/lib/chef/mixin/command/unix.rb +0 -220
  1656. data/lib/chef/mixin/command/windows.rb +0 -71
  1657. data/lib/chef/mixin/language.rb +0 -48
  1658. data/lib/chef/mixin/recipe_definition_dsl_core.rb +0 -35
  1659. data/lib/chef/provider/deploy.rb +0 -476
  1660. data/lib/chef/provider/deploy/revision.rb +0 -107
  1661. data/lib/chef/provider/deploy/timestamped.rb +0 -34
  1662. data/lib/chef/provider/env/windows.rb +0 -72
  1663. data/lib/chef/provider/erl_call.rb +0 -108
  1664. data/lib/chef/provider/package/easy_install.rb +0 -135
  1665. data/lib/chef/provider/package/yum/yum-dump.py +0 -307
  1666. data/lib/chef/resource/deploy.rb +0 -443
  1667. data/lib/chef/resource/deploy_revision.rb +0 -31
  1668. data/lib/chef/resource/env.rb +0 -65
  1669. data/lib/chef/resource/erl_call.rb +0 -85
  1670. data/lib/chef/rest.rb +0 -210
  1671. data/lib/chef/shell_out.rb +0 -13
  1672. data/lib/chef/tasks/chef_repo.rake +0 -200
  1673. data/spec/functional/assets/yumrepo/chef_rpm-1.10-1.fc24.i686.rpm +0 -0
  1674. data/spec/functional/assets/yumrepo/chef_rpm-1.10-1.fc24.src.rpm +0 -0
  1675. data/spec/functional/assets/yumrepo/chef_rpm-1.10-1.fc24.x86_64.rpm +0 -0
  1676. data/spec/functional/assets/yumrepo/chef_rpm-1.2-1.fc24.i686.rpm +0 -0
  1677. data/spec/functional/assets/yumrepo/chef_rpm-1.2-1.fc24.src.rpm +0 -0
  1678. data/spec/functional/assets/yumrepo/chef_rpm-1.2-1.fc24.x86_64.rpm +0 -0
  1679. data/spec/functional/assets/yumrepo/repodata/313329137b55fd333b2dc66394a6661a2befa6cc535d8460d92a4a78a9c581f0-primary.sqlite.bz2 +0 -0
  1680. data/spec/functional/assets/yumrepo/repodata/31ac4db5d5ac593728fcc26aef82b7b93c4cc4dbec843786b1845b939b658553-other.xml.gz +0 -0
  1681. data/spec/functional/assets/yumrepo/repodata/4ac40fa3c6728c1401318e2e20a997436624e83dcf7a5f952b851ef422637773-filelists.sqlite.bz2 +0 -0
  1682. data/spec/functional/assets/yumrepo/repodata/66391e53f0510b98b3f0b79f40ba1048026d9a1ef20905d9c40ba6f5411f3243-primary.xml.gz +0 -0
  1683. data/spec/functional/assets/yumrepo/repodata/8b34697595fcc87928e12d24644dda9462c3857bd932861e28bc77ae1f31be16-filelists.xml.gz +0 -0
  1684. data/spec/functional/assets/yumrepo/repodata/b97cca3fe14bcf06c52be4449b6108f7731239ff221111dcce8aada5467f60dc-other.sqlite.bz2 +0 -0
  1685. data/spec/functional/resource/deploy_revision_spec.rb +0 -881
  1686. data/spec/functional/resource/env_spec.rb +0 -192
  1687. data/spec/functional/resource/user/useradd_spec.rb +0 -709
  1688. data/spec/functional/rest_spec.rb +0 -95
  1689. data/spec/unit/knife/core/custom_manifest_loader_spec.rb +0 -41
  1690. data/spec/unit/knife/index_rebuild_spec.rb +0 -125
  1691. data/spec/unit/knife/knife_help.rb +0 -92
  1692. data/spec/unit/lib_backcompat_spec.rb +0 -34
  1693. data/spec/unit/mixin/command_spec.rb +0 -107
  1694. data/spec/unit/platform_spec.rb +0 -269
  1695. data/spec/unit/provider/breakpoint_spec.rb +0 -53
  1696. data/spec/unit/provider/deploy/revision_spec.rb +0 -110
  1697. data/spec/unit/provider/deploy/timestamped_spec.rb +0 -40
  1698. data/spec/unit/provider/deploy_spec.rb +0 -641
  1699. data/spec/unit/provider/env/windows_spec.rb +0 -103
  1700. data/spec/unit/provider/erl_call_spec.rb +0 -85
  1701. data/spec/unit/provider/package/easy_install_spec.rb +0 -114
  1702. data/spec/unit/provider/package/yum_spec.rb +0 -2294
  1703. data/spec/unit/resource/deploy_spec.rb +0 -283
  1704. data/spec/unit/resource/easy_install_package_spec.rb +0 -39
  1705. data/spec/unit/resource/env_spec.rb +0 -85
  1706. data/spec/unit/resource/erl_call_spec.rb +0 -81
  1707. data/spec/unit/rest/auth_credentials_spec.rb +0 -292
  1708. data/spec/unit/rest_spec.rb +0 -753
  1709. data/spec/unit/shell_out_spec.rb +0 -18
  1710. data/tasks/bin/bundle-platform +0 -20
  1711. data/tasks/bin/bundle-platform.bat +0 -2
  1712. data/tasks/bin/bundler_patch.rb +0 -27
  1713. data/tasks/bin/create-override-gemfile +0 -110
  1714. data/tasks/bin/gem-version-diff +0 -37
  1715. data/tasks/bundle.rb +0 -97
  1716. data/tasks/bundle_util.rb +0 -110
  1717. data/tasks/cbgb.rb +0 -84
  1718. data/tasks/changelog.rb +0 -33
  1719. data/tasks/gemfile_util.rb +0 -390
@@ -1,270 +0,0 @@
1
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
-
4
-
5
- <html xmlns="http://www.w3.org/1999/xhtml">
6
- <head>
7
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
8
-
9
- <title>chef-client &mdash; chef-client Man Pages</title>
10
-
11
- <link rel="stylesheet" href="_static/guide.css" type="text/css" />
12
- <link rel="stylesheet" href="_static/pygments.css" type="text/css" />
13
-
14
- <script type="text/javascript">
15
- var DOCUMENTATION_OPTIONS = {
16
- URL_ROOT: './',
17
- VERSION: '',
18
- COLLAPSE_INDEX: false,
19
- FILE_SUFFIX: '.html',
20
- HAS_SOURCE: true
21
- };
22
- </script>
23
- <script type="text/javascript" src="_static/jquery.js"></script>
24
- <script type="text/javascript" src="_static/underscore.js"></script>
25
- <script type="text/javascript" src="_static/doctools.js"></script>
26
-
27
-
28
- </head>
29
- <body>
30
- <div style="background-color: #212c35; text-align: left; padding: 0px 0px 0px 0px">
31
- <a href="http://docs.getchef.com/"><img src="_static/chef_html_logo.png" border="0" alt="Chef"/></a>
32
- </div>
33
-
34
-
35
-
36
-
37
- <div class="document">
38
- <div class="documentwrapper">
39
-
40
- <div class="body">
41
-
42
- <div class="section" id="chef-client">
43
- <h1>chef-client<a class="headerlink" href="#chef-client" title="Permalink to this headline">¶</a></h1>
44
- <p>A chef-client is an agent that runs locally on every node that is under management by Chef. When a chef-client is run, it will perform all of the steps that are required to bring the node into the expected state, including:</p>
45
- <ul class="simple">
46
- <li>Registering and authenticating the node with the Chef server</li>
47
- <li>Building the node object</li>
48
- <li>Synchronizing cookbooks</li>
49
- <li>Compiling the resource collection by loading each of the required cookbooks, including recipes, attributes, and all other dependencies</li>
50
- <li>Taking the appropriate and required actions to configure the node</li>
51
- <li>Looking for exceptions and notifications, handling each as required</li>
52
- </ul>
53
- <p>The chef-client executable is run as a command-line tool.</p>
54
- <div class="admonition note">
55
- <p class="first admonition-title">Note</p>
56
- <p>A client.rb file is used to specify the configuration details for the chef-client.</p>
57
- <ul class="last simple">
58
- <li>This file is loaded every time this executable is run</li>
59
- <li>On UNIX- and Linux-based machines, the default location for this file is <tt class="docutils literal"><span class="pre">/etc/chef/client.rb</span></tt>; on Microsoft Windows machines, the default location for this file is <tt class="docutils literal"><span class="pre">C:\chef\client.rb</span></tt>; use the <tt class="docutils literal"><span class="pre">--config</span></tt> option from the command line to change this location</li>
60
- <li>This file is not created by default</li>
61
- <li>When a client.rb file is present in this directory, the settings contained within that file will override the default configuration settings</li>
62
- </ul>
63
- </div>
64
- <div class="section" id="options">
65
- <h2>Options<a class="headerlink" href="#options" title="Permalink to this headline">¶</a></h2>
66
- <p>This command has the following syntax:</p>
67
- <div class="highlight-python"><div class="highlight"><pre>chef-client OPTION VALUE OPTION VALUE ...
68
- </pre></div>
69
- </div>
70
- <p>This command has the following options:</p>
71
- <dl class="docutils">
72
- <dt><tt class="docutils literal"><span class="pre">-A</span></tt>, <tt class="docutils literal"><span class="pre">--fatal-windows-admin-check</span></tt></dt>
73
- <dd>Use to cause a chef-client run to fail when the chef-client does not have administrator privileges in Microsoft Windows.</dd>
74
- <dt><tt class="docutils literal"><span class="pre">--chef-zero-port</span> <span class="pre">PORT</span></tt></dt>
75
- <dd>The port on which chef-zero will listen. If a port is not specified&#8212;individually, as range of ports, or from the <tt class="docutils literal"><span class="pre">chef_zero.port</span></tt> setting in the client.rb file&#8212;the chef-client will scan for ports between 8889-9999 and will pick the first port that is available.</dd>
76
- <dt><tt class="docutils literal"><span class="pre">-F</span> <span class="pre">FORMAT</span></tt>, <tt class="docutils literal"><span class="pre">--format</span> <span class="pre">FORMAT</span></tt></dt>
77
- <dd><p class="first">The output format: <tt class="docutils literal"><span class="pre">doc</span></tt> (default) or <tt class="docutils literal"><span class="pre">min</span></tt>.</p>
78
- <p>Use <tt class="docutils literal"><span class="pre">doc</span></tt> to print the progress of the chef-client run using full strings that display a summary of updates as they occur.</p>
79
- <p>Use <tt class="docutils literal"><span class="pre">min</span></tt> to print the progress of the chef-client run using single characters. A summary of updates is printed at the end of the chef-client run. A dot (<tt class="docutils literal"><span class="pre">.</span></tt>) is printed for events that do not have meaningful status information, such as loading a file or synchronizing a cookbook. For resources, a dot (<tt class="docutils literal"><span class="pre">.</span></tt>) is printed when the resource is up to date, an <tt class="docutils literal"><span class="pre">S</span></tt> is printed when the resource is skipped by <tt class="docutils literal"><span class="pre">not_if</span></tt> or <tt class="docutils literal"><span class="pre">only_if</span></tt>, and a <tt class="docutils literal"><span class="pre">U</span></tt> is printed when the resource is updated.</p>
80
- <p class="last">Other formatting options are available when those formatters are configured in the client.rb file using the <tt class="docutils literal"><span class="pre">add_formatter</span></tt> option.</p>
81
- </dd>
82
- <dt><tt class="docutils literal"><span class="pre">--force-formatter</span></tt></dt>
83
- <dd>Use to show formatter output instead of logger output.</dd>
84
- <dt><tt class="docutils literal"><span class="pre">--force-logger</span></tt></dt>
85
- <dd>Use to show logger output instead of formatter output.</dd>
86
- <dt><tt class="docutils literal"><span class="pre">-g</span> <span class="pre">GROUP</span></tt>, <tt class="docutils literal"><span class="pre">--group</span> <span class="pre">GROUP</span></tt></dt>
87
- <dd>The name of the group that owns a process. This is required when starting any executable as a daemon.</dd>
88
- <dt><tt class="docutils literal"><span class="pre">-h</span></tt>, <tt class="docutils literal"><span class="pre">--help</span></tt></dt>
89
- <dd>Shows help for the command.</dd>
90
- <dt><tt class="docutils literal"><span class="pre">-i</span> <span class="pre">SECONDS</span></tt>, <tt class="docutils literal"><span class="pre">--interval</span> <span class="pre">SECONDS</span></tt></dt>
91
- <dd>The frequency (in seconds) at which the chef-client runs. When the chef-client is run at intervals, <tt class="docutils literal"><span class="pre">--splay</span></tt> and <tt class="docutils literal"><span class="pre">--interval</span></tt> values are applied before the chef-client run. Default value: <tt class="docutils literal"><span class="pre">1800</span></tt>.</dd>
92
- <dt><tt class="docutils literal"><span class="pre">-j</span> <span class="pre">PATH</span></tt>, <tt class="docutils literal"><span class="pre">--json-attributes</span> <span class="pre">PATH</span></tt></dt>
93
- <dd><p class="first">The path to a file that contains JSON data.</p>
94
- <p>Use this option to define a <tt class="docutils literal"><span class="pre">run_list</span></tt> object. For example, a JSON file similar to:</p>
95
- <div class="highlight-javascript"><div class="highlight"><pre><span class="s2">&quot;run_list&quot;</span><span class="o">:</span> <span class="p">[</span>
96
- <span class="s2">&quot;recipe[base]&quot;</span><span class="p">,</span>
97
- <span class="s2">&quot;recipe[foo]&quot;</span><span class="p">,</span>
98
- <span class="s2">&quot;recipe[bar]&quot;</span><span class="p">,</span>
99
- <span class="s2">&quot;role[webserver]&quot;</span>
100
- <span class="p">],</span>
101
- </pre></div>
102
- </div>
103
- <p>may be used by running <tt class="docutils literal"><span class="pre">chef-client</span> <span class="pre">-j</span> <span class="pre">path/to/file.json</span></tt>.</p>
104
- <p>In certain situations this option may be used to update <tt class="docutils literal"><span class="pre">normal</span></tt> attributes.</p>
105
- <div class="last admonition warning">
106
- <p class="first admonition-title">Warning</p>
107
- <p>Any other attribute type that is contained in this JSON file will be treated as a <tt class="docutils literal"><span class="pre">normal</span></tt> attribute. For example, attempting to update <tt class="docutils literal"><span class="pre">override</span></tt> attributes using the <tt class="docutils literal"><span class="pre">-j</span></tt> option:</p>
108
- <div class="highlight-javascript"><div class="highlight"><pre><span class="p">{</span>
109
- <span class="s2">&quot;name&quot;</span><span class="o">:</span> <span class="s2">&quot;dev-99&quot;</span><span class="p">,</span>
110
- <span class="s2">&quot;description&quot;</span><span class="o">:</span> <span class="s2">&quot;Install some stuff&quot;</span><span class="p">,</span>
111
- <span class="s2">&quot;override_attributes&quot;</span><span class="o">:</span> <span class="p">{</span>
112
- <span class="s2">&quot;apptastic&quot;</span><span class="o">:</span> <span class="p">{</span>
113
- <span class="s2">&quot;enable_apptastic&quot;</span><span class="o">:</span> <span class="s2">&quot;false&quot;</span><span class="p">,</span>
114
- <span class="s2">&quot;apptastic_tier_name&quot;</span><span class="o">:</span> <span class="s2">&quot;dev-99.bomb.com&quot;</span>
115
- <span class="p">}</span>
116
- <span class="p">}</span>
117
- <span class="p">}</span>
118
- </pre></div>
119
- </div>
120
- <p>will result in a node object similar to:</p>
121
- <div class="last highlight-javascript"><div class="highlight"><pre><span class="p">{</span>
122
- <span class="s2">&quot;name&quot;</span><span class="o">:</span> <span class="s2">&quot;maybe-dev-99&quot;</span><span class="p">,</span>
123
- <span class="s2">&quot;normal&quot;</span><span class="o">:</span> <span class="p">{</span>
124
- <span class="s2">&quot;name&quot;</span><span class="o">:</span> <span class="s2">&quot;dev-99&quot;</span><span class="p">,</span>
125
- <span class="s2">&quot;description&quot;</span><span class="o">:</span> <span class="s2">&quot;Install some stuff&quot;</span><span class="p">,</span>
126
- <span class="s2">&quot;override_attributes&quot;</span><span class="o">:</span> <span class="p">{</span>
127
- <span class="s2">&quot;apptastic&quot;</span><span class="o">:</span> <span class="p">{</span>
128
- <span class="s2">&quot;enable_apptastic&quot;</span><span class="o">:</span> <span class="s2">&quot;false&quot;</span><span class="p">,</span>
129
- <span class="s2">&quot;apptastic_tier_name&quot;</span><span class="o">:</span> <span class="s2">&quot;dev-99.bomb.com&quot;</span>
130
- <span class="p">}</span>
131
- <span class="p">}</span>
132
- <span class="p">}</span>
133
- <span class="p">}</span>
134
- </pre></div>
135
- </div>
136
- </div>
137
- </dd>
138
- <dt><tt class="docutils literal"><span class="pre">-k</span> <span class="pre">KEY_FILE</span></tt>, <tt class="docutils literal"><span class="pre">--client_key</span> <span class="pre">KEY_FILE</span></tt></dt>
139
- <dd>The location of the file which contains the client key. Default value: <tt class="docutils literal"><span class="pre">/etc/chef/client.pem</span></tt>.</dd>
140
- <dt><tt class="docutils literal"><span class="pre">-K</span> <span class="pre">KEY_FILE</span></tt>, <tt class="docutils literal"><span class="pre">--validation_key</span> <span class="pre">KEY_FILE</span></tt></dt>
141
- <dd>The location of the file which contains the key used when a chef-client is registered with a Chef server. A validation key is signed using the <tt class="docutils literal"><span class="pre">validation_client_name</span></tt> for authentication. Default value: <tt class="docutils literal"><span class="pre">/etc/chef/validation.pem</span></tt>.</dd>
142
- <dt><tt class="docutils literal"><span class="pre">-l</span> <span class="pre">LEVEL</span></tt>, <tt class="docutils literal"><span class="pre">--log_level</span> <span class="pre">LEVEL</span></tt></dt>
143
- <dd>The level of logging that will be stored in a log file.</dd>
144
- <dt><tt class="docutils literal"><span class="pre">-L</span> <span class="pre">LOGLOCATION</span></tt>, <tt class="docutils literal"><span class="pre">--logfile</span> <span class="pre">c</span></tt></dt>
145
- <dd>The location in which log file output files will be saved. If this location is set to something other than <tt class="docutils literal"><span class="pre">STDOUT</span></tt>, standard output logging will still be performed (otherwise there would be no output other than to a file). This is recommended when starting any executable as a daemon. Default value: <tt class="docutils literal"><span class="pre">STDOUT</span></tt>.</dd>
146
- <dt><tt class="docutils literal"><span class="pre">--[no-]color</span></tt></dt>
147
- <dd>Use to view colored output. Default setting: <tt class="docutils literal"><span class="pre">--color</span></tt>.</dd>
148
- <dt><tt class="docutils literal"><span class="pre">-N</span> <span class="pre">NODE_NAME</span></tt>, <tt class="docutils literal"><span class="pre">--node-name</span> <span class="pre">NODE_NAME</span></tt></dt>
149
- <dd>The name of the node.</dd>
150
- <dt><tt class="docutils literal"><span class="pre">-o</span> <span class="pre">RUN_LIST_ITEM</span></tt>, <tt class="docutils literal"><span class="pre">--override-runlist</span> <span class="pre">RUN_LIST_ITEM</span></tt></dt>
151
- <dd>Replace the current run list with the specified items. This option will not clear the list of cookbooks (and related files) that is cached on the node.</dd>
152
- <dt><tt class="docutils literal"><span class="pre">--once</span></tt></dt>
153
- <dd>Use to run the chef-client only once and to cancel <tt class="docutils literal"><span class="pre">interval</span></tt> and <tt class="docutils literal"><span class="pre">splay</span></tt> options.</dd>
154
- <dt><tt class="docutils literal"><span class="pre">-P</span> <span class="pre">PID_FILE</span></tt>, <tt class="docutils literal"><span class="pre">--pid</span> <span class="pre">PID_FILE</span></tt></dt>
155
- <dd>The location in which a process identification number (pid) is saved. An executable, when started as a daemon, will write the pid to the specified file. Default value: <tt class="docutils literal"><span class="pre">/tmp/name-of-executable.pid</span></tt>.</dd>
156
- <dt><tt class="docutils literal"><span class="pre">-r</span> <span class="pre">RUN_LIST_ITEM</span></tt>, <tt class="docutils literal"><span class="pre">--runlist</span> <span class="pre">RUN_LIST_ITEM</span></tt></dt>
157
- <dd>Use to permanently replace the current run-list with the specified run-list items.</dd>
158
- <dt><tt class="docutils literal"><span class="pre">-R</span></tt>, <tt class="docutils literal"><span class="pre">--enable-reporting</span></tt></dt>
159
- <dd>Use to enable Chef reporting, which performs data collection during a chef-client run.</dd>
160
- <dt><tt class="docutils literal"><span class="pre">RECIPE_FILE</span></tt></dt>
161
- <dd>The path to a recipe. For example, if a recipe file is in the current directory, use <tt class="docutils literal"><span class="pre">recipe_file.rb</span></tt>. This is typically used with the <tt class="docutils literal"><span class="pre">--local-mode</span></tt> option.</dd>
162
- <dt><tt class="docutils literal"><span class="pre">--run-lock-timeout</span> <span class="pre">SECONDS</span></tt></dt>
163
- <dd>The amount of time (in seconds) to wait for a chef-client run to finish. Default value: not set (indefinite). Set to <tt class="docutils literal"><span class="pre">0</span></tt> to cause a second chef-client to exit immediately.</dd>
164
- <dt><tt class="docutils literal"><span class="pre">-s</span> <span class="pre">SECONDS</span></tt>, <tt class="docutils literal"><span class="pre">--splay</span> <span class="pre">SECONDS</span></tt></dt>
165
- <dd>A number (in seconds) to add to the <tt class="docutils literal"><span class="pre">interval</span></tt> that is used to determine the frequency of chef-client runs. This number can help prevent server load when there are many clients running at the same time. When the chef-client is run at intervals, <tt class="docutils literal"><span class="pre">--splay</span></tt> and <tt class="docutils literal"><span class="pre">--interval</span></tt> values are applied before the chef-client run.</dd>
166
- <dt><tt class="docutils literal"><span class="pre">-S</span> <span class="pre">CHEF_SERVER_URL</span></tt>, <tt class="docutils literal"><span class="pre">--server</span> <span class="pre">CHEF_SERVER_URL</span></tt></dt>
167
- <dd>The URL for the Chef server.</dd>
168
- <dt><tt class="docutils literal"><span class="pre">-u</span> <span class="pre">USER</span></tt>, <tt class="docutils literal"><span class="pre">--user</span> <span class="pre">USER</span></tt></dt>
169
- <dd>The user that owns a process. This is required when starting any executable as a daemon.</dd>
170
- <dt><tt class="docutils literal"><span class="pre">-v</span></tt>, <tt class="docutils literal"><span class="pre">--version</span></tt></dt>
171
- <dd>The version of the chef-client.</dd>
172
- <dt><tt class="docutils literal"><span class="pre">-W</span></tt>, <tt class="docutils literal"><span class="pre">--why-run</span></tt></dt>
173
- <dd>Use to run the executable in why-run mode, which is a type of chef-client run that does everything except modify the system. Use why-run mode to understand why the chef-client makes the decisions that it makes and to learn more about the current and proposed state of the system.</dd>
174
- <dt><tt class="docutils literal"><span class="pre">-z</span></tt>, <tt class="docutils literal"><span class="pre">--local-mode</span></tt></dt>
175
- <dd>Use to run the chef-client in local mode. This allows all commands that work against the Chef server to also work against the local chef-repo.</dd>
176
- </dl>
177
- </div>
178
- <div class="section" id="run-with-elevated-privileges">
179
- <h2>Run with Elevated Privileges<a class="headerlink" href="#run-with-elevated-privileges" title="Permalink to this headline">¶</a></h2>
180
- <p>The chef-client may need to be run with elevated privileges in order to get a recipe to converge correctly. On UNIX and UNIX-like operating systems this can be done by running the command as root. On Microsoft Windows this can be done by running the command prompt as an administrator.</p>
181
- <div class="section" id="linux">
182
- <h3>Linux<a class="headerlink" href="#linux" title="Permalink to this headline">¶</a></h3>
183
- <p>On Linux, the following error sometimes occurs when the permissions used to run the chef-client are incorrect:</p>
184
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>chef-client
185
- <span class="o">[</span>Tue, 29 Nov 2011 19:46:17 -0800<span class="o">]</span> INFO: *** Chef 10.X.X ***
186
- <span class="o">[</span>Tue, 29 Nov 2011 19:46:18 -0800<span class="o">]</span> WARN: Failed to <span class="nb">read </span>the private key /etc/chef/client.pem: <span class="c">#&lt;Errno::EACCES: Permission denied - /etc/chef/client.pem&gt;</span>
187
- </pre></div>
188
- </div>
189
- <p>This can be resolved by running the command as root. There are a few ways this can be done:</p>
190
- <ul>
191
- <li><p class="first">Log in as root and then run the chef-client</p>
192
- </li>
193
- <li><p class="first">Use <tt class="docutils literal"><span class="pre">su</span></tt> to become the root user, and then run the chef-client. For example:</p>
194
- <blockquote>
195
- <div><div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>su
196
- </pre></div>
197
- </div>
198
- <p>and then:</p>
199
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>chef-client
200
- </pre></div>
201
- </div>
202
- </div></blockquote>
203
- </li>
204
- <li><p class="first">Use the sudo utility</p>
205
- <blockquote>
206
- <div><div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>sudo chef-client
207
- </pre></div>
208
- </div>
209
- </div></blockquote>
210
- </li>
211
- <li><p class="first">Give a user access to read <tt class="docutils literal"><span class="pre">/etc/chef</span></tt> and also the files accessed by the chef-client. This requires super user privileges and, as such, is not a recommended approach</p>
212
- </li>
213
- </ul>
214
- </div>
215
- <div class="section" id="windows">
216
- <h3>Windows<a class="headerlink" href="#windows" title="Permalink to this headline">¶</a></h3>
217
- <p>On Microsoft Windows, running without elevated privileges (when they are necessary) is an issue that fails silently. It will appear that the chef-client completed its run successfully, but the changes will not have been made. When this occurs, do one of the following to run the chef-client as the administrator:</p>
218
- <ul>
219
- <li><p class="first">Log in to the administrator account. (This is not the same as an account in the administrator&#8217;s security group.)</p>
220
- </li>
221
- <li><p class="first">Run the chef-client process from the administrator account while being logged into another account. Run the following command:</p>
222
- <blockquote>
223
- <div><div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>runas /user:Administrator <span class="s2">&quot;cmd /C chef-client&quot;</span>
224
- </pre></div>
225
- </div>
226
- <p>This will prompt for the administrator account password.</p>
227
- </div></blockquote>
228
- </li>
229
- <li><p class="first">Open a command prompt by right-clicking on the command prompt application, and then selecting <strong>Run as administrator</strong>. After the command window opens, the chef-client can be run as the administrator</p>
230
- </li>
231
- </ul>
232
- </div>
233
- </div>
234
- <div class="section" id="examples">
235
- <h2>Examples<a class="headerlink" href="#examples" title="Permalink to this headline">¶</a></h2>
236
- <p><strong>Start a Chef run when the chef-client is running as a daemon</strong></p>
237
- <p>A chef-client that is running as a daemon can be woken up and started by sending the process a <tt class="docutils literal"><span class="pre">SIGUSR1</span></tt>. For example, to trigger a chef-client run on a machine running Linux:</p>
238
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>sudo killall -USR1 chef-client
239
- </pre></div>
240
- </div>
241
- <p><strong>Start a Chef run manually</strong></p>
242
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>ps auxw|grep chef-client
243
- </pre></div>
244
- </div>
245
- <p>to return something like:</p>
246
- <div class="highlight-bash"><div class="highlight"><pre>root 66066 0.9 0.0 2488880 264 s001 S+ 10:26AM 0:03.05
247
- /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby /usr/bin/chef-client -i 3600 -s 20
248
- </pre></div>
249
- </div>
250
- <p>and then enter:</p>
251
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>sudo <span class="nb">kill</span> -USR1 66066
252
- </pre></div>
253
- </div>
254
- </div>
255
- </div>
256
-
257
-
258
- </div>
259
-
260
- </div>
261
-
262
-
263
- <div class="clearer"></div>
264
- </div>
265
-
266
-
267
-
268
-
269
- </body>
270
- </html>
@@ -1,728 +0,0 @@
1
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
-
4
-
5
- <html xmlns="http://www.w3.org/1999/xhtml">
6
- <head>
7
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
8
-
9
- <title>chef-server-ctl (executable) &mdash; chef-client Man Pages</title>
10
-
11
- <link rel="stylesheet" href="_static/guide.css" type="text/css" />
12
- <link rel="stylesheet" href="_static/pygments.css" type="text/css" />
13
-
14
- <script type="text/javascript">
15
- var DOCUMENTATION_OPTIONS = {
16
- URL_ROOT: './',
17
- VERSION: '',
18
- COLLAPSE_INDEX: false,
19
- FILE_SUFFIX: '.html',
20
- HAS_SOURCE: true
21
- };
22
- </script>
23
- <script type="text/javascript" src="_static/jquery.js"></script>
24
- <script type="text/javascript" src="_static/underscore.js"></script>
25
- <script type="text/javascript" src="_static/doctools.js"></script>
26
-
27
-
28
- </head>
29
- <body>
30
- <div style="background-color: #212c35; text-align: left; padding: 0px 0px 0px 0px">
31
- <a href="http://docs.getchef.com/"><img src="_static/chef_html_logo.png" border="0" alt="Chef"/></a>
32
- </div>
33
-
34
-
35
-
36
-
37
- <div class="document">
38
- <div class="documentwrapper">
39
-
40
- <div class="body">
41
-
42
- <div class="section" id="chef-server-ctl-executable">
43
- <h1>chef-server-ctl (executable)<a class="headerlink" href="#chef-server-ctl-executable" title="Permalink to this headline">¶</a></h1>
44
- <p>The Chef server includes a command-line utility named chef-server-ctl. This command-line tool is used to start and stop individual services, reconfigure the Chef server, run chef-pedant, and then tail Chef server log files.</p>
45
- <div class="section" id="backup-recover">
46
- <h2>backup-recover<a class="headerlink" href="#backup-recover" title="Permalink to this headline">¶</a></h2>
47
- <p>The <tt class="docutils literal"><span class="pre">backup-recover</span></tt> subcommand is used to force the Chef server to attempt to become the backup server. This is the opposite of the <tt class="docutils literal"><span class="pre">master-recover</span></tt> subcommand.</p>
48
- <div class="admonition warning">
49
- <p class="first admonition-title">Warning</p>
50
- <p class="last">If this command is run on both back-end servers, it will put the back-end cluster into a state where no server holds the DRBD resource.</p>
51
- </div>
52
- <p>This subcommand has the following syntax:</p>
53
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>chef-server-ctl backup-recover
54
- </pre></div>
55
- </div>
56
- </div>
57
- <div class="section" id="cleanse">
58
- <h2>cleanse<a class="headerlink" href="#cleanse" title="Permalink to this headline">¶</a></h2>
59
- <p>The <tt class="docutils literal"><span class="pre">cleanse</span></tt> subcommand is used to re-set the Chef server to the state it was in before the first time the <tt class="docutils literal"><span class="pre">reconfigure</span></tt> subcommand is run to destroy all data, configuration files, and logs.</p>
60
- <p>This subcommand has the following syntax:</p>
61
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>chef-server-ctl cleanse
62
- </pre></div>
63
- </div>
64
- </div>
65
- <div class="section" id="gather-logs">
66
- <h2>gather-logs<a class="headerlink" href="#gather-logs" title="Permalink to this headline">¶</a></h2>
67
- <p>The <tt class="docutils literal"><span class="pre">gather-logs</span></tt> subcommand is used to gather the Chef server log files into a tarball that contains all of the important log files and system information.</p>
68
- <p>This subcommand has the following syntax:</p>
69
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>chef-server-ctl gather-logs
70
- </pre></div>
71
- </div>
72
- </div>
73
- <div class="section" id="ha-status">
74
- <h2>ha-status<a class="headerlink" href="#ha-status" title="Permalink to this headline">¶</a></h2>
75
- <p>The <tt class="docutils literal"><span class="pre">ha-status</span></tt> subcommand is used to check the status for services running in a High Availability topology. This command will verify the following:</p>
76
- <blockquote>
77
- <div><ul class="simple">
78
- <li>The Keepalived daemon is enabled in the config</li>
79
- <li>The DRBD process is enabled in the config</li>
80
- <li>The underlying block device or logical volume for DRBD has been created and configured</li>
81
- <li>The DRBD device exists</li>
82
- <li>The current state of the server is <tt class="docutils literal"><span class="pre">master</span></tt> or <tt class="docutils literal"><span class="pre">backup</span></tt>; any migration processes have completed</li>
83
- <li>The failover virtual IP address is correctly attached to only the <tt class="docutils literal"><span class="pre">master</span></tt> node</li>
84
- <li>The DRBD state is correct based on the state of the server being <tt class="docutils literal"><span class="pre">master</span></tt> or <tt class="docutils literal"><span class="pre">backup</span></tt></li>
85
- <li>The DRBD mount point is correctly mounted to only the <tt class="docutils literal"><span class="pre">master</span></tt> node</li>
86
- <li>The DRBD replication IP addresses are pingable</li>
87
- <li>The <tt class="docutils literal"><span class="pre">runit</span></tt> status of the services are correct (up or down) based on the <tt class="docutils literal"><span class="pre">master</span></tt> or <tt class="docutils literal"><span class="pre">backup</span></tt> state of the server</li>
88
- </ul>
89
- </div></blockquote>
90
- <p>This subcommand has the following syntax:</p>
91
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>chef-server-ctl ha-status
92
- </pre></div>
93
- </div>
94
- <p>If this command runs successfully, it will return the following:</p>
95
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span><span class="o">[</span>OK<span class="o">]</span> all checks passed.
96
- </pre></div>
97
- </div>
98
- <p>Otherwise it will print out a list of errors, similar to the following:</p>
99
- <div class="highlight-bash"><div class="highlight"><pre>...
100
- <span class="o">[</span>OK<span class="o">]</span> nginx is running correctly, and I am master.
101
- <span class="o">[</span>ERROR<span class="o">]</span> redis_lb is not running.
102
- <span class="o">[</span>OK<span class="o">]</span> opscode-erchef is running correctly, and I am master.
103
- ...
104
- <span class="o">[</span>ERROR<span class="o">]</span> ERRORS WERE DETECTED.
105
- </pre></div>
106
- </div>
107
- <p>For example:</p>
108
- <div class="highlight-bash"><div class="highlight"><pre><span class="o">[</span>OK<span class="o">]</span> keepalived HA services enabled
109
- <span class="o">[</span>OK<span class="o">]</span> DRBD disk replication enabled
110
- <span class="o">[</span>OK<span class="o">]</span> DRBD partition /dev/opscode/drbd found
111
- <span class="o">[</span>OK<span class="o">]</span> DRBD device /dev/drbd0 found
112
- <span class="o">[</span>OK<span class="o">]</span> cluster <span class="nv">status</span> <span class="o">=</span> master
113
- <span class="o">[</span>OK<span class="o">]</span> found VIP IP address and I am master
114
- <span class="o">[</span>OK<span class="o">]</span> found VRRP communications interface eth1
115
- <span class="o">[</span>OK<span class="o">]</span> my DRBD status is Connected/Primary/UpToDate and I am master
116
- <span class="o">[</span>OK<span class="o">]</span> my DRBD partition is mounted and I am master
117
- <span class="o">[</span>OK<span class="o">]</span> DRBD primary IP address pings
118
- <span class="o">[</span>OK<span class="o">]</span> DRBD secondary IP address pings
119
- ...
120
- <span class="o">[</span>OK<span class="o">]</span> all checks passed.
121
- </pre></div>
122
- </div>
123
- </div>
124
- <div class="section" id="help">
125
- <h2>help<a class="headerlink" href="#help" title="Permalink to this headline">¶</a></h2>
126
- <p>The <tt class="docutils literal"><span class="pre">help</span></tt> subcommand is used to print a list of all available chef-server-ctl commands.</p>
127
- <p>This subcommand has the following syntax:</p>
128
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>chef-server-ctl <span class="nb">help</span>
129
- </pre></div>
130
- </div>
131
- </div>
132
- <div class="section" id="install">
133
- <h2>install<a class="headerlink" href="#install" title="Permalink to this headline">¶</a></h2>
134
- <p>The <tt class="docutils literal"><span class="pre">install</span></tt> subcommand is used to install premium features of the Chef server: Chef management console, Chef analytics, chef-client run reporting, high availability configurations, Chef push jobs, and Chef server replication.</p>
135
- <p><strong>Syntax</strong></p>
136
- <p>This subcommand has the following syntax:</p>
137
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>chef-server-ctl install name_of_premium_feature <span class="o">(</span>options<span class="o">)</span>
138
- </pre></div>
139
- </div>
140
- <p>where <tt class="docutils literal"><span class="pre">name_of_premium_feature</span></tt> represents the command line value associated with the premium feature:</p>
141
- <p><strong>Options</strong></p>
142
- <p>This subcommand has the following options:</p>
143
- <dl class="docutils">
144
- <dt><tt class="docutils literal"><span class="pre">--path</span> <span class="pre">PATH</span></tt></dt>
145
- <dd>Use to specify the location of a package. This option is not required when packages are downloaded from <a class="reference external" href="https://packagecloud.io/">https://packagecloud.io/</a>.</dd>
146
- </dl>
147
- <div class="section" id="use-downloads">
148
- <h3>Use Downloads<a class="headerlink" href="#use-downloads" title="Permalink to this headline">¶</a></h3>
149
- <p>The <tt class="docutils literal"><span class="pre">install</span></tt> subcommand downloads packages from <a class="reference external" href="https://packagecloud.io/">https://packagecloud.io/</a> by default. For systems that are not behind a firewall (and have connectivity to <a class="reference external" href="https://packagecloud.io/">https://packagecloud.io/</a>), these packages can be installed as described below.</p>
150
- <table border="1" class="docutils">
151
- <colgroup>
152
- <col width="20%" />
153
- <col width="80%" />
154
- </colgroup>
155
- <thead valign="bottom">
156
- <tr class="row-odd"><th class="head">Feature</th>
157
- <th class="head">Command</th>
158
- </tr>
159
- </thead>
160
- <tbody valign="top">
161
- <tr class="row-even"><td>Chef Manage</td>
162
- <td><p class="first">Use Chef management console to manage data bags, attributes, run-lists, roles, environments, and cookbooks from a web user interface.</p>
163
- <p>(Front end machines only.) Run:</p>
164
- <div class="highlight-ruby"><div class="highlight"><pre>$ chef-server-ctl install opscode-manage
165
- </pre></div>
166
- </div>
167
- <p>then:</p>
168
- <div class="highlight-ruby"><div class="highlight"><pre>$ opscode-manage-ctl reconfigure
169
- </pre></div>
170
- </div>
171
- <p>and then:</p>
172
- <div class="last highlight-ruby"><div class="highlight"><pre>$ chef-server-ctl reconfigure
173
- </pre></div>
174
- </div>
175
- </td>
176
- </tr>
177
- <tr class="row-odd"><td>Chef Push Jobs</td>
178
- <td><p class="first">Use Chef push jobs to run jobs&#8212;an action or a command to be executed&#8212;against nodes independently of a chef-client run.</p>
179
- <p>Run:</p>
180
- <div class="highlight-ruby"><div class="highlight"><pre>$ chef-server-ctl install opscode-push-jobs-server
181
- </pre></div>
182
- </div>
183
- <p>then:</p>
184
- <div class="highlight-ruby"><div class="highlight"><pre>$ opscode-push-jobs-server-ctl reconfigure
185
- </pre></div>
186
- </div>
187
- <p>and then:</p>
188
- <div class="last highlight-ruby"><div class="highlight"><pre>$ chef-server-ctl reconfigure
189
- </pre></div>
190
- </div>
191
- </td>
192
- </tr>
193
- <tr class="row-even"><td>Chef Replication</td>
194
- <td><p class="first">Use Chef replication to asynchronously distribute cookbook, environment, role, and data bag data from a single, primary Chef server to one (or more) replicas of that Chef server.</p>
195
- <p>Run:</p>
196
- <div class="highlight-ruby"><div class="highlight"><pre>$ chef-server-ctl install chef-sync
197
- </pre></div>
198
- </div>
199
- <p>and then:</p>
200
- <div class="highlight-ruby"><div class="highlight"><pre>$ chef-sync-ctl reconfigure
201
- </pre></div>
202
- </div>
203
- <p>and then:</p>
204
- <div class="last highlight-ruby"><div class="highlight"><pre>$ chef-server-ctl reconfigure
205
- </pre></div>
206
- </div>
207
- </td>
208
- </tr>
209
- <tr class="row-odd"><td>Reporting</td>
210
- <td><p class="first">Use Chef reporting to keep track of what happens during every chef-client runs across all of the infrastructure being managed by Chef. Run Chef reporting with Chef management console to view reports from a web user interface.</p>
211
- <p>(Front end machines only.) Run:</p>
212
- <div class="highlight-ruby"><div class="highlight"><pre>$ chef-server-ctl install opscode-reporting
213
- </pre></div>
214
- </div>
215
- <p>then:</p>
216
- <div class="highlight-ruby"><div class="highlight"><pre>$ opscode-reporting-ctl reconfigure
217
- </pre></div>
218
- </div>
219
- <p>and then:</p>
220
- <div class="last highlight-ruby"><div class="highlight"><pre>$ chef-server-ctl reconfigure
221
- </pre></div>
222
- </div>
223
- </td>
224
- </tr>
225
- </tbody>
226
- </table>
227
- </div>
228
- <div class="section" id="use-local-packages">
229
- <h3>Use Local Packages<a class="headerlink" href="#use-local-packages" title="Permalink to this headline">¶</a></h3>
230
- <p>The <tt class="docutils literal"><span class="pre">install</span></tt> subcommand downloads packages from <a class="reference external" href="https://packagecloud.io/">https://packagecloud.io/</a> by default. For systems that are behind a firewall (and do not have connectivity to <a class="reference external" href="https://packagecloud.io/">https://packagecloud.io/</a>), these packages can be installed manually. First download the package that is appropriate for the platform and save it to a local path. Then run the <tt class="docutils literal"><span class="pre">install</span></tt> command using the <tt class="docutils literal"><span class="pre">--path</span></tt> option to specify the location for the package:</p>
231
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>chef-server-ctl install NAME_OF_PACKAGE --path /path/to/package
232
- </pre></div>
233
- </div>
234
- <p>For example:</p>
235
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>chef-server-ctl install opscode-manage-1.6.2-1.el6.x86_64 --path /home/vagrant
236
- </pre></div>
237
- </div>
238
- </div>
239
- </div>
240
- <div class="section" id="master-recover">
241
- <h2>master-recover<a class="headerlink" href="#master-recover" title="Permalink to this headline">¶</a></h2>
242
- <p>The <tt class="docutils literal"><span class="pre">master-recover</span></tt> subcommand is used to force the Chef server to attempt to become the master server. This command is typically run in tandem with the <tt class="docutils literal"><span class="pre">backup-recover</span></tt> subcommand on the back-end peer, unless the back-end peer is no longer available.</p>
243
- <p>This subcommand has the following syntax:</p>
244
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>chef-server-ctl master-recover
245
- </pre></div>
246
- </div>
247
- </div>
248
- <div class="section" id="org-create">
249
- <h2>org-create<a class="headerlink" href="#org-create" title="Permalink to this headline">¶</a></h2>
250
- <p>The <tt class="docutils literal"><span class="pre">org-create</span></tt> subcommand is used to create an organization. (The validation key for the organization is returned to <tt class="docutils literal"><span class="pre">STDOUT</span></tt> when creating an organization using this command.)</p>
251
- <p><strong>Syntax</strong></p>
252
- <p>This subcommand has the following syntax:</p>
253
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>chef-server-ctl org-create ORG_NAME ORG_FULL_NAME <span class="o">(</span>options<span class="o">)</span>
254
- </pre></div>
255
- </div>
256
- <p><strong>Options</strong></p>
257
- <p>This subcommand has the following options:</p>
258
- <dl class="docutils">
259
- <dt><tt class="docutils literal"><span class="pre">-a</span> <span class="pre">USER_NAME</span></tt>, <tt class="docutils literal"><span class="pre">--association_user</span> <span class="pre">USER_NAME</span></tt></dt>
260
- <dd>Use to associate a user with an organization and add them to the <tt class="docutils literal"><span class="pre">admins</span></tt> and <tt class="docutils literal"><span class="pre">billing_admins</span></tt> security groups.</dd>
261
- <dt><tt class="docutils literal"><span class="pre">-f</span> <span class="pre">FILE_NAME</span></tt>, <tt class="docutils literal"><span class="pre">--filename</span> <span class="pre">FILE_NAME</span></tt></dt>
262
- <dd>Use to write the private key to a file instead of <tt class="docutils literal"><span class="pre">STDOUT</span></tt>.</dd>
263
- </dl>
264
- <p><strong>Examples</strong></p>
265
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>chef-server-ctl org-create prod Production
266
- </pre></div>
267
- </div>
268
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>chef-server-ctl org-create staging Staging -a chef-admin
269
- </pre></div>
270
- </div>
271
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>chef-server-ctl org-create dev Development -f /tmp/id-dev.key
272
- </pre></div>
273
- </div>
274
- </div>
275
- <div class="section" id="org-delete">
276
- <h2>org-delete<a class="headerlink" href="#org-delete" title="Permalink to this headline">¶</a></h2>
277
- <p>The <tt class="docutils literal"><span class="pre">org-delete</span></tt> subcommand is used to delete an organization.</p>
278
- <p><strong>Syntax</strong></p>
279
- <p>This subcommand has the following syntax:</p>
280
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>chef-server-ctl org-delete ORG_NAME
281
- </pre></div>
282
- </div>
283
- <p><strong>Examples</strong></p>
284
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>chef-server-ctl org-delete infra-testing-20140909
285
- </pre></div>
286
- </div>
287
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>chef-server-ctl org-delete pedant-testing-org
288
- </pre></div>
289
- </div>
290
- </div>
291
- <div class="section" id="org-list">
292
- <h2>org-list<a class="headerlink" href="#org-list" title="Permalink to this headline">¶</a></h2>
293
- <p>The <tt class="docutils literal"><span class="pre">org-list</span></tt> subcommand is used to list all of the organizations currently present on the Chef server.</p>
294
- <p><strong>Syntax</strong></p>
295
- <p>This subcommand has the following syntax:</p>
296
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>chef-server-ctl org-list <span class="o">(</span>options<span class="o">)</span>
297
- </pre></div>
298
- </div>
299
- <p><strong>Options</strong></p>
300
- <p>This subcommand has the following options:</p>
301
- <dl class="docutils">
302
- <dt><tt class="docutils literal"><span class="pre">-a</span></tt>, <tt class="docutils literal"><span class="pre">--all-orgs</span></tt></dt>
303
- <dd>Use to show all organizations.</dd>
304
- <dt><tt class="docutils literal"><span class="pre">-w</span></tt>, <tt class="docutils literal"><span class="pre">--with-uri</span></tt></dt>
305
- <dd>Use to show the corresponding URIs.</dd>
306
- </dl>
307
- </div>
308
- <div class="section" id="org-show">
309
- <h2>org-show<a class="headerlink" href="#org-show" title="Permalink to this headline">¶</a></h2>
310
- <p>The <tt class="docutils literal"><span class="pre">org-show</span></tt> subcommand is used to show the details for an organization.</p>
311
- <p><strong>Syntax</strong></p>
312
- <p>This subcommand has the following syntax:</p>
313
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>chef-server-ctl org-show ORG_NAME
314
- </pre></div>
315
- </div>
316
- </div>
317
- <div class="section" id="org-user-add">
318
- <h2>org-user-add<a class="headerlink" href="#org-user-add" title="Permalink to this headline">¶</a></h2>
319
- <p>The <tt class="docutils literal"><span class="pre">org-user-add</span></tt> subcommand is used to add a user to an organization.</p>
320
- <p><strong>Syntax</strong></p>
321
- <p>This subcommand has the following syntax:</p>
322
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>chef-server-ctl org-user-add ORG_NAME USER_NAME <span class="o">(</span>options<span class="o">)</span>
323
- </pre></div>
324
- </div>
325
- <p><strong>Options</strong></p>
326
- <p>This subcommand has the following options:</p>
327
- <dl class="docutils">
328
- <dt><tt class="docutils literal"><span class="pre">--admin</span></tt></dt>
329
- <dd>Use to add the user to the <tt class="docutils literal"><span class="pre">admins</span></tt> group.</dd>
330
- </dl>
331
- <p><strong>Examples</strong></p>
332
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>chef-server-ctl org-user-add prod john_smith
333
- </pre></div>
334
- </div>
335
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>chef-server-ctl org-user-add preprod testmaster
336
- </pre></div>
337
- </div>
338
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>chef-server-ctl org-user-add dev grantmc --admin
339
- </pre></div>
340
- </div>
341
- </div>
342
- <div class="section" id="org-user-remove">
343
- <h2>org-user-remove<a class="headerlink" href="#org-user-remove" title="Permalink to this headline">¶</a></h2>
344
- <p>The <tt class="docutils literal"><span class="pre">org-user-remove</span></tt> subcommand is used to remove a user from an organization.</p>
345
- <p><strong>Syntax</strong></p>
346
- <p>This subcommand has the following syntax:</p>
347
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>chef-server-ctl org-user-remove ORG_NAME USER_NAME
348
- </pre></div>
349
- </div>
350
- <p><strong>Examples</strong></p>
351
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>chef-server-ctl org-user-remove prod john_smith
352
- </pre></div>
353
- </div>
354
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>chef-server-ctl org-user-remove prod testmaster
355
- </pre></div>
356
- </div>
357
- </div>
358
- <div class="section" id="password">
359
- <h2>password<a class="headerlink" href="#password" title="Permalink to this headline">¶</a></h2>
360
- <div class="admonition warning">
361
- <p class="first admonition-title">Warning</p>
362
- <p class="last">This subcommand is currently disabled.</p>
363
- </div>
364
- </div>
365
- <div class="section" id="reconfigure">
366
- <h2>reconfigure<a class="headerlink" href="#reconfigure" title="Permalink to this headline">¶</a></h2>
367
- <p>The <tt class="docutils literal"><span class="pre">reconfigure</span></tt> subcommand is used when changes are made to the private-chef.rb file to reconfigure the server. When changes are made to the private-chef.rb file, they will not be applied to the Chef server configuration until after this command is run. This subcommand will also restart any services for which the <tt class="docutils literal"><span class="pre">service_name['enabled']</span></tt> setting is set to <tt class="docutils literal"><span class="pre">true</span></tt>.</p>
368
- <p>This subcommand has the following syntax:</p>
369
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>chef-server-ctl reconfigure
370
- </pre></div>
371
- </div>
372
- </div>
373
- <div class="section" id="show-config">
374
- <h2>show-config<a class="headerlink" href="#show-config" title="Permalink to this headline">¶</a></h2>
375
- <p>The <tt class="docutils literal"><span class="pre">show-config</span></tt> subcommand is used to view the configuration that will be generated by the <tt class="docutils literal"><span class="pre">reconfigure</span></tt> subcommand. This command is most useful in the early stages of a deployment to ensure that everything is built properly prior to installation.</p>
376
- <p>This subcommand has the following syntax:</p>
377
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>chef-server-ctl show-config
378
- </pre></div>
379
- </div>
380
- </div>
381
- <div class="section" id="uninstall">
382
- <h2>uninstall<a class="headerlink" href="#uninstall" title="Permalink to this headline">¶</a></h2>
383
- <p>The <tt class="docutils literal"><span class="pre">uninstall</span></tt> subcommand is used to remove the Chef server application, but without removing any of the data. This subcommand will shut down all services (including the <tt class="docutils literal"><span class="pre">runit</span></tt> process supervisor).</p>
384
- <p>This subcommand has the following syntax:</p>
385
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>chef-server-ctl uninstall
386
- </pre></div>
387
- </div>
388
- <div class="admonition note">
389
- <p class="first admonition-title">Note</p>
390
- <p class="last">To revert the <tt class="docutils literal"><span class="pre">uninstall</span></tt> subcommand, run the <tt class="docutils literal"><span class="pre">reconfigure</span></tt> subcommand (because the <tt class="docutils literal"><span class="pre">start</span></tt> subcommand is disabled by the <tt class="docutils literal"><span class="pre">uninstall</span></tt> command).</p>
391
- </div>
392
- </div>
393
- <div class="section" id="upgrade">
394
- <h2>upgrade<a class="headerlink" href="#upgrade" title="Permalink to this headline">¶</a></h2>
395
- <p>The <tt class="docutils literal"><span class="pre">upgrade</span></tt> subcommand is used to upgrade the Chef server.</p>
396
- <p><strong>Syntax</strong></p>
397
- <p>This subcommand has the following syntax:</p>
398
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>chef-server-ctl upgrade <span class="o">(</span>options<span class="o">)</span>
399
- </pre></div>
400
- </div>
401
- <p><strong>Options</strong></p>
402
- <div class="admonition note">
403
- <p class="first admonition-title">Note</p>
404
- <p class="last">Options for the <tt class="docutils literal"><span class="pre">upgrade</span></tt> subcommand may only be used when upgrading from Open Source Chef 11 to Chef server 12.</p>
405
- </div>
406
- <p>This subcommand has the following options:</p>
407
- <dl class="docutils">
408
- <dt><tt class="docutils literal"><span class="pre">-d</span> <span class="pre">DIRECTORY</span></tt>, <tt class="docutils literal"><span class="pre">--chef11-data-dir</span> <span class="pre">DIRECTORY</span></tt></dt>
409
- <dd>The directory in which Open Source Chef 11 data is located. Default value: a temporary directory.</dd>
410
- <dt><tt class="docutils literal"><span class="pre">-e</span> <span class="pre">DIRECTORY</span></tt>, <tt class="docutils literal"><span class="pre">--chef12-data-dir</span> <span class="pre">DIRECTORY</span></tt></dt>
411
- <dd>The directory in which Chef server 12 data is located. Default value: a temporary directory.</dd>
412
- <dt><tt class="docutils literal"><span class="pre">-f</span> <span class="pre">FULL_NAME</span></tt>, <tt class="docutils literal"><span class="pre">--full-org-name</span> <span class="pre">FULL_NAME</span></tt></dt>
413
- <dd>The full name of the Chef server organization. A full organization name must begin with a non-white space character and must be between 1 and 1023 characters. For example: <tt class="docutils literal"><span class="pre">Chef</span> <span class="pre">Software,</span> <span class="pre">Inc.</span></tt>. If this option is not specified, the <tt class="docutils literal"><span class="pre">upgrade</span></tt> command will prompt for it.</dd>
414
- <dt><tt class="docutils literal"><span class="pre">-h</span></tt>, <tt class="docutils literal"><span class="pre">--help</span></tt></dt>
415
- <dd>Use to show help for the <tt class="docutils literal"><span class="pre">chef-server-ctl</span> <span class="pre">upgrade</span></tt> subcommand.</dd>
416
- <dt><tt class="docutils literal"><span class="pre">-k</span> <span class="pre">KEY</span></tt>, <tt class="docutils literal"><span class="pre">--key</span> <span class="pre">KEY</span></tt></dt>
417
- <dd>All users are assigned a public key. Use to write the public key to a file. Default value: <tt class="docutils literal"><span class="pre">/etc/chef-server/admin.pem</span></tt>.</dd>
418
- <dt><tt class="docutils literal"><span class="pre">-o</span> <span class="pre">ORG_NAME</span></tt>, <tt class="docutils literal"><span class="pre">--org-name</span> <span class="pre">ORG_NAME</span></tt></dt>
419
- <dd>The name of the Chef server organization. An organization name must begin with a lower-case letter or digit, may only contain lower-case letters, digits, hyphens, and underscores, and must be between 1 and 255 characters. For example: <tt class="docutils literal"><span class="pre">chef</span></tt>. If this option is not specified, the <tt class="docutils literal"><span class="pre">upgrade</span></tt> command will prompt for it.</dd>
420
- <dt><tt class="docutils literal"><span class="pre">-s</span> <span class="pre">URL</span></tt>, <tt class="docutils literal"><span class="pre">--chef11-server-url</span> <span class="pre">URL</span></tt></dt>
421
- <dd>The URL for the Open Source Chef or Enterprise Chef server, version 11. Default value: <tt class="docutils literal"><span class="pre">https://localhost</span></tt>.</dd>
422
- <dt><tt class="docutils literal"><span class="pre">-t</span> <span class="pre">NUMBER</span></tt>, <tt class="docutils literal"><span class="pre">--upload-threads</span> <span class="pre">NUMBER</span></tt></dt>
423
- <dd>The number of threads to use when migrating cookbooks. Default value: <tt class="docutils literal"><span class="pre">10</span></tt>.</dd>
424
- <dt><tt class="docutils literal"><span class="pre">-u</span> <span class="pre">USER</span></tt>, <tt class="docutils literal"><span class="pre">--user</span></tt></dt>
425
- <dd>Use to create a client as an admin client. This is required for any user to access Open Source Chef as an administrator.</dd>
426
- <dt><tt class="docutils literal"><span class="pre">-x</span> <span class="pre">URL</span></tt>, <tt class="docutils literal"><span class="pre">--chef12-server-url</span> <span class="pre">URL</span></tt></dt>
427
- <dd>The URL for the Chef server, version 12. Default value: <tt class="docutils literal"><span class="pre">https://localhost</span></tt>.</dd>
428
- <dt><tt class="docutils literal"><span class="pre">-y</span></tt>, <tt class="docutils literal"><span class="pre">--yes</span></tt></dt>
429
- <dd>Use to skip confirmation prompts during the upgrade process.</dd>
430
- </dl>
431
- </div>
432
- <div class="section" id="user-create">
433
- <h2>user-create<a class="headerlink" href="#user-create" title="Permalink to this headline">¶</a></h2>
434
- <p>The <tt class="docutils literal"><span class="pre">user-create</span></tt> subcommand is used to create a user.</p>
435
- <p><strong>Syntax</strong></p>
436
- <p>This subcommand has the following syntax:</p>
437
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>chef-server-ctl user-create USER_NAME FIRST_NAME <span class="o">[</span>MIDDLE_NAME<span class="o">]</span> LAST_NAME EMAIL PASSWORD <span class="o">(</span>options<span class="o">)</span>
438
- </pre></div>
439
- </div>
440
- <p><strong>Options</strong></p>
441
- <p>This subcommand has the following options:</p>
442
- <dl class="docutils">
443
- <dt><tt class="docutils literal"><span class="pre">-f</span> <span class="pre">FILE_NAME</span></tt>, <tt class="docutils literal"><span class="pre">--filename</span> <span class="pre">FILE_NAME</span></tt></dt>
444
- <dd>Use to write the private key to a file instead of <tt class="docutils literal"><span class="pre">STDOUT</span></tt>.</dd>
445
- </dl>
446
- <p><strong>Examples</strong></p>
447
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>chef-server-ctl user-create john_smith John Smith john_smith@example.com insecure-passord
448
- </pre></div>
449
- </div>
450
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>chef-server-ctl user-create jane_doe Jane Doe jane_doe@example.com PaSSword -f /tmp/jane_doe.key
451
- </pre></div>
452
- </div>
453
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>chef-server-ctl user-create waldendude Henry David Thoreau waldendude@example.com excursions
454
- </pre></div>
455
- </div>
456
- </div>
457
- <div class="section" id="user-delete">
458
- <h2>user-delete<a class="headerlink" href="#user-delete" title="Permalink to this headline">¶</a></h2>
459
- <p>The <tt class="docutils literal"><span class="pre">user-delete</span></tt> subcommand is used to delete a user.</p>
460
- <p><strong>Syntax</strong></p>
461
- <p>This subcommand has the following syntax:</p>
462
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>chef-server-ctl user-delete USER_NAME
463
- </pre></div>
464
- </div>
465
- <p><strong>Examples</strong></p>
466
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>chef-server-ctl user-delete john_smith
467
- </pre></div>
468
- </div>
469
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>chef-server-ctl user-delete jane_doe
470
- </pre></div>
471
- </div>
472
- </div>
473
- <div class="section" id="user-edit">
474
- <h2>user-edit<a class="headerlink" href="#user-edit" title="Permalink to this headline">¶</a></h2>
475
- <p>The <tt class="docutils literal"><span class="pre">user-edit</span></tt> subcommand is used to edit the details for a user. The data will be made available in the $EDITOR for editing.</p>
476
- <p><strong>Syntax</strong></p>
477
- <p>This subcommand has the following syntax:</p>
478
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>chef-server-ctl user-edit USER_NAME
479
- </pre></div>
480
- </div>
481
- <p><strong>Examples</strong></p>
482
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>chef-server-ctl user-edit john_smith
483
- </pre></div>
484
- </div>
485
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>chef-server-ctl user-edit jane_doe
486
- </pre></div>
487
- </div>
488
- </div>
489
- <div class="section" id="user-list">
490
- <h2>user-list<a class="headerlink" href="#user-list" title="Permalink to this headline">¶</a></h2>
491
- <p>The <tt class="docutils literal"><span class="pre">user-list</span></tt> subcommand is used to view a list of users.</p>
492
- <p><strong>Syntax</strong></p>
493
- <p>This subcommand has the following syntax:</p>
494
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>chef-server-ctl user-list <span class="o">(</span>options<span class="o">)</span>
495
- </pre></div>
496
- </div>
497
- <p><strong>Options</strong></p>
498
- <p>This subcommand has the following options:</p>
499
- <dl class="docutils">
500
- <dt><tt class="docutils literal"><span class="pre">-w</span></tt>, <tt class="docutils literal"><span class="pre">--with-uri</span></tt></dt>
501
- <dd>Use to show the corresponding URIs.</dd>
502
- </dl>
503
- </div>
504
- <div class="section" id="user-show">
505
- <h2>user-show<a class="headerlink" href="#user-show" title="Permalink to this headline">¶</a></h2>
506
- <p>The <tt class="docutils literal"><span class="pre">user-show</span></tt> subcommand is used to show the details for a user.</p>
507
- <p><strong>Syntax</strong></p>
508
- <p>This subcommand has the following syntax:</p>
509
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>chef-server-ctl user-show USER_NAME <span class="o">(</span>options<span class="o">)</span>
510
- </pre></div>
511
- </div>
512
- <p><strong>Options</strong></p>
513
- <p>This subcommand has the following options:</p>
514
- <dl class="docutils">
515
- <dt><tt class="docutils literal"><span class="pre">-l</span></tt>, <tt class="docutils literal"><span class="pre">--with-orgs</span></tt></dt>
516
- <dd>Use to show the corresponding organizations.</dd>
517
- </dl>
518
- </div>
519
- <div class="section" id="service-subcommands">
520
- <h2>Service Subcommands<a class="headerlink" href="#service-subcommands" title="Permalink to this headline">¶</a></h2>
521
- <p>The Chef server has a built in process supervisor, which ensures that all of the required services are in the appropriate state at any given time. The supervisor starts two processes per service.</p>
522
- <div class="section" id="hup">
523
- <h3>hup<a class="headerlink" href="#hup" title="Permalink to this headline">¶</a></h3>
524
- <p>The <tt class="docutils literal"><span class="pre">hup</span></tt> subcommand is used to send a <tt class="docutils literal"><span class="pre">SIGHUP</span></tt> to all services. This command can also be run for an individual service by specifying the name of the service in the command.</p>
525
- <p>This subcommand has the following syntax:</p>
526
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>chef-server-ctl hup name_of_service
527
- </pre></div>
528
- </div>
529
- <p>where <tt class="docutils literal"><span class="pre">name_of_service</span></tt> represents the name of any service that is listed after running the <tt class="docutils literal"><span class="pre">service-list</span></tt> subcommand.</p>
530
- </div>
531
- <div class="section" id="int">
532
- <h3>int<a class="headerlink" href="#int" title="Permalink to this headline">¶</a></h3>
533
- <p>The <tt class="docutils literal"><span class="pre">int</span></tt> subcommand is used to send a <tt class="docutils literal"><span class="pre">SIGINT</span></tt> to all services. This command can also be run for an individual service by specifying the name of the service in the command.</p>
534
- <p>This subcommand has the following syntax:</p>
535
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>chef-server-ctl int name_of_service
536
- </pre></div>
537
- </div>
538
- <p>where <tt class="docutils literal"><span class="pre">name_of_service</span></tt> represents the name of any service that is listed after running the <tt class="docutils literal"><span class="pre">service-list</span></tt> subcommand.</p>
539
- </div>
540
- <div class="section" id="kill">
541
- <h3>kill<a class="headerlink" href="#kill" title="Permalink to this headline">¶</a></h3>
542
- <p>The <tt class="docutils literal"><span class="pre">kill</span></tt> subcommand is used to send a <tt class="docutils literal"><span class="pre">SIGKILL</span></tt> to all services. This command can also be run for an individual service by specifying the name of the service in the command.</p>
543
- <p>This subcommand has the following syntax:</p>
544
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>chef-server-ctl <span class="nb">kill </span>name_of_service
545
- </pre></div>
546
- </div>
547
- <p>where <tt class="docutils literal"><span class="pre">name_of_service</span></tt> represents the name of any service that is listed after running the <tt class="docutils literal"><span class="pre">service-list</span></tt> subcommand.</p>
548
- </div>
549
- <div class="section" id="once">
550
- <h3>once<a class="headerlink" href="#once" title="Permalink to this headline">¶</a></h3>
551
- <p>The supervisor for the Chef server is configured to restart any service that fails, unless that service has been asked to change its state. The <tt class="docutils literal"><span class="pre">once</span></tt> subcommand is used to tell the supervisor to not attempt to restart any service that fails.</p>
552
- <p>This command is useful when troubleshooting configuration errors that prevent a service from starting. Run the <tt class="docutils literal"><span class="pre">once</span></tt> subcommand followed by the <tt class="docutils literal"><span class="pre">status</span></tt> subcommand to look for services in a down state and/or to identify which services are in trouble. This command can also be run for an individual service by specifying the name of the service in the command.</p>
553
- <p>This subcommand has the following syntax:</p>
554
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>chef-server-ctl once name_of_service
555
- </pre></div>
556
- </div>
557
- <p>where <tt class="docutils literal"><span class="pre">name_of_service</span></tt> represents the name of any service that is listed after running the <tt class="docutils literal"><span class="pre">service-list</span></tt> subcommand.</p>
558
- </div>
559
- <div class="section" id="restart">
560
- <h3>restart<a class="headerlink" href="#restart" title="Permalink to this headline">¶</a></h3>
561
- <p>The <tt class="docutils literal"><span class="pre">restart</span></tt> subcommand is used to restart all services enabled on the Chef server or to restart an individual service by specifying the name of that service in the command.</p>
562
- <div class="admonition warning">
563
- <p class="first admonition-title">Warning</p>
564
- <p class="last">When running the Chef server in a high availability configuration, restarting all services may trigger failover.</p>
565
- </div>
566
- <p>This subcommand has the following syntax:</p>
567
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>chef-server-ctl restart name_of_service
568
- </pre></div>
569
- </div>
570
- <p>where <tt class="docutils literal"><span class="pre">name_of_service</span></tt> represents the name of any service that is listed after running the <tt class="docutils literal"><span class="pre">service-list</span></tt> subcommand. When a service is successfully restarted the output should be similar to:</p>
571
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>ok: run: service_name: <span class="o">(</span>pid 12345<span class="o">)</span> 1s
572
- </pre></div>
573
- </div>
574
- </div>
575
- <div class="section" id="service-list">
576
- <h3>service-list<a class="headerlink" href="#service-list" title="Permalink to this headline">¶</a></h3>
577
- <p>The <tt class="docutils literal"><span class="pre">service-list</span></tt> subcommand is used to display a list of all available services. A service that is enabled is labeled with an asterisk (*).</p>
578
- <p>This subcommand has the following syntax:</p>
579
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>chef-server-ctl service-list
580
- </pre></div>
581
- </div>
582
- </div>
583
- <div class="section" id="start">
584
- <h3>start<a class="headerlink" href="#start" title="Permalink to this headline">¶</a></h3>
585
- <p>The <tt class="docutils literal"><span class="pre">start</span></tt> subcommand is used to start all services that are enabled in the Chef server. This command can also be run for an individual service by specifying the name of the service in the command.</p>
586
- <p>This subcommand has the following syntax:</p>
587
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>chef-server-ctl start name_of_service
588
- </pre></div>
589
- </div>
590
- <p>where <tt class="docutils literal"><span class="pre">name_of_service</span></tt> represents the name of any service that is listed after running the <tt class="docutils literal"><span class="pre">service-list</span></tt> subcommand. When a service is successfully started the output should be similar to:</p>
591
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>ok: run: service_name: <span class="o">(</span>pid 12345<span class="o">)</span> 1s
592
- </pre></div>
593
- </div>
594
- <p>The supervisor for the Chef server is configured to wait seven seconds for a service to respond to a command from the supervisor. If you see output that references a timeout, it means that a signal has been sent to the process, but that the process has yet to actually comply. In general, processes that have timed out are not a big concern, unless they are failing to respond to the signals at all. If a process is not responding, use a command like the <tt class="docutils literal"><span class="pre">kill</span></tt> subcommand to stop the process, investigate the cause (if required), and then use the <tt class="docutils literal"><span class="pre">start</span></tt> subcommand to re-enable it.</p>
595
- </div>
596
- <div class="section" id="status">
597
- <h3>status<a class="headerlink" href="#status" title="Permalink to this headline">¶</a></h3>
598
- <p>The <tt class="docutils literal"><span class="pre">status</span></tt> subcommand is used to show the status of all services available to the Chef server. The results will vary based on the configuration of a given server. This subcommand has the following syntax:</p>
599
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>chef-server-ctl status
600
- </pre></div>
601
- </div>
602
- <p>and will return the status for all services. Status can be returned for individual services by specifying the name of the service as part of the command:</p>
603
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>chef-server-ctl status name_of_service
604
- </pre></div>
605
- </div>
606
- <p>where <tt class="docutils literal"><span class="pre">name_of_service</span></tt> represents the name of any service that is listed after running the <tt class="docutils literal"><span class="pre">service-list</span></tt> subcommand.</p>
607
- <p>When service status is requested, the output should be similar to:</p>
608
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>run: service_name: <span class="o">(</span>pid 12345<span class="o">)</span> 12345s; run: log: <span class="o">(</span>pid 1234<span class="o">)</span> 67890s
609
- </pre></div>
610
- </div>
611
- <p>where</p>
612
- <ul class="simple">
613
- <li><tt class="docutils literal"><span class="pre">run:</span></tt> is the state of the service (<tt class="docutils literal"><span class="pre">run:</span></tt> or <tt class="docutils literal"><span class="pre">down:</span></tt>)</li>
614
- <li><tt class="docutils literal"><span class="pre">service_name:</span></tt> is the name of the service for which status is returned</li>
615
- <li><tt class="docutils literal"><span class="pre">(pid</span> <span class="pre">12345)</span></tt> is the process identifier</li>
616
- <li><tt class="docutils literal"><span class="pre">12345s</span></tt> is the uptime of the service, in seconds</li>
617
- </ul>
618
- <p>For example:</p>
619
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>down: opscode-erchef: <span class="o">(</span>pid 35546<span class="o">)</span> 10s
620
- </pre></div>
621
- </div>
622
- <p>By default, runit will restart services automatically when the services fail. Therefore, runit may report the status of a service as <tt class="docutils literal"><span class="pre">run:</span></tt> even when there is an issue with that service. When investigating why a particular service is not running as it should be, look for the services with the shortest uptimes. For example, the list below indicates that the <strong>opscode-erchef</strong> should be investigated further:</p>
623
- <div class="highlight-bash"><div class="highlight"><pre>run: oc-id
624
- run: opscode-chef: <span class="o">(</span>pid 4327<span class="o">)</span> 13671s; run: log: <span class="o">(</span>pid 4326<span class="o">)</span> 13671s
625
- run: opscode-erchef: <span class="o">(</span>pid 5383<span class="o">)</span> 5s; run: log: <span class="o">(</span>pid 4382<span class="o">)</span> 13669s
626
- run: opscode-expander: <span class="o">(</span>pid 4078<span class="o">)</span> 13694s; run: log: <span class="o">(</span>pid 4077<span class="o">)</span> 13694s
627
- run: opscode-expander-reindexer: <span class="o">(</span>pid 4130<span class="o">)</span> 13692s; run: log: <span class="o">(</span>pid 4114<span class="o">)</span> 13692s
628
- </pre></div>
629
- </div>
630
- <div class="section" id="high-availability">
631
- <h4>High Availability<a class="headerlink" href="#high-availability" title="Permalink to this headline">¶</a></h4>
632
- <p>On back-end servers in a High Availability topology, Keepalived is used by the clustering service to determine whether a service should be running. If the <tt class="docutils literal"><span class="pre">status</span></tt> subcommand is run against any of these nodes, a few things change:</p>
633
- <ul class="simple">
634
- <li>On the back-end node that is currently the backup server, it is normal to see only one running process: Keepalived</li>
635
- <li>On the back-end node that is currently the master server, it is normal to see all services running. It is also normal to see some services in a down state if the server, on reboot, did not attempt to start the services because Keepalived determines which services are restarted based on the state of the cluster</li>
636
- </ul>
637
- <p>A sample status line for a service that is running on the master server in a High Availability topology:</p>
638
- <div class="highlight-bash"><div class="highlight"><pre>run: opscode-solr: <span class="o">(</span>pid 25341<span class="o">)</span> 239s, normally down; run: log: <span class="o">(</span>pid 5700<span class="o">)</span> 145308s
639
- </pre></div>
640
- </div>
641
- </div>
642
- <div class="section" id="log-files">
643
- <h4>Log Files<a class="headerlink" href="#log-files" title="Permalink to this headline">¶</a></h4>
644
- <p>A typical status line for a service that is running any of the Chef server front-end services is similar to the following:</p>
645
- <div class="highlight-bash"><div class="highlight"><pre>run: name_of_service: <span class="o">(</span>pid 1486<span class="o">)</span> 7819s; run: log: <span class="o">(</span>pid 1485<span class="o">)</span> 7819s
646
- </pre></div>
647
- </div>
648
- <p>where:</p>
649
- <ul class="simple">
650
- <li><tt class="docutils literal"><span class="pre">run</span></tt> describes the state in which the supervisor attempts to keep processes. This state is either <tt class="docutils literal"><span class="pre">run</span></tt> or <tt class="docutils literal"><span class="pre">down</span></tt>. If a service is in a <tt class="docutils literal"><span class="pre">down</span></tt> state, it should be stopped</li>
651
- <li><tt class="docutils literal"><span class="pre">name_of_service</span></tt> is the service name, for example: <tt class="docutils literal"><span class="pre">opscode-solr4</span></tt></li>
652
- <li><tt class="docutils literal"><span class="pre">(pid</span> <span class="pre">1486)</span> <span class="pre">7819s;</span></tt> is the process identifier followed by the amount of time (in seconds) the service has been running</li>
653
- <li><tt class="docutils literal"><span class="pre">run:</span> <span class="pre">log:</span> <span class="pre">(pid</span> <span class="pre">1485)</span> <span class="pre">7819s</span></tt> is the log process. It is typical for a log process to have a longer run time than a service; this is because the supervisor does not need to restart the log process in order to connect the supervised process</li>
654
- </ul>
655
- <p>If the service is down, the status line will appear similar to the following:</p>
656
- <div class="highlight-bash"><div class="highlight"><pre>down: opscode-solr4: 3s, normally up; run: log: <span class="o">(</span>pid 1485<span class="o">)</span> 8526s
657
- </pre></div>
658
- </div>
659
- <p>where</p>
660
- <ul class="simple">
661
- <li><tt class="docutils literal"><span class="pre">down</span></tt> indicates that the service is in a down state</li>
662
- <li><tt class="docutils literal"><span class="pre">3s,</span> <span class="pre">normally</span> <span class="pre">up;</span></tt> indicates that the service is normally in a run state and that the supervisor would attempt to restart this service after a reboot</li>
663
- </ul>
664
- </div>
665
- </div>
666
- <div class="section" id="stop">
667
- <h3>stop<a class="headerlink" href="#stop" title="Permalink to this headline">¶</a></h3>
668
- <p>The <tt class="docutils literal"><span class="pre">stop</span></tt> subcommand is used to stop all services enabled on the Chef server. This command can also be run for an individual service by specifying the name of the service in the command.</p>
669
- <p>This subcommand has the following syntax:</p>
670
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>chef-server-ctl stop name_of_service
671
- </pre></div>
672
- </div>
673
- <p>where <tt class="docutils literal"><span class="pre">name_of_service</span></tt> represents the name of any service that is listed after running the <tt class="docutils literal"><span class="pre">service-list</span></tt> subcommand. When a service is successfully stopped the output should be similar to:</p>
674
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>ok: diwb: service_name: 0s, normally up
675
- </pre></div>
676
- </div>
677
- <p>For example:</p>
678
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>chef-server-ctl stop
679
- </pre></div>
680
- </div>
681
- <p>will return something similar to:</p>
682
- <div class="highlight-bash"><div class="highlight"><pre>ok: down: nginx: 393s, normally up
683
- ok: down: opscode-chef: 391s, normally up
684
- ok: down: opscode-erchef: 391s, normally up
685
- ok: down: opscode-expander: 390s, normally up
686
- ok: down: opscode-expander-reindexer: 389s, normally up
687
- ok: down: opscode-solr4: 389s, normally up
688
- ok: down: postgresql: 388s, normally up
689
- ok: down: rabbitmq: 388s, normally up
690
- ok: down: redis_lb: 387s, normally up
691
- </pre></div>
692
- </div>
693
- </div>
694
- <div class="section" id="tail">
695
- <h3>tail<a class="headerlink" href="#tail" title="Permalink to this headline">¶</a></h3>
696
- <p>The <tt class="docutils literal"><span class="pre">tail</span></tt> subcommand is used to follow all of the Chef server logs for all services. This command can also be run for an individual service by specifying the name of the service in the command.</p>
697
- <p>This subcommand has the following syntax:</p>
698
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>chef-server-ctl tail name_of_service
699
- </pre></div>
700
- </div>
701
- <p>where <tt class="docutils literal"><span class="pre">name_of_service</span></tt> represents the name of any service that is listed after running the <tt class="docutils literal"><span class="pre">service-list</span></tt> subcommand.</p>
702
- </div>
703
- <div class="section" id="term">
704
- <h3>term<a class="headerlink" href="#term" title="Permalink to this headline">¶</a></h3>
705
- <p>The <tt class="docutils literal"><span class="pre">term</span></tt> subcommand is used to send a <tt class="docutils literal"><span class="pre">SIGTERM</span></tt> to all services. This command can also be run for an individual service by specifying the name of the service in the command.</p>
706
- <p>This subcommand has the following syntax:</p>
707
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>chef-server-ctl term name_of_service
708
- </pre></div>
709
- </div>
710
- <p>where <tt class="docutils literal"><span class="pre">name_of_service</span></tt> represents the name of any service that is listed after running the <tt class="docutils literal"><span class="pre">service-list</span></tt> subcommand.</p>
711
- </div>
712
- </div>
713
- </div>
714
-
715
-
716
- </div>
717
-
718
- </div>
719
-
720
-
721
- <div class="clearer"></div>
722
- </div>
723
-
724
-
725
-
726
-
727
- </body>
728
- </html>