chef 12.8.1 → 12.9.38

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1858) hide show
  1. checksums.yaml +4 -4
  2. data/CONTRIBUTING.md +208 -208
  3. data/Gemfile +54 -49
  4. data/LICENSE +201 -201
  5. data/README.md +139 -139
  6. data/Rakefile +87 -86
  7. data/VERSION +1 -1
  8. data/acceptance/.gitignore +2 -2
  9. data/acceptance/.shared/kitchen_acceptance/.kitchen.digitalocean.yml +33 -33
  10. data/acceptance/.shared/kitchen_acceptance/.kitchen.ec2.yml +292 -290
  11. data/acceptance/.shared/kitchen_acceptance/.kitchen.vagrant.yml +59 -59
  12. data/acceptance/.shared/kitchen_acceptance/libraries/kitchen.rb +51 -51
  13. data/acceptance/.shared/kitchen_acceptance/metadata.rb +1 -1
  14. data/acceptance/Gemfile +13 -14
  15. data/acceptance/README.md +132 -132
  16. data/acceptance/basics/.acceptance/acceptance-cookbook/.gitignore +2 -2
  17. data/acceptance/basics/.acceptance/acceptance-cookbook/metadata.rb +3 -3
  18. data/acceptance/basics/.acceptance/acceptance-cookbook/recipes/destroy.rb +1 -1
  19. data/acceptance/basics/.acceptance/acceptance-cookbook/recipes/provision.rb +1 -1
  20. data/acceptance/basics/.acceptance/acceptance-cookbook/recipes/verify.rb +1 -1
  21. data/acceptance/basics/.kitchen.yml +4 -4
  22. data/acceptance/basics/test/integration/chef-current-install/serverspec/chef_client_spec.rb +19 -19
  23. data/acceptance/basics/test/integration/chef-current-install/serverspec/spec_helper.rb +6 -6
  24. data/acceptance/fips/.acceptance/acceptance-cookbook/.gitignore +2 -2
  25. data/acceptance/fips/.acceptance/acceptance-cookbook/metadata.rb +2 -2
  26. data/acceptance/fips/.acceptance/acceptance-cookbook/recipes/destroy.rb +1 -1
  27. data/acceptance/fips/.acceptance/acceptance-cookbook/recipes/provision.rb +1 -1
  28. data/acceptance/fips/.acceptance/acceptance-cookbook/recipes/verify.rb +1 -1
  29. data/acceptance/fips/.kitchen.yml +4 -4
  30. data/acceptance/fips/test/integration/fips/serverspec/Gemfile +3 -3
  31. data/acceptance/fips/test/integration/fips/serverspec/fips_spec.rb +39 -39
  32. data/acceptance/omnitruck/.acceptance/acceptance-cookbook/.gitignore +2 -0
  33. data/acceptance/omnitruck/.acceptance/acceptance-cookbook/metadata.rb +1 -0
  34. data/acceptance/omnitruck/.acceptance/acceptance-cookbook/recipes/destroy.rb +1 -0
  35. data/acceptance/omnitruck/.acceptance/acceptance-cookbook/recipes/provision.rb +1 -0
  36. data/acceptance/omnitruck/.acceptance/acceptance-cookbook/recipes/verify.rb +61 -0
  37. data/acceptance/top-cookbooks/.acceptance/acceptance-cookbook/.gitignore +2 -2
  38. data/acceptance/top-cookbooks/.acceptance/acceptance-cookbook/libraries/cookbook_kitchen.rb +43 -43
  39. data/acceptance/top-cookbooks/.acceptance/acceptance-cookbook/libraries/top_cookbooks.rb +45 -23
  40. data/acceptance/top-cookbooks/.acceptance/acceptance-cookbook/metadata.rb +3 -3
  41. data/acceptance/top-cookbooks/.acceptance/acceptance-cookbook/recipes/destroy.rb +1 -1
  42. data/acceptance/top-cookbooks/.acceptance/acceptance-cookbook/recipes/provision.rb +1 -1
  43. data/acceptance/top-cookbooks/.acceptance/acceptance-cookbook/recipes/verify.rb +1 -1
  44. data/acceptance/top-cookbooks/.gitignore +1 -1
  45. data/acceptance/top-cookbooks/.kitchen.chocolatey.yml +6 -0
  46. data/acceptance/top-cookbooks/.kitchen.docker.yml +12 -12
  47. data/acceptance/top-cookbooks/.kitchen.git.yml +11 -11
  48. data/acceptance/top-cookbooks/.kitchen.iis.yml +4 -0
  49. data/acceptance/top-cookbooks/.kitchen.learn-the-basics-rhel.yml +7 -7
  50. data/acceptance/top-cookbooks/.kitchen.learn-the-basics-ubuntu.yml +7 -7
  51. data/acceptance/top-cookbooks/.kitchen.learn-the-basics-windows.yml +7 -7
  52. data/acceptance/top-cookbooks/.kitchen.powershell.yml +4 -0
  53. data/acceptance/top-cookbooks/.kitchen.sql_server.yml +5 -0
  54. data/acceptance/top-cookbooks/.kitchen.winbox.yml +8 -0
  55. data/acceptance/top-cookbooks/.kitchen.windows.yml +38 -0
  56. data/acceptance/trivial/.acceptance/acceptance-cookbook/.gitignore +2 -2
  57. data/acceptance/trivial/.acceptance/acceptance-cookbook/metadata.rb +2 -2
  58. data/acceptance/trivial/.acceptance/acceptance-cookbook/recipes/destroy.rb +1 -1
  59. data/acceptance/trivial/.acceptance/acceptance-cookbook/recipes/provision.rb +1 -1
  60. data/acceptance/trivial/.acceptance/acceptance-cookbook/recipes/verify.rb +1 -1
  61. data/acceptance/trivial/.kitchen.yml +7 -7
  62. data/acceptance/trivial/test/integration/chef-current-install/inspec/chef_client_spec.rb +5 -5
  63. data/acceptance/windows-service/.acceptance/acceptance-cookbook/.gitignore +2 -2
  64. data/acceptance/windows-service/.acceptance/acceptance-cookbook/metadata.rb +2 -2
  65. data/acceptance/windows-service/.acceptance/acceptance-cookbook/recipes/destroy.rb +1 -1
  66. data/acceptance/windows-service/.acceptance/acceptance-cookbook/recipes/provision.rb +1 -1
  67. data/acceptance/windows-service/.acceptance/acceptance-cookbook/recipes/verify.rb +1 -1
  68. data/acceptance/windows-service/.kitchen.yml +7 -7
  69. data/acceptance/windows-service/test/integration/chef-windows-service/inspec/chef_windows_service_spec.rb +58 -58
  70. data/bin/chef-apply +25 -25
  71. data/bin/chef-client +26 -26
  72. data/bin/chef-shell +34 -34
  73. data/bin/chef-solo +25 -25
  74. data/bin/knife +25 -25
  75. data/chef-windows.gemspec +24 -24
  76. data/chef.gemspec +64 -63
  77. data/distro/common/html/_sources/ctl_chef_client.txt +35 -35
  78. data/distro/common/html/_sources/ctl_chef_server.txt +341 -341
  79. data/distro/common/html/_sources/ctl_chef_shell.txt +15 -15
  80. data/distro/common/html/_sources/ctl_chef_solo.txt +25 -25
  81. data/distro/common/html/_sources/index.txt +135 -135
  82. data/distro/common/html/_sources/knife.txt +74 -74
  83. data/distro/common/html/_sources/knife_bootstrap.txt +56 -56
  84. data/distro/common/html/_sources/knife_client.txt +150 -150
  85. data/distro/common/html/_sources/knife_common_options.txt +6 -6
  86. data/distro/common/html/_sources/knife_configure.txt +29 -29
  87. data/distro/common/html/_sources/knife_cookbook.txt +236 -236
  88. data/distro/common/html/_sources/knife_cookbook_site.txt +157 -157
  89. data/distro/common/html/_sources/knife_data_bag.txt +159 -159
  90. data/distro/common/html/_sources/knife_delete.txt +26 -26
  91. data/distro/common/html/_sources/knife_deps.txt +61 -61
  92. data/distro/common/html/_sources/knife_diff.txt +34 -34
  93. data/distro/common/html/_sources/knife_download.txt +44 -44
  94. data/distro/common/html/_sources/knife_edit.txt +26 -26
  95. data/distro/common/html/_sources/knife_environment.txt +158 -158
  96. data/distro/common/html/_sources/knife_exec.txt +47 -47
  97. data/distro/common/html/_sources/knife_index_rebuild.txt +20 -20
  98. data/distro/common/html/_sources/knife_list.txt +33 -33
  99. data/distro/common/html/_sources/knife_node.txt +250 -250
  100. data/distro/common/html/_sources/knife_raw.txt +35 -35
  101. data/distro/common/html/_sources/knife_recipe_list.txt +23 -23
  102. data/distro/common/html/_sources/knife_role.txt +157 -157
  103. data/distro/common/html/_sources/knife_search.txt +53 -53
  104. data/distro/common/html/_sources/knife_serve.txt +18 -18
  105. data/distro/common/html/_sources/knife_show.txt +26 -26
  106. data/distro/common/html/_sources/knife_ssh.txt +43 -43
  107. data/distro/common/html/_sources/knife_ssl_check.txt +41 -41
  108. data/distro/common/html/_sources/knife_ssl_fetch.txt +41 -41
  109. data/distro/common/html/_sources/knife_status.txt +37 -37
  110. data/distro/common/html/_sources/knife_tag.txt +69 -69
  111. data/distro/common/html/_sources/knife_upload.txt +49 -49
  112. data/distro/common/html/_sources/knife_user.txt +127 -127
  113. data/distro/common/html/_sources/knife_using.txt +43 -43
  114. data/distro/common/html/_sources/knife_xargs.txt +30 -30
  115. data/distro/common/html/_static/basic.css +536 -536
  116. data/distro/common/html/_static/doctools.js +238 -238
  117. data/distro/common/html/_static/guide.css +504 -504
  118. data/distro/common/html/_static/pygments.css +61 -61
  119. data/distro/common/html/_static/searchtools.js +621 -621
  120. data/distro/common/html/_static/underscore.js +31 -31
  121. data/distro/common/html/_static/websupport.js +808 -808
  122. data/distro/common/html/ctl_chef_client.html +269 -269
  123. data/distro/common/html/ctl_chef_server.html +727 -727
  124. data/distro/common/html/ctl_chef_shell.html +162 -162
  125. data/distro/common/html/ctl_chef_solo.html +193 -193
  126. data/distro/common/html/index.html +201 -201
  127. data/distro/common/html/knife.html +169 -169
  128. data/distro/common/html/knife_bootstrap.html +284 -284
  129. data/distro/common/html/knife_client.html +284 -284
  130. data/distro/common/html/knife_common_options.html +95 -95
  131. data/distro/common/html/knife_configure.html +104 -104
  132. data/distro/common/html/knife_cookbook.html +486 -486
  133. data/distro/common/html/knife_cookbook_site.html +375 -375
  134. data/distro/common/html/knife_data_bag.html +373 -373
  135. data/distro/common/html/knife_delete.html +92 -92
  136. data/distro/common/html/knife_deps.html +142 -142
  137. data/distro/common/html/knife_diff.html +122 -122
  138. data/distro/common/html/knife_download.html +144 -144
  139. data/distro/common/html/knife_edit.html +88 -88
  140. data/distro/common/html/knife_environment.html +325 -325
  141. data/distro/common/html/knife_exec.html +219 -219
  142. data/distro/common/html/knife_index_rebuild.html +82 -82
  143. data/distro/common/html/knife_list.html +113 -113
  144. data/distro/common/html/knife_node.html +457 -457
  145. data/distro/common/html/knife_raw.html +109 -109
  146. data/distro/common/html/knife_recipe_list.html +90 -90
  147. data/distro/common/html/knife_role.html +294 -294
  148. data/distro/common/html/knife_search.html +202 -202
  149. data/distro/common/html/knife_serve.html +78 -78
  150. data/distro/common/html/knife_show.html +103 -103
  151. data/distro/common/html/knife_ssh.html +176 -176
  152. data/distro/common/html/knife_ssl_check.html +150 -150
  153. data/distro/common/html/knife_ssl_fetch.html +150 -150
  154. data/distro/common/html/knife_status.html +143 -143
  155. data/distro/common/html/knife_tag.html +137 -137
  156. data/distro/common/html/knife_upload.html +152 -152
  157. data/distro/common/html/knife_user.html +241 -241
  158. data/distro/common/html/knife_using.html +209 -209
  159. data/distro/common/html/knife_xargs.html +121 -121
  160. data/distro/common/html/search.html +81 -81
  161. data/distro/common/man/man1/README.md +58 -58
  162. data/distro/common/man/man1/chef-shell.1 +194 -194
  163. data/distro/common/man/man1/knife-bootstrap.1 +215 -215
  164. data/distro/common/man/man1/knife-client.1 +443 -443
  165. data/distro/common/man/man1/knife-configure.1 +161 -161
  166. data/distro/common/man/man1/knife-cookbook-site.1 +552 -552
  167. data/distro/common/man/man1/knife-cookbook.1 +770 -770
  168. data/distro/common/man/man1/knife-data-bag.1 +617 -617
  169. data/distro/common/man/man1/knife-delete.1 +127 -127
  170. data/distro/common/man/man1/knife-deps.1 +246 -246
  171. data/distro/common/man/man1/knife-diff.1 +226 -226
  172. data/distro/common/man/man1/knife-download.1 +258 -258
  173. data/distro/common/man/man1/knife-edit.1 +121 -121
  174. data/distro/common/man/man1/knife-environment.1 +508 -508
  175. data/distro/common/man/man1/knife-exec.1 +362 -362
  176. data/distro/common/man/man1/knife-index-rebuild.1 +63 -63
  177. data/distro/common/man/man1/knife-list.1 +174 -174
  178. data/distro/common/man/man1/knife-node.1 +716 -716
  179. data/distro/common/man/man1/knife-raw.1 +172 -172
  180. data/distro/common/man/man1/knife-recipe-list.1 +85 -85
  181. data/distro/common/man/man1/knife-role.1 +426 -426
  182. data/distro/common/man/man1/knife-search.1 +359 -359
  183. data/distro/common/man/man1/knife-serve.1 +109 -109
  184. data/distro/common/man/man1/knife-show.1 +160 -160
  185. data/distro/common/man/man1/knife-ssh.1 +284 -284
  186. data/distro/common/man/man1/knife-ssl-check.1 +207 -207
  187. data/distro/common/man/man1/knife-ssl-fetch.1 +207 -207
  188. data/distro/common/man/man1/knife-status.1 +234 -234
  189. data/distro/common/man/man1/knife-tag.1 +189 -189
  190. data/distro/common/man/man1/knife-upload.1 +280 -280
  191. data/distro/common/man/man1/knife-user.1 +356 -356
  192. data/distro/common/man/man1/knife-xargs.1 +189 -189
  193. data/distro/common/man/man1/knife.1 +332 -332
  194. data/distro/common/man/man8/chef-apply.8 +86 -86
  195. data/distro/common/man/man8/chef-client.8 +398 -398
  196. data/distro/common/man/man8/chef-solo.8 +260 -260
  197. data/distro/common/markdown/README +3 -3
  198. data/distro/common/markdown/man1/chef-shell.mkd +195 -195
  199. data/distro/common/markdown/man1/knife-bootstrap.mkd +141 -141
  200. data/distro/common/markdown/man1/knife-client.mkd +103 -103
  201. data/distro/common/markdown/man1/knife-configure.mkd +70 -70
  202. data/distro/common/markdown/man1/knife-cookbook-site.mkd +123 -123
  203. data/distro/common/markdown/man1/knife-cookbook.mkd +263 -263
  204. data/distro/common/markdown/man1/knife-data-bag.mkd +121 -121
  205. data/distro/common/markdown/man1/knife-environment.mkd +151 -151
  206. data/distro/common/markdown/man1/knife-exec.mkd +42 -42
  207. data/distro/common/markdown/man1/knife-index.mkd +30 -30
  208. data/distro/common/markdown/man1/knife-node.mkd +130 -130
  209. data/distro/common/markdown/man1/knife-role.mkd +85 -85
  210. data/distro/common/markdown/man1/knife-search.mkd +180 -180
  211. data/distro/common/markdown/man1/knife-ssh.mkd +69 -69
  212. data/distro/common/markdown/man1/knife-status.mkd +36 -36
  213. data/distro/common/markdown/man1/knife-tag.mkd +39 -39
  214. data/distro/common/markdown/man1/knife.mkd +213 -213
  215. data/distro/common/markdown/man8/chef-client.mkd +75 -75
  216. data/distro/common/markdown/man8/chef-expander.mkd +81 -81
  217. data/distro/common/markdown/man8/chef-expanderctl.mkd +57 -57
  218. data/distro/common/markdown/man8/chef-server-webui.mkd +121 -121
  219. data/distro/common/markdown/man8/chef-server.mkd +120 -120
  220. data/distro/common/markdown/man8/chef-solo.mkd +107 -107
  221. data/distro/common/markdown/man8/chef-solr.mkd +89 -89
  222. data/distro/powershell/chef/chef.psm1 +327 -327
  223. data/lib-backcompat/chef/chef_fs/file_system/acl_entry.rb +5 -5
  224. data/lib-backcompat/chef/chef_fs/file_system/chef_repository_file_system_root_dir.rb +5 -5
  225. data/lib-backcompat/chef/chef_fs/file_system/chef_server_root_dir.rb +5 -5
  226. data/lib/chef.rb +35 -35
  227. data/lib/chef/api_client.rb +233 -233
  228. data/lib/chef/api_client/registration.rb +192 -192
  229. data/lib/chef/api_client_v1.rb +325 -325
  230. data/lib/chef/application.rb +357 -342
  231. data/lib/chef/application/apply.rb +221 -221
  232. data/lib/chef/application/client.rb +520 -513
  233. data/lib/chef/application/knife.rb +208 -208
  234. data/lib/chef/application/solo.rb +334 -334
  235. data/lib/chef/application/windows_service.rb +338 -338
  236. data/lib/chef/application/windows_service_manager.rb +202 -202
  237. data/lib/chef/applications.rb +4 -4
  238. data/lib/chef/audit/audit_event_proxy.rb +93 -93
  239. data/lib/chef/audit/audit_reporter.rb +172 -172
  240. data/lib/chef/audit/control_group_data.rb +139 -139
  241. data/lib/chef/audit/logger.rb +36 -36
  242. data/lib/chef/audit/rspec_formatter.rb +37 -37
  243. data/lib/chef/audit/runner.rb +196 -196
  244. data/lib/chef/chef_class.rb +228 -228
  245. data/lib/chef/chef_fs.rb +59 -59
  246. data/lib/chef/chef_fs/chef_fs_data_store.rb +871 -871
  247. data/lib/chef/chef_fs/command_line.rb +285 -285
  248. data/lib/chef/chef_fs/config.rb +284 -283
  249. data/lib/chef/chef_fs/data_handler/acl_data_handler.rb +26 -26
  250. data/lib/chef/chef_fs/data_handler/client_data_handler.rb +39 -39
  251. data/lib/chef/chef_fs/data_handler/client_key_data_handler.rb +11 -11
  252. data/lib/chef/chef_fs/data_handler/container_data_handler.rb +35 -35
  253. data/lib/chef/chef_fs/data_handler/cookbook_data_handler.rb +38 -38
  254. data/lib/chef/chef_fs/data_handler/data_bag_item_data_handler.rb +62 -62
  255. data/lib/chef/chef_fs/data_handler/data_handler_base.rb +204 -204
  256. data/lib/chef/chef_fs/data_handler/environment_data_handler.rb +40 -40
  257. data/lib/chef/chef_fs/data_handler/group_data_handler.rb +55 -55
  258. data/lib/chef/chef_fs/data_handler/node_data_handler.rb +36 -36
  259. data/lib/chef/chef_fs/data_handler/organization_data_handler.rb +36 -36
  260. data/lib/chef/chef_fs/data_handler/organization_invites_data_handler.rb +17 -17
  261. data/lib/chef/chef_fs/data_handler/organization_members_data_handler.rb +17 -17
  262. data/lib/chef/chef_fs/data_handler/policy_data_handler.rb +48 -48
  263. data/lib/chef/chef_fs/data_handler/policy_group_data_handler.rb +33 -33
  264. data/lib/chef/chef_fs/data_handler/role_data_handler.rb +40 -40
  265. data/lib/chef/chef_fs/data_handler/user_data_handler.rb +29 -29
  266. data/lib/chef/chef_fs/file_pattern.rb +301 -301
  267. data/lib/chef/chef_fs/file_system.rb +429 -429
  268. data/lib/chef/chef_fs/file_system/already_exists_error.rb +28 -28
  269. data/lib/chef/chef_fs/file_system/base_fs_dir.rb +47 -47
  270. data/lib/chef/chef_fs/file_system/base_fs_object.rb +183 -183
  271. data/lib/chef/chef_fs/file_system/chef_server/acl_dir.rb +65 -65
  272. data/lib/chef/chef_fs/file_system/chef_server/acl_entry.rb +60 -60
  273. data/lib/chef/chef_fs/file_system/chef_server/acls_dir.rb +75 -75
  274. data/lib/chef/chef_fs/file_system/chef_server/chef_server_root_dir.rb +196 -196
  275. data/lib/chef/chef_fs/file_system/chef_server/cookbook_artifact_dir.rb +38 -38
  276. data/lib/chef/chef_fs/file_system/chef_server/cookbook_artifacts_dir.rb +102 -102
  277. data/lib/chef/chef_fs/file_system/chef_server/cookbook_dir.rb +222 -222
  278. data/lib/chef/chef_fs/file_system/chef_server/cookbook_file.rb +84 -84
  279. data/lib/chef/chef_fs/file_system/chef_server/cookbook_subdir.rb +61 -61
  280. data/lib/chef/chef_fs/file_system/chef_server/cookbooks_acl_dir.rb +42 -42
  281. data/lib/chef/chef_fs/file_system/chef_server/cookbooks_dir.rb +102 -102
  282. data/lib/chef/chef_fs/file_system/chef_server/data_bag_dir.rb +71 -71
  283. data/lib/chef/chef_fs/file_system/chef_server/data_bags_dir.rb +69 -69
  284. data/lib/chef/chef_fs/file_system/chef_server/environments_dir.rb +57 -57
  285. data/lib/chef/chef_fs/file_system/chef_server/nodes_dir.rb +53 -53
  286. data/lib/chef/chef_fs/file_system/chef_server/org_entry.rb +31 -31
  287. data/lib/chef/chef_fs/file_system/chef_server/organization_invites_entry.rb +61 -61
  288. data/lib/chef/chef_fs/file_system/chef_server/organization_members_entry.rb +60 -60
  289. data/lib/chef/chef_fs/file_system/chef_server/policies_acl_dir.rb +41 -41
  290. data/lib/chef/chef_fs/file_system/chef_server/policies_dir.rb +160 -160
  291. data/lib/chef/chef_fs/file_system/chef_server/policy_group_entry.rb +137 -137
  292. data/lib/chef/chef_fs/file_system/chef_server/policy_groups_dir.rb +43 -43
  293. data/lib/chef/chef_fs/file_system/chef_server/policy_revision_entry.rb +34 -34
  294. data/lib/chef/chef_fs/file_system/chef_server/rest_list_dir.rb +178 -178
  295. data/lib/chef/chef_fs/file_system/chef_server/rest_list_entry.rb +187 -187
  296. data/lib/chef/chef_fs/file_system/chef_server/versioned_cookbook_dir.rb +45 -45
  297. data/lib/chef/chef_fs/file_system/chef_server/versioned_cookbooks_dir.rb +107 -107
  298. data/lib/chef/chef_fs/file_system/cookbook_frozen_error.rb +28 -28
  299. data/lib/chef/chef_fs/file_system/default_environment_cannot_be_modified_error.rb +32 -32
  300. data/lib/chef/chef_fs/file_system/file_system_error.rb +44 -44
  301. data/lib/chef/chef_fs/file_system/memory/memory_dir.rb +53 -53
  302. data/lib/chef/chef_fs/file_system/memory/memory_file.rb +20 -20
  303. data/lib/chef/chef_fs/file_system/memory/memory_root.rb +23 -23
  304. data/lib/chef/chef_fs/file_system/multiplexed_dir.rb +64 -64
  305. data/lib/chef/chef_fs/file_system/must_delete_recursively_error.rb +28 -28
  306. data/lib/chef/chef_fs/file_system/nonexistent_fs_object.rb +36 -36
  307. data/lib/chef/chef_fs/file_system/not_found_error.rb +28 -28
  308. data/lib/chef/chef_fs/file_system/operation_failed_error.rb +42 -42
  309. data/lib/chef/chef_fs/file_system/operation_not_allowed_error.rb +46 -46
  310. data/lib/chef/chef_fs/file_system/repository/chef_repository_file_system_acls_dir.rb +39 -39
  311. data/lib/chef/chef_fs/file_system/repository/chef_repository_file_system_client_keys_dir.rb +38 -38
  312. data/lib/chef/chef_fs/file_system/repository/chef_repository_file_system_cookbook_artifact_dir.rb +41 -41
  313. data/lib/chef/chef_fs/file_system/repository/chef_repository_file_system_cookbook_dir.rb +146 -146
  314. data/lib/chef/chef_fs/file_system/repository/chef_repository_file_system_cookbook_entry.rb +176 -176
  315. data/lib/chef/chef_fs/file_system/repository/chef_repository_file_system_entry.rb +83 -83
  316. data/lib/chef/chef_fs/file_system/repository/chef_repository_file_system_policies_dir.rb +38 -38
  317. data/lib/chef/chef_fs/file_system/repository/chef_repository_file_system_root_dir.rb +214 -214
  318. data/lib/chef/chef_fs/file_system/repository/chef_repository_file_system_versioned_cookbook_dir.rb +42 -42
  319. data/lib/chef/chef_fs/file_system/repository/cookbook_artifacts_dir.rb +36 -36
  320. data/lib/chef/chef_fs/file_system/repository/cookbooks_dir.rb +52 -52
  321. data/lib/chef/chef_fs/file_system/repository/data_bag.rb +39 -39
  322. data/lib/chef/chef_fs/file_system/repository/data_bag_item.rb +114 -114
  323. data/lib/chef/chef_fs/file_system/repository/data_bags_dir.rb +39 -39
  324. data/lib/chef/chef_fs/file_system/repository/directory.rb +139 -139
  325. data/lib/chef/chef_fs/file_system/repository/file_system_entry.rb +117 -117
  326. data/lib/chef/chef_fs/file_system/repository/file_system_root_dir.rb +33 -33
  327. data/lib/chef/chef_fs/file_system/repository/versioned_cookbooks_dir.rb +34 -34
  328. data/lib/chef/chef_fs/knife.rb +161 -161
  329. data/lib/chef/chef_fs/parallelizer.rb +105 -105
  330. data/lib/chef/chef_fs/parallelizer/flatten_enumerable.rb +35 -35
  331. data/lib/chef/chef_fs/parallelizer/parallel_enumerable.rb +281 -281
  332. data/lib/chef/chef_fs/path_utils.rb +127 -127
  333. data/lib/chef/client.rb +966 -967
  334. data/lib/chef/config.rb +85 -85
  335. data/lib/chef/config_fetcher.rb +72 -72
  336. data/lib/chef/constants.rb +28 -28
  337. data/lib/chef/cookbook/chefignore.rb +74 -74
  338. data/lib/chef/cookbook/cookbook_collection.rb +63 -63
  339. data/lib/chef/cookbook/cookbook_version_loader.rb +352 -352
  340. data/lib/chef/cookbook/file_system_file_vendor.rb +59 -59
  341. data/lib/chef/cookbook/file_vendor.rb +71 -71
  342. data/lib/chef/cookbook/gem_installer.rb +83 -118
  343. data/lib/chef/cookbook/metadata.rb +904 -904
  344. data/lib/chef/cookbook/remote_file_vendor.rb +87 -87
  345. data/lib/chef/cookbook/synchronizer.rb +298 -298
  346. data/lib/chef/cookbook/syntax_check.rb +260 -260
  347. data/lib/chef/cookbook_loader.rb +200 -200
  348. data/lib/chef/cookbook_manifest.rb +290 -290
  349. data/lib/chef/cookbook_site_streaming_uploader.rb +243 -244
  350. data/lib/chef/cookbook_uploader.rb +157 -157
  351. data/lib/chef/cookbook_version.rb +637 -631
  352. data/lib/chef/daemon.rb +131 -131
  353. data/lib/chef/data_bag.rb +176 -176
  354. data/lib/chef/data_bag_item.rb +218 -218
  355. data/lib/chef/delayed_evaluator.rb +21 -21
  356. data/lib/chef/deprecation/mixin/template.rb +48 -48
  357. data/lib/chef/deprecation/provider/cookbook_file.rb +54 -54
  358. data/lib/chef/deprecation/provider/file.rb +198 -198
  359. data/lib/chef/deprecation/provider/remote_directory.rb +52 -52
  360. data/lib/chef/deprecation/provider/remote_file.rb +85 -85
  361. data/lib/chef/deprecation/provider/template.rb +63 -63
  362. data/lib/chef/deprecation/warnings.rb +37 -38
  363. data/lib/chef/digester.rb +74 -74
  364. data/lib/chef/dsl.rb +6 -6
  365. data/lib/chef/dsl/audit.rb +51 -51
  366. data/lib/chef/dsl/chef_provisioning.rb +57 -57
  367. data/lib/chef/dsl/cheffish.rb +64 -64
  368. data/lib/chef/dsl/core.rb +42 -0
  369. data/lib/chef/dsl/data_query.rb +89 -89
  370. data/lib/chef/dsl/declare_resource.rb +106 -108
  371. data/lib/chef/dsl/definitions.rb +43 -43
  372. data/lib/chef/dsl/include_attribute.rb +61 -61
  373. data/lib/chef/dsl/include_recipe.rb +44 -44
  374. data/lib/chef/dsl/method_missing.rb +75 -0
  375. data/lib/chef/dsl/platform_introspection.rb +254 -254
  376. data/lib/chef/dsl/powershell.rb +29 -29
  377. data/lib/chef/dsl/reboot_pending.rb +64 -64
  378. data/lib/chef/dsl/recipe.rb +89 -134
  379. data/lib/chef/dsl/registry_helper.rb +63 -63
  380. data/lib/chef/dsl/resources.rb +58 -58
  381. data/lib/chef/encrypted_data_bag_item.rb +155 -155
  382. data/lib/chef/encrypted_data_bag_item/assertions.rb +54 -54
  383. data/lib/chef/encrypted_data_bag_item/check_encrypted.rb +56 -56
  384. data/lib/chef/encrypted_data_bag_item/decryption_failure.rb +22 -22
  385. data/lib/chef/encrypted_data_bag_item/decryptor.rb +227 -227
  386. data/lib/chef/encrypted_data_bag_item/encrypted_data_bag_item_assertions.rb +37 -37
  387. data/lib/chef/encrypted_data_bag_item/encryption_failure.rb +22 -22
  388. data/lib/chef/encrypted_data_bag_item/encryptor.rb +225 -225
  389. data/lib/chef/encrypted_data_bag_item/unacceptable_encrypted_data_bag_item_format.rb +22 -22
  390. data/lib/chef/encrypted_data_bag_item/unsupported_cipher.rb +22 -22
  391. data/lib/chef/encrypted_data_bag_item/unsupported_encrypted_data_bag_item_format.rb +22 -22
  392. data/lib/chef/environment.rb +326 -326
  393. data/lib/chef/event_dispatch/base.rb +426 -420
  394. data/lib/chef/event_dispatch/dispatcher.rb +62 -62
  395. data/lib/chef/event_dispatch/dsl.rb +65 -65
  396. data/lib/chef/event_dispatch/events_output_stream.rb +37 -37
  397. data/lib/chef/event_loggers/base.rb +62 -62
  398. data/lib/chef/event_loggers/windows_eventlog.rb +101 -101
  399. data/lib/chef/exceptions.rb +504 -504
  400. data/lib/chef/file_access_control.rb +75 -75
  401. data/lib/chef/file_access_control/unix.rb +290 -290
  402. data/lib/chef/file_access_control/windows.rb +335 -335
  403. data/lib/chef/file_cache.rb +221 -221
  404. data/lib/chef/file_content_management/content_base.rb +56 -56
  405. data/lib/chef/file_content_management/deploy.rb +37 -37
  406. data/lib/chef/file_content_management/deploy/cp.rb +48 -48
  407. data/lib/chef/file_content_management/deploy/mv_unix.rb +76 -76
  408. data/lib/chef/file_content_management/deploy/mv_windows.rb +103 -103
  409. data/lib/chef/file_content_management/tempfile.rb +97 -97
  410. data/lib/chef/formatters/base.rb +237 -237
  411. data/lib/chef/formatters/doc.rb +438 -422
  412. data/lib/chef/formatters/{error_descriptor.rb → error_description.rb} +69 -67
  413. data/lib/chef/formatters/error_inspectors.rb +19 -19
  414. data/lib/chef/formatters/error_inspectors/api_error_formatting.rb +184 -184
  415. data/lib/chef/formatters/error_inspectors/compile_error_inspector.rb +154 -154
  416. data/lib/chef/formatters/error_inspectors/cookbook_resolve_error_inspector.rb +168 -168
  417. data/lib/chef/formatters/error_inspectors/cookbook_sync_error_inspector.rb +82 -82
  418. data/lib/chef/formatters/error_inspectors/node_load_error_inspector.rb +128 -128
  419. data/lib/chef/formatters/error_inspectors/registration_error_inspector.rb +147 -147
  420. data/lib/chef/formatters/error_inspectors/resource_failure_inspector.rb +124 -124
  421. data/lib/chef/formatters/error_inspectors/run_list_expansion_error_inspector.rb +121 -121
  422. data/lib/chef/formatters/error_mapper.rb +85 -85
  423. data/lib/chef/formatters/indentable_output_stream.rb +170 -170
  424. data/lib/chef/formatters/minimal.rb +233 -233
  425. data/lib/chef/guard_interpreter.rb +32 -32
  426. data/lib/chef/guard_interpreter/default_guard_interpreter.rb +43 -43
  427. data/lib/chef/guard_interpreter/resource_guard_interpreter.rb +138 -138
  428. data/lib/chef/handler.rb +235 -235
  429. data/lib/chef/handler/error_report.rb +33 -33
  430. data/lib/chef/handler/json_file.rb +63 -63
  431. data/lib/chef/http.rb +460 -430
  432. data/lib/chef/http/auth_credentials.rb +57 -57
  433. data/lib/chef/http/authenticator.rb +106 -106
  434. data/lib/chef/http/basic_client.rb +149 -169
  435. data/lib/chef/http/cookie_jar.rb +31 -31
  436. data/lib/chef/http/cookie_manager.rb +59 -59
  437. data/lib/chef/http/decompressor.rb +142 -142
  438. data/lib/chef/http/http_request.rb +186 -186
  439. data/lib/chef/http/json_input.rb +73 -73
  440. data/lib/chef/http/json_output.rb +78 -78
  441. data/lib/chef/http/json_to_model_output.rb +34 -34
  442. data/lib/chef/http/remote_request_id.rb +46 -46
  443. data/lib/chef/http/simple.rb +40 -40
  444. data/lib/chef/http/simple_json.rb +43 -43
  445. data/lib/chef/http/socketless_chef_zero_client.rb +208 -207
  446. data/lib/chef/http/ssl_policies.rb +130 -130
  447. data/lib/chef/http/validate_content_length.rb +114 -115
  448. data/lib/chef/json_compat.rb +164 -164
  449. data/lib/chef/key.rb +273 -273
  450. data/lib/chef/knife.rb +587 -587
  451. data/lib/chef/knife/bootstrap.rb +480 -480
  452. data/lib/chef/knife/bootstrap/chef_vault_handler.rb +159 -159
  453. data/lib/chef/knife/bootstrap/client_builder.rb +208 -208
  454. data/lib/chef/knife/bootstrap/templates/README.md +11 -11
  455. data/lib/chef/knife/bootstrap/templates/chef-full.erb +236 -236
  456. data/lib/chef/knife/client_bulk_delete.rb +104 -104
  457. data/lib/chef/knife/client_create.rb +111 -111
  458. data/lib/chef/knife/client_delete.rb +60 -60
  459. data/lib/chef/knife/client_edit.rb +53 -53
  460. data/lib/chef/knife/client_key_create.rb +67 -67
  461. data/lib/chef/knife/client_key_delete.rb +76 -76
  462. data/lib/chef/knife/client_key_edit.rb +79 -79
  463. data/lib/chef/knife/client_key_list.rb +69 -69
  464. data/lib/chef/knife/client_key_show.rb +76 -76
  465. data/lib/chef/knife/client_list.rb +42 -42
  466. data/lib/chef/knife/client_reregister.rb +59 -59
  467. data/lib/chef/knife/client_show.rb +49 -49
  468. data/lib/chef/knife/configure.rb +171 -171
  469. data/lib/chef/knife/configure_client.rb +50 -50
  470. data/lib/chef/knife/cookbook_bulk_delete.rb +71 -71
  471. data/lib/chef/knife/cookbook_create.rb +458 -448
  472. data/lib/chef/knife/cookbook_delete.rb +151 -151
  473. data/lib/chef/knife/cookbook_download.rb +143 -143
  474. data/lib/chef/knife/cookbook_list.rb +47 -47
  475. data/lib/chef/knife/cookbook_metadata.rb +107 -108
  476. data/lib/chef/knife/cookbook_metadata_from_file.rb +44 -44
  477. data/lib/chef/knife/cookbook_show.rb +98 -98
  478. data/lib/chef/knife/cookbook_site_download.rb +109 -109
  479. data/lib/chef/knife/cookbook_site_install.rb +192 -192
  480. data/lib/chef/knife/cookbook_site_list.rb +58 -58
  481. data/lib/chef/knife/cookbook_site_search.rb +46 -46
  482. data/lib/chef/knife/cookbook_site_share.rb +169 -169
  483. data/lib/chef/knife/cookbook_site_show.rb +55 -55
  484. data/lib/chef/knife/cookbook_site_unshare.rb +56 -56
  485. data/lib/chef/knife/cookbook_site_vendor.rb +46 -46
  486. data/lib/chef/knife/cookbook_test.rb +95 -95
  487. data/lib/chef/knife/cookbook_upload.rb +308 -308
  488. data/lib/chef/knife/core/bootstrap_context.rb +233 -233
  489. data/lib/chef/knife/core/cookbook_scm_repo.rb +159 -159
  490. data/lib/chef/knife/core/custom_manifest_loader.rb +69 -69
  491. data/lib/chef/knife/core/gem_glob_loader.rb +138 -138
  492. data/lib/chef/knife/core/generic_presenter.rb +222 -222
  493. data/lib/chef/knife/core/hashed_command_loader.rb +99 -99
  494. data/lib/chef/knife/core/node_editor.rb +130 -130
  495. data/lib/chef/knife/core/node_presenter.rb +159 -159
  496. data/lib/chef/knife/core/object_loader.rb +115 -115
  497. data/lib/chef/knife/core/status_presenter.rb +157 -157
  498. data/lib/chef/knife/core/subcommand_loader.rb +212 -212
  499. data/lib/chef/knife/core/text_formatter.rb +85 -85
  500. data/lib/chef/knife/core/ui.rb +284 -284
  501. data/lib/chef/knife/data_bag_create.rb +78 -78
  502. data/lib/chef/knife/data_bag_delete.rb +49 -49
  503. data/lib/chef/knife/data_bag_edit.rb +74 -74
  504. data/lib/chef/knife/data_bag_from_file.rb +114 -114
  505. data/lib/chef/knife/data_bag_list.rb +42 -42
  506. data/lib/chef/knife/data_bag_secret_options.rb +142 -142
  507. data/lib/chef/knife/data_bag_show.rb +69 -69
  508. data/lib/chef/knife/delete.rb +107 -107
  509. data/lib/chef/knife/deps.rb +140 -140
  510. data/lib/chef/knife/diff.rb +68 -68
  511. data/lib/chef/knife/download.rb +68 -68
  512. data/lib/chef/knife/edit.rb +72 -72
  513. data/lib/chef/knife/environment_compare.rb +127 -127
  514. data/lib/chef/knife/environment_create.rb +53 -53
  515. data/lib/chef/knife/environment_delete.rb +45 -45
  516. data/lib/chef/knife/environment_edit.rb +45 -45
  517. data/lib/chef/knife/environment_from_file.rb +82 -82
  518. data/lib/chef/knife/environment_list.rb +42 -42
  519. data/lib/chef/knife/environment_show.rb +48 -48
  520. data/lib/chef/knife/exec.rb +87 -87
  521. data/lib/chef/knife/help.rb +101 -101
  522. data/lib/chef/knife/help_topics.rb +4 -4
  523. data/lib/chef/knife/index_rebuild.rb +133 -133
  524. data/lib/chef/knife/key_create.rb +112 -112
  525. data/lib/chef/knife/key_create_base.rb +50 -50
  526. data/lib/chef/knife/key_delete.rb +55 -55
  527. data/lib/chef/knife/key_edit.rb +118 -118
  528. data/lib/chef/knife/key_edit_base.rb +55 -55
  529. data/lib/chef/knife/key_list.rb +88 -88
  530. data/lib/chef/knife/key_list_base.rb +45 -45
  531. data/lib/chef/knife/key_show.rb +53 -53
  532. data/lib/chef/knife/list.rb +157 -157
  533. data/lib/chef/knife/node_bulk_delete.rb +74 -74
  534. data/lib/chef/knife/node_create.rb +47 -47
  535. data/lib/chef/knife/node_delete.rb +46 -46
  536. data/lib/chef/knife/node_edit.rb +70 -70
  537. data/lib/chef/knife/node_environment_set.rb +54 -54
  538. data/lib/chef/knife/node_from_file.rb +51 -51
  539. data/lib/chef/knife/node_list.rb +44 -44
  540. data/lib/chef/knife/node_run_list_add.rb +104 -104
  541. data/lib/chef/knife/node_run_list_remove.rb +67 -67
  542. data/lib/chef/knife/node_run_list_set.rb +66 -66
  543. data/lib/chef/knife/node_show.rb +66 -66
  544. data/lib/chef/knife/null.rb +10 -10
  545. data/lib/chef/knife/osc_user_create.rb +97 -97
  546. data/lib/chef/knife/osc_user_delete.rb +51 -51
  547. data/lib/chef/knife/osc_user_edit.rb +58 -58
  548. data/lib/chef/knife/osc_user_list.rb +47 -47
  549. data/lib/chef/knife/osc_user_reregister.rb +64 -64
  550. data/lib/chef/knife/osc_user_show.rb +54 -54
  551. data/lib/chef/knife/raw.rb +103 -103
  552. data/lib/chef/knife/recipe_list.rb +32 -32
  553. data/lib/chef/knife/rehash.rb +65 -65
  554. data/lib/chef/knife/role_bulk_delete.rb +65 -65
  555. data/lib/chef/knife/role_create.rb +53 -53
  556. data/lib/chef/knife/role_delete.rb +46 -46
  557. data/lib/chef/knife/role_edit.rb +45 -45
  558. data/lib/chef/knife/role_env_run_list_add.rb +86 -86
  559. data/lib/chef/knife/role_env_run_list_clear.rb +55 -55
  560. data/lib/chef/knife/role_env_run_list_remove.rb +57 -57
  561. data/lib/chef/knife/role_env_run_list_replace.rb +59 -59
  562. data/lib/chef/knife/role_env_run_list_set.rb +70 -70
  563. data/lib/chef/knife/role_from_file.rb +51 -51
  564. data/lib/chef/knife/role_list.rb +42 -42
  565. data/lib/chef/knife/role_run_list_add.rb +86 -86
  566. data/lib/chef/knife/role_run_list_clear.rb +55 -55
  567. data/lib/chef/knife/role_run_list_remove.rb +57 -57
  568. data/lib/chef/knife/role_run_list_replace.rb +59 -59
  569. data/lib/chef/knife/role_run_list_set.rb +70 -70
  570. data/lib/chef/knife/role_show.rb +49 -49
  571. data/lib/chef/knife/search.rb +201 -201
  572. data/lib/chef/knife/serve.rb +48 -48
  573. data/lib/chef/knife/show.rb +56 -56
  574. data/lib/chef/knife/ssh.rb +582 -572
  575. data/lib/chef/knife/ssl_check.rb +282 -281
  576. data/lib/chef/knife/ssl_fetch.rb +157 -157
  577. data/lib/chef/knife/status.rb +110 -110
  578. data/lib/chef/knife/tag_create.rb +52 -52
  579. data/lib/chef/knife/tag_delete.rb +60 -60
  580. data/lib/chef/knife/tag_list.rb +47 -47
  581. data/lib/chef/knife/upload.rb +70 -70
  582. data/lib/chef/knife/user_create.rb +150 -150
  583. data/lib/chef/knife/user_delete.rb +95 -95
  584. data/lib/chef/knife/user_edit.rb +81 -81
  585. data/lib/chef/knife/user_key_create.rb +69 -69
  586. data/lib/chef/knife/user_key_delete.rb +76 -76
  587. data/lib/chef/knife/user_key_edit.rb +79 -79
  588. data/lib/chef/knife/user_key_list.rb +69 -69
  589. data/lib/chef/knife/user_key_show.rb +76 -76
  590. data/lib/chef/knife/user_list.rb +45 -45
  591. data/lib/chef/knife/user_reregister.rb +89 -89
  592. data/lib/chef/knife/user_show.rb +78 -78
  593. data/lib/chef/knife/xargs.rb +266 -266
  594. data/lib/chef/local_mode.rb +128 -128
  595. data/lib/chef/log.rb +68 -68
  596. data/lib/chef/log/syslog.rb +45 -45
  597. data/lib/chef/log/winevt.rb +99 -99
  598. data/lib/chef/mash.rb +226 -226
  599. data/lib/chef/mixin/api_version_request_handling.rb +66 -66
  600. data/lib/chef/mixin/checksum.rb +32 -32
  601. data/lib/chef/mixin/command.rb +193 -193
  602. data/lib/chef/mixin/command/unix.rb +220 -220
  603. data/lib/chef/mixin/command/windows.rb +71 -71
  604. data/lib/chef/mixin/convert_to_class_name.rb +126 -126
  605. data/lib/chef/mixin/create_path.rb +73 -73
  606. data/lib/chef/mixin/deep_merge.rb +140 -140
  607. data/lib/chef/mixin/deprecation.rb +123 -123
  608. data/lib/chef/mixin/descendants_tracker.rb +81 -81
  609. data/lib/chef/mixin/enforce_ownership_and_permissions.rb +39 -39
  610. data/lib/chef/mixin/file_class.rb +35 -35
  611. data/lib/chef/mixin/from_file.rb +50 -50
  612. data/lib/chef/mixin/get_source_from_package.rb +47 -47
  613. data/lib/chef/mixin/homebrew_user.rb +68 -68
  614. data/lib/chef/mixin/language.rb +48 -48
  615. data/lib/chef/mixin/language_include_attribute.rb +34 -34
  616. data/lib/chef/mixin/language_include_recipe.rb +31 -31
  617. data/lib/chef/mixin/lazy_module_include.rb +77 -0
  618. data/lib/chef/mixin/params_validate.rb +489 -489
  619. data/lib/chef/mixin/path_sanity.rb +68 -68
  620. data/lib/chef/mixin/powershell_out.rb +98 -98
  621. data/lib/chef/mixin/powershell_type_coercions.rb +84 -84
  622. data/lib/chef/mixin/properties.rb +303 -303
  623. data/lib/chef/mixin/provides.rb +28 -28
  624. data/lib/chef/mixin/proxified_socket.rb +42 -38
  625. data/lib/chef/mixin/recipe_definition_dsl_core.rb +35 -35
  626. data/lib/chef/mixin/securable.rb +196 -196
  627. data/lib/chef/mixin/shell_out.rb +117 -117
  628. data/lib/chef/mixin/subclass_directive.rb +37 -37
  629. data/lib/chef/mixin/template.rb +262 -262
  630. data/lib/chef/mixin/unformatter.rb +32 -32
  631. data/lib/chef/mixin/uris.rb +43 -43
  632. data/lib/chef/mixin/which.rb +37 -37
  633. data/lib/chef/mixin/why_run.rb +331 -331
  634. data/lib/chef/mixin/wide_string.rb +72 -72
  635. data/lib/chef/mixin/windows_architecture_helper.rb +114 -114
  636. data/lib/chef/mixin/windows_env_helper.rb +67 -67
  637. data/lib/chef/mixin/xml_escape.rb +140 -140
  638. data/lib/chef/mixins.rb +13 -13
  639. data/lib/chef/monkey_patches/net-ssh-multi.rb +141 -140
  640. data/lib/chef/monkey_patches/net_http.rb +60 -60
  641. data/lib/chef/monkey_patches/webrick-utils.rb +51 -51
  642. data/lib/chef/monkey_patches/win32/registry.rb +75 -72
  643. data/lib/chef/monologger.rb +88 -88
  644. data/lib/chef/nil_argument.rb +3 -3
  645. data/lib/chef/node.rb +700 -700
  646. data/lib/chef/node/attribute.rb +586 -586
  647. data/lib/chef/node/attribute_collections.rb +323 -323
  648. data/lib/chef/node/immutable_collections.rb +219 -219
  649. data/lib/chef/node_map.rb +222 -222
  650. data/lib/chef/null_logger.rb +72 -72
  651. data/lib/chef/org.rb +149 -149
  652. data/lib/chef/platform.rb +30 -30
  653. data/lib/chef/platform/handler_map.rb +40 -40
  654. data/lib/chef/platform/priority_map.rb +41 -41
  655. data/lib/chef/platform/provider_handler_map.rb +29 -29
  656. data/lib/chef/platform/provider_mapping.rb +214 -214
  657. data/lib/chef/platform/provider_priority_map.rb +11 -11
  658. data/lib/chef/platform/query_helpers.rb +112 -112
  659. data/lib/chef/platform/rebooter.rb +54 -54
  660. data/lib/chef/platform/resource_handler_map.rb +29 -29
  661. data/lib/chef/platform/resource_priority_map.rb +11 -11
  662. data/lib/chef/platform/service_helpers.rb +122 -122
  663. data/lib/chef/policy_builder.rb +42 -42
  664. data/lib/chef/policy_builder/dynamic.rb +185 -185
  665. data/lib/chef/policy_builder/expand_node_object.rb +278 -278
  666. data/lib/chef/policy_builder/policyfile.rb +523 -527
  667. data/lib/chef/property.rb +674 -673
  668. data/lib/chef/provider.rb +458 -461
  669. data/lib/chef/provider/apt_repository.rb +255 -0
  670. data/lib/chef/provider/apt_update.rb +80 -79
  671. data/lib/chef/provider/batch.rb +45 -45
  672. data/lib/chef/provider/breakpoint.rb +38 -38
  673. data/lib/chef/provider/cookbook_file.rb +53 -53
  674. data/lib/chef/provider/cookbook_file/content.rb +49 -49
  675. data/lib/chef/provider/cron.rb +263 -263
  676. data/lib/chef/provider/cron/aix.rb +50 -50
  677. data/lib/chef/provider/cron/solaris.rb +22 -22
  678. data/lib/chef/provider/cron/unix.rb +83 -83
  679. data/lib/chef/provider/deploy.rb +476 -476
  680. data/lib/chef/provider/deploy/revision.rb +109 -109
  681. data/lib/chef/provider/deploy/timestamped.rb +34 -34
  682. data/lib/chef/provider/directory.rb +152 -152
  683. data/lib/chef/provider/dsc_resource.rb +197 -197
  684. data/lib/chef/provider/dsc_script.rb +185 -185
  685. data/lib/chef/provider/env.rb +169 -169
  686. data/lib/chef/provider/env/windows.rb +72 -72
  687. data/lib/chef/provider/erl_call.rb +108 -108
  688. data/lib/chef/provider/execute.rb +125 -125
  689. data/lib/chef/provider/file.rb +495 -495
  690. data/lib/chef/provider/file/content.rb +39 -39
  691. data/lib/chef/provider/git.rb +332 -332
  692. data/lib/chef/provider/group.rb +183 -183
  693. data/lib/chef/provider/group/aix.rb +86 -86
  694. data/lib/chef/provider/group/dscl.rb +170 -170
  695. data/lib/chef/provider/group/gpasswd.rb +58 -58
  696. data/lib/chef/provider/group/groupadd.rb +137 -137
  697. data/lib/chef/provider/group/groupmod.rb +128 -128
  698. data/lib/chef/provider/group/pw.rb +140 -140
  699. data/lib/chef/provider/group/suse.rb +64 -62
  700. data/lib/chef/provider/group/usermod.rb +91 -91
  701. data/lib/chef/provider/group/windows.rb +98 -98
  702. data/lib/chef/provider/http_request.rb +122 -122
  703. data/lib/chef/provider/ifconfig.rb +226 -226
  704. data/lib/chef/provider/ifconfig/aix.rb +99 -99
  705. data/lib/chef/provider/ifconfig/debian.rb +84 -84
  706. data/lib/chef/provider/ifconfig/redhat.rb +48 -48
  707. data/lib/chef/provider/launchd.rb +208 -208
  708. data/lib/chef/provider/link.rb +159 -159
  709. data/lib/chef/provider/log.rb +57 -57
  710. data/lib/chef/provider/lwrp_base.rb +99 -99
  711. data/lib/chef/provider/mdadm.rb +92 -92
  712. data/lib/chef/provider/mount.rb +169 -173
  713. data/lib/chef/provider/mount/aix.rb +180 -180
  714. data/lib/chef/provider/mount/mount.rb +270 -270
  715. data/lib/chef/provider/mount/solaris.rb +271 -271
  716. data/lib/chef/provider/mount/windows.rb +92 -86
  717. data/lib/chef/provider/noop.rb +37 -0
  718. data/lib/chef/provider/ohai.rb +49 -49
  719. data/lib/chef/provider/osx_profile.rb +256 -256
  720. data/lib/chef/provider/package.rb +565 -565
  721. data/lib/chef/provider/package/aix.rb +136 -136
  722. data/lib/chef/provider/package/apt.rb +185 -185
  723. data/lib/chef/provider/package/chocolatey.rb +275 -275
  724. data/lib/chef/provider/package/dpkg.rb +226 -226
  725. data/lib/chef/provider/package/easy_install.rb +133 -133
  726. data/lib/chef/provider/package/freebsd/base.rb +89 -89
  727. data/lib/chef/provider/package/freebsd/pkg.rb +114 -114
  728. data/lib/chef/provider/package/freebsd/pkgng.rb +78 -78
  729. data/lib/chef/provider/package/freebsd/port.rb +60 -60
  730. data/lib/chef/provider/package/homebrew.rb +137 -137
  731. data/lib/chef/provider/package/ips.rb +91 -91
  732. data/lib/chef/provider/package/macports.rb +101 -101
  733. data/lib/chef/provider/package/openbsd.rb +136 -136
  734. data/lib/chef/provider/package/pacman.rb +104 -104
  735. data/lib/chef/provider/package/paludis.rb +86 -86
  736. data/lib/chef/provider/package/portage.rb +140 -140
  737. data/lib/chef/provider/package/rpm.rb +123 -123
  738. data/lib/chef/provider/package/rubygems.rb +586 -586
  739. data/lib/chef/provider/package/smartos.rb +92 -92
  740. data/lib/chef/provider/package/solaris.rb +138 -138
  741. data/lib/chef/provider/package/windows.rb +269 -269
  742. data/lib/chef/provider/package/windows/exe.rb +117 -117
  743. data/lib/chef/provider/package/windows/msi.rb +93 -93
  744. data/lib/chef/provider/package/windows/registry_uninstall_entry.rb +89 -89
  745. data/lib/chef/provider/package/yum-dump.py +307 -307
  746. data/lib/chef/provider/package/yum.rb +1421 -1421
  747. data/lib/chef/provider/package/zypper.rb +143 -143
  748. data/lib/chef/provider/powershell_script.rb +215 -215
  749. data/lib/chef/provider/reboot.rb +70 -70
  750. data/lib/chef/provider/registry_key.rb +155 -155
  751. data/lib/chef/provider/remote_directory.rb +281 -281
  752. data/lib/chef/provider/remote_file.rb +53 -53
  753. data/lib/chef/provider/remote_file/cache_control_data.rb +195 -195
  754. data/lib/chef/provider/remote_file/content.rb +81 -81
  755. data/lib/chef/provider/remote_file/fetcher.rb +57 -55
  756. data/lib/chef/provider/remote_file/ftp.rb +172 -183
  757. data/lib/chef/provider/remote_file/http.rb +135 -117
  758. data/lib/chef/provider/remote_file/local_file.rb +60 -60
  759. data/lib/chef/provider/remote_file/network_file.rb +48 -48
  760. data/lib/chef/provider/remote_file/sftp.rb +105 -0
  761. data/lib/chef/provider/resource_update.rb +52 -52
  762. data/lib/chef/provider/route.rb +229 -229
  763. data/lib/chef/provider/ruby_block.rb +44 -44
  764. data/lib/chef/provider/script.rb +85 -85
  765. data/lib/chef/provider/service.rb +259 -250
  766. data/lib/chef/provider/service/aix.rb +129 -129
  767. data/lib/chef/provider/service/aixinit.rb +117 -117
  768. data/lib/chef/provider/service/arch.rb +118 -118
  769. data/lib/chef/provider/service/debian.rb +182 -182
  770. data/lib/chef/provider/service/freebsd.rb +195 -195
  771. data/lib/chef/provider/service/gentoo.rb +71 -71
  772. data/lib/chef/provider/service/init.rb +94 -94
  773. data/lib/chef/provider/service/insserv.rb +59 -59
  774. data/lib/chef/provider/service/invokercd.rb +41 -41
  775. data/lib/chef/provider/service/macosx.rb +250 -250
  776. data/lib/chef/provider/service/openbsd.rb +217 -217
  777. data/lib/chef/provider/service/redhat.rb +126 -120
  778. data/lib/chef/provider/service/simple.rb +175 -175
  779. data/lib/chef/provider/service/solaris.rb +122 -117
  780. data/lib/chef/provider/service/systemd.rb +188 -155
  781. data/lib/chef/provider/service/upstart.rb +242 -242
  782. data/lib/chef/provider/service/windows.rb +313 -313
  783. data/lib/chef/provider/subversion.rb +233 -221
  784. data/lib/chef/provider/template.rb +65 -65
  785. data/lib/chef/provider/template/content.rb +70 -70
  786. data/lib/chef/provider/template_finder.rb +62 -62
  787. data/lib/chef/provider/user.rb +211 -211
  788. data/lib/chef/provider/user/aix.rb +97 -97
  789. data/lib/chef/provider/user/dscl.rb +710 -710
  790. data/lib/chef/provider/user/pw.rb +114 -114
  791. data/lib/chef/provider/user/solaris.rb +121 -121
  792. data/lib/chef/provider/user/useradd.rb +163 -163
  793. data/lib/chef/provider/user/windows.rb +128 -128
  794. data/lib/chef/provider/whyrun_safe_ruby_block.rb +32 -32
  795. data/lib/chef/provider/windows_script.rb +72 -72
  796. data/lib/chef/provider_resolver.rb +170 -170
  797. data/lib/chef/providers.rb +145 -142
  798. data/lib/chef/recipe.rb +118 -119
  799. data/lib/chef/request_id.rb +37 -37
  800. data/lib/chef/reserved_names.rb +9 -9
  801. data/lib/chef/resource.rb +1581 -1581
  802. data/lib/chef/resource/action_class.rb +90 -87
  803. data/lib/chef/resource/apt_package.rb +32 -32
  804. data/lib/chef/resource/apt_repository.rb +47 -0
  805. data/lib/chef/resource/apt_update.rb +33 -33
  806. data/lib/chef/resource/bash.rb +33 -33
  807. data/lib/chef/resource/batch.rb +33 -33
  808. data/lib/chef/resource/bff_package.rb +27 -27
  809. data/lib/chef/resource/breakpoint.rb +32 -32
  810. data/lib/chef/resource/chef_gem.rb +51 -51
  811. data/lib/chef/resource/chocolatey_package.rb +39 -39
  812. data/lib/chef/resource/conditional.rb +127 -127
  813. data/lib/chef/resource/conditional_action_not_nothing.rb +48 -48
  814. data/lib/chef/resource/cookbook_file.rb +49 -49
  815. data/lib/chef/resource/cron.rb +216 -216
  816. data/lib/chef/resource/csh.rb +33 -33
  817. data/lib/chef/resource/deploy.rb +443 -443
  818. data/lib/chef/resource/deploy_revision.rb +31 -31
  819. data/lib/chef/resource/directory.rb +62 -62
  820. data/lib/chef/resource/dpkg_package.rb +30 -30
  821. data/lib/chef/resource/dsc_resource.rb +121 -121
  822. data/lib/chef/resource/dsc_script.rb +140 -140
  823. data/lib/chef/resource/easy_install_package.rb +32 -32
  824. data/lib/chef/resource/env.rb +65 -65
  825. data/lib/chef/resource/erl_call.rb +85 -85
  826. data/lib/chef/resource/execute.rb +172 -172
  827. data/lib/chef/resource/file.rb +83 -83
  828. data/lib/chef/resource/file/verification.rb +128 -128
  829. data/lib/chef/resource/freebsd_package.rb +62 -62
  830. data/lib/chef/resource/gem_package.rb +41 -41
  831. data/lib/chef/resource/git.rb +44 -44
  832. data/lib/chef/resource/group.rb +102 -102
  833. data/lib/chef/resource/homebrew_package.rb +34 -34
  834. data/lib/chef/resource/http_request.rb +66 -66
  835. data/lib/chef/resource/ifconfig.rb +147 -147
  836. data/lib/chef/resource/ips_package.rb +34 -34
  837. data/lib/chef/resource/ksh.rb +32 -32
  838. data/lib/chef/resource/launchd.rb +104 -104
  839. data/lib/chef/resource/link.rb +107 -107
  840. data/lib/chef/resource/log.rb +76 -76
  841. data/lib/chef/resource/lwrp_base.rb +124 -124
  842. data/lib/chef/resource/macosx_service.rb +58 -58
  843. data/lib/chef/resource/macports_package.rb +27 -27
  844. data/lib/chef/resource/mdadm.rb +103 -103
  845. data/lib/chef/resource/mount.rb +187 -187
  846. data/lib/chef/resource/ohai.rb +53 -53
  847. data/lib/chef/resource/openbsd_package.rb +35 -35
  848. data/lib/chef/resource/osx_profile.rb +74 -74
  849. data/lib/chef/resource/package.rb +47 -47
  850. data/lib/chef/resource/pacman_package.rb +28 -28
  851. data/lib/chef/resource/paludis_package.rb +33 -33
  852. data/lib/chef/resource/perl.rb +32 -32
  853. data/lib/chef/resource/portage_package.rb +32 -32
  854. data/lib/chef/resource/powershell_script.rb +50 -50
  855. data/lib/chef/resource/python.rb +31 -31
  856. data/lib/chef/resource/reboot.rb +48 -48
  857. data/lib/chef/resource/registry_key.rb +144 -144
  858. data/lib/chef/resource/remote_directory.rb +122 -122
  859. data/lib/chef/resource/remote_file.rb +158 -149
  860. data/lib/chef/resource/resource_notification.rb +122 -122
  861. data/lib/chef/resource/route.rb +137 -137
  862. data/lib/chef/resource/rpm_package.rb +32 -32
  863. data/lib/chef/resource/ruby.rb +31 -31
  864. data/lib/chef/resource/ruby_block.rb +53 -53
  865. data/lib/chef/resource/scm.rb +185 -185
  866. data/lib/chef/resource/script.rb +74 -74
  867. data/lib/chef/resource/service.rb +217 -208
  868. data/lib/chef/resource/smartos_package.rb +29 -29
  869. data/lib/chef/resource/solaris_package.rb +31 -31
  870. data/lib/chef/resource/subversion.rb +44 -44
  871. data/lib/chef/resource/template.rb +215 -215
  872. data/lib/chef/resource/timestamped_deploy.rb +26 -26
  873. data/lib/chef/resource/user.rb +160 -160
  874. data/lib/chef/resource/whyrun_safe_ruby_block.rb +24 -24
  875. data/lib/chef/resource/windows_package.rb +55 -55
  876. data/lib/chef/resource/windows_script.rb +65 -65
  877. data/lib/chef/resource/windows_service.rb +71 -71
  878. data/lib/chef/resource/yum_package.rb +47 -47
  879. data/lib/chef/resource/zypper_package.rb +28 -28
  880. data/lib/chef/resource_builder.rb +151 -151
  881. data/lib/chef/resource_collection.rb +131 -89
  882. data/lib/chef/resource_collection/resource_collection_serialization.rb +59 -59
  883. data/lib/chef/resource_collection/resource_list.rb +90 -90
  884. data/lib/chef/resource_collection/resource_set.rb +170 -170
  885. data/lib/chef/resource_collection/stepable_iterator.rb +124 -124
  886. data/lib/chef/resource_definition.rb +68 -68
  887. data/lib/chef/resource_definition_list.rb +38 -38
  888. data/lib/chef/resource_reporter.rb +327 -327
  889. data/lib/chef/resource_resolver.rb +185 -185
  890. data/lib/chef/resources.rb +89 -88
  891. data/lib/chef/rest.rb +209 -209
  892. data/lib/chef/role.rb +280 -280
  893. data/lib/chef/run_context.rb +694 -670
  894. data/lib/chef/run_context/cookbook_compiler.rb +290 -289
  895. data/lib/chef/run_list.rb +168 -168
  896. data/lib/chef/run_list/run_list_expansion.rb +234 -234
  897. data/lib/chef/run_list/run_list_item.rb +98 -98
  898. data/lib/chef/run_list/versioned_recipe_list.rb +102 -102
  899. data/lib/chef/run_lock.rb +197 -197
  900. data/lib/chef/run_status.rb +125 -125
  901. data/lib/chef/runner.rb +143 -141
  902. data/lib/chef/sandbox.rb +20 -20
  903. data/lib/chef/scan_access_control.rb +138 -138
  904. data/lib/chef/search/query.rb +180 -180
  905. data/lib/chef/server_api.rb +78 -78
  906. data/lib/chef/shell.rb +327 -327
  907. data/lib/chef/shell/ext.rb +593 -593
  908. data/lib/chef/shell/model_wrapper.rb +120 -120
  909. data/lib/chef/shell/shell_session.rb +299 -299
  910. data/lib/chef/shell_out.rb +13 -13
  911. data/lib/chef/tasks/chef_repo.rake +200 -200
  912. data/lib/chef/user.rb +199 -199
  913. data/lib/chef/user_v1.rb +330 -330
  914. data/lib/chef/util/backup.rb +94 -94
  915. data/lib/chef/util/diff.rb +184 -184
  916. data/lib/chef/util/dsc/configuration_generator.rb +139 -139
  917. data/lib/chef/util/dsc/lcm_output_parser.rb +137 -137
  918. data/lib/chef/util/dsc/local_configuration_manager.rb +141 -141
  919. data/lib/chef/util/dsc/resource_info.rb +26 -26
  920. data/lib/chef/util/dsc/resource_store.rb +109 -109
  921. data/lib/chef/util/editor.rb +91 -91
  922. data/lib/chef/util/file_edit.rb +100 -100
  923. data/lib/chef/util/path_helper.rb +25 -25
  924. data/lib/chef/util/powershell/cmdlet.rb +170 -170
  925. data/lib/chef/util/powershell/cmdlet_result.rb +61 -61
  926. data/lib/chef/util/powershell/ps_credential.rb +41 -41
  927. data/lib/chef/util/selinux.rb +92 -92
  928. data/lib/chef/util/threaded_job_queue.rb +61 -61
  929. data/lib/chef/util/windows.rb +24 -24
  930. data/lib/chef/util/windows/net_group.rb +84 -84
  931. data/lib/chef/util/windows/net_use.rb +85 -85
  932. data/lib/chef/util/windows/net_user.rb +170 -170
  933. data/lib/chef/util/windows/volume.rb +59 -59
  934. data/lib/chef/version.rb +34 -34
  935. data/lib/chef/version/platform.rb +44 -44
  936. data/lib/chef/version_class.rb +70 -70
  937. data/lib/chef/version_constraint.rb +118 -118
  938. data/lib/chef/version_constraint/platform.rb +26 -26
  939. data/lib/chef/whitelist.rb +86 -86
  940. data/lib/chef/win32/api.rb +374 -374
  941. data/lib/chef/win32/api/crypto.rb +63 -63
  942. data/lib/chef/win32/api/error.rb +953 -953
  943. data/lib/chef/win32/api/file.rb +625 -625
  944. data/lib/chef/win32/api/installer.rb +165 -165
  945. data/lib/chef/win32/api/memory.rb +105 -105
  946. data/lib/chef/win32/api/net.rb +312 -312
  947. data/lib/chef/win32/api/process.rb +42 -42
  948. data/lib/chef/win32/api/psapi.rb +51 -51
  949. data/lib/chef/win32/api/registry.rb +51 -51
  950. data/lib/chef/win32/api/security.rb +460 -460
  951. data/lib/chef/win32/api/synchronization.rb +89 -89
  952. data/lib/chef/win32/api/system.rb +238 -238
  953. data/lib/chef/win32/api/unicode.rb +135 -135
  954. data/lib/chef/win32/crypto.rb +50 -50
  955. data/lib/chef/win32/error.rb +86 -86
  956. data/lib/chef/win32/eventlog.rb +31 -31
  957. data/lib/chef/win32/file.rb +218 -218
  958. data/lib/chef/win32/file/info.rb +99 -99
  959. data/lib/chef/win32/file/version_info.rb +93 -93
  960. data/lib/chef/win32/handle.rb +55 -55
  961. data/lib/chef/win32/memory.rb +101 -101
  962. data/lib/chef/win32/mutex.rb +116 -116
  963. data/lib/chef/win32/net.rb +311 -311
  964. data/lib/chef/win32/process.rb +97 -97
  965. data/lib/chef/win32/registry.rb +374 -372
  966. data/lib/chef/win32/security.rb +665 -665
  967. data/lib/chef/win32/security/ace.rb +123 -123
  968. data/lib/chef/win32/security/acl.rb +103 -103
  969. data/lib/chef/win32/security/securable_object.rb +109 -109
  970. data/lib/chef/win32/security/security_descriptor.rb +93 -93
  971. data/lib/chef/win32/security/sid.rb +304 -304
  972. data/lib/chef/win32/security/token.rb +72 -72
  973. data/lib/chef/win32/system.rb +62 -62
  974. data/lib/chef/win32/unicode.rb +60 -60
  975. data/lib/chef/win32/version.rb +158 -158
  976. data/lib/chef/workstation_config_loader.rb +23 -23
  977. data/spec/data/apt/chef-integration-test-1.0/debian/changelog +5 -5
  978. data/spec/data/apt/chef-integration-test-1.0/debian/compat +1 -1
  979. data/spec/data/apt/chef-integration-test-1.0/debian/control +13 -13
  980. data/spec/data/apt/chef-integration-test-1.0/debian/copyright +34 -34
  981. data/spec/data/apt/chef-integration-test-1.0/debian/files +1 -1
  982. data/spec/data/apt/chef-integration-test-1.0/debian/rules +13 -13
  983. data/spec/data/apt/chef-integration-test-1.0/debian/source/format +1 -1
  984. data/spec/data/apt/chef-integration-test-1.1/debian/changelog +11 -11
  985. data/spec/data/apt/chef-integration-test-1.1/debian/compat +1 -1
  986. data/spec/data/apt/chef-integration-test-1.1/debian/control +13 -13
  987. data/spec/data/apt/chef-integration-test-1.1/debian/copyright +34 -34
  988. data/spec/data/apt/chef-integration-test-1.1/debian/files +1 -1
  989. data/spec/data/apt/chef-integration-test-1.1/debian/rules +13 -13
  990. data/spec/data/apt/chef-integration-test-1.1/debian/source/format +1 -1
  991. data/spec/data/apt/chef-integration-test2-1.0/debian/changelog +5 -5
  992. data/spec/data/apt/chef-integration-test2-1.0/debian/chef-integration-test2.debhelper.log +45 -45
  993. data/spec/data/apt/chef-integration-test2-1.0/debian/chef-integration-test2.substvars +1 -1
  994. data/spec/data/apt/chef-integration-test2-1.0/debian/chef-integration-test2/DEBIAN/conffiles +1 -1
  995. data/spec/data/apt/chef-integration-test2-1.0/debian/chef-integration-test2/DEBIAN/control +10 -10
  996. data/spec/data/apt/chef-integration-test2-1.0/debian/chef-integration-test2/DEBIAN/md5sums +1 -1
  997. data/spec/data/apt/chef-integration-test2-1.0/debian/compat +1 -1
  998. data/spec/data/apt/chef-integration-test2-1.0/debian/conffiles +1 -1
  999. data/spec/data/apt/chef-integration-test2-1.0/debian/control +13 -13
  1000. data/spec/data/apt/chef-integration-test2-1.0/debian/copyright +34 -34
  1001. data/spec/data/apt/chef-integration-test2-1.0/debian/files +1 -1
  1002. data/spec/data/apt/chef-integration-test2-1.0/debian/rules +13 -13
  1003. data/spec/data/apt/chef-integration-test2-1.0/debian/source/format +1 -1
  1004. data/spec/data/apt/chef-integration-test2_1.0-1.dsc +18 -18
  1005. data/spec/data/apt/chef-integration-test2_1.0-1_amd64.build +91 -91
  1006. data/spec/data/apt/chef-integration-test2_1.0-1_amd64.changes +31 -31
  1007. data/spec/data/apt/chef-integration-test_1.0-1_amd64.changes +22 -22
  1008. data/spec/data/apt/chef-integration-test_1.1-1_amd64.changes +22 -22
  1009. data/spec/data/apt/var/www/apt/conf/distributions +7 -7
  1010. data/spec/data/apt/var/www/apt/conf/incoming +4 -4
  1011. data/spec/data/apt/var/www/apt/conf/pulls +3 -3
  1012. data/spec/data/apt/var/www/apt/db/version +4 -4
  1013. data/spec/data/apt/var/www/apt/dists/sid/Release +19 -19
  1014. data/spec/data/apt/var/www/apt/dists/sid/main/binary-amd64/Packages +16 -16
  1015. data/spec/data/apt/var/www/apt/dists/sid/main/binary-amd64/Release +5 -5
  1016. data/spec/data/bootstrap/encrypted_data_bag_secret +1 -1
  1017. data/spec/data/bootstrap/no_proxy.erb +2 -2
  1018. data/spec/data/bootstrap/secret.erb +9 -9
  1019. data/spec/data/bootstrap/test-hints.erb +12 -12
  1020. data/spec/data/bootstrap/test.erb +1 -1
  1021. data/spec/data/cb_version_cookbooks/tatft/README.rdoc +2 -2
  1022. data/spec/data/cb_version_cookbooks/tatft/attributes/default.rb +1 -1
  1023. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-600hhz-0 +1 -1
  1024. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-ahd2gq-0 +1 -1
  1025. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-api8ux-0 +1 -1
  1026. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-b0r1m1-0 +1 -1
  1027. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-bfygsi-0 +1 -1
  1028. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-el14l6-0 +1 -1
  1029. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-ivrl3y-0 +1 -1
  1030. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-kkbs85-0 +1 -1
  1031. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-ory1ux-0 +1 -1
  1032. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-pgsq76-0 +1 -1
  1033. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-ra8uim-0 +1 -1
  1034. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-t7k1g-0 +1 -1
  1035. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-t8g0sv-0 +1 -1
  1036. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-ufy6g3-0 +1 -1
  1037. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-x2d6j9-0 +1 -1
  1038. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-xi0l6h-0 +1 -1
  1039. data/spec/data/client.d_00/00-foo.rb +2 -2
  1040. data/spec/data/client.d_00/01-bar.rb +1 -1
  1041. data/spec/data/client.d_00/bar +1 -1
  1042. data/spec/data/client.d_01/foo/bar.rb +1 -1
  1043. data/spec/data/client.d_02/foo.rb/foo.txt +1 -1
  1044. data/spec/data/config.rb +6 -6
  1045. data/spec/data/cookbooks/angrybash/metadata.rb +2 -2
  1046. data/spec/data/cookbooks/angrybash/recipes/default.rb +8 -8
  1047. data/spec/data/cookbooks/apache2/files/default/apache2_module_conf_generate.pl +2 -2
  1048. data/spec/data/cookbooks/apache2/metadata.rb +2 -2
  1049. data/spec/data/cookbooks/apache2/recipes/default.rb +2 -2
  1050. data/spec/data/cookbooks/borken/metadata.rb +2 -2
  1051. data/spec/data/cookbooks/borken/recipes/default.rb +1 -1
  1052. data/spec/data/cookbooks/borken/templates/default/borken.erb +1 -1
  1053. data/spec/data/cookbooks/chefignore +8 -8
  1054. data/spec/data/cookbooks/ignorken/files/default/not_me.rb +2 -2
  1055. data/spec/data/cookbooks/ignorken/metadata.rb +2 -2
  1056. data/spec/data/cookbooks/ignorken/recipes/ignoreme.rb +1 -1
  1057. data/spec/data/cookbooks/ignorken/templates/ubuntu-12.10/not_me.rb +2 -2
  1058. data/spec/data/cookbooks/java/files/default/java.response +1 -1
  1059. data/spec/data/cookbooks/java/metadata.rb +2 -2
  1060. data/spec/data/cookbooks/name-mismatch-versionnumber/README.md +4 -4
  1061. data/spec/data/cookbooks/name-mismatch-versionnumber/metadata.rb +8 -8
  1062. data/spec/data/cookbooks/name-mismatch-versionnumber/recipes/default.rb +8 -8
  1063. data/spec/data/cookbooks/openldap/attributes/default.rb +16 -16
  1064. data/spec/data/cookbooks/openldap/attributes/smokey.rb +1 -1
  1065. data/spec/data/cookbooks/openldap/definitions/client.rb +5 -5
  1066. data/spec/data/cookbooks/openldap/definitions/server.rb +5 -5
  1067. data/spec/data/cookbooks/openldap/files/default/.dotfile +1 -1
  1068. data/spec/data/cookbooks/openldap/files/default/remotedir/.a_dotdir/.a_dotfile_in_a_dotdir +1 -1
  1069. data/spec/data/cookbooks/openldap/files/default/remotedir/not_a_template.erb +2 -2
  1070. data/spec/data/cookbooks/openldap/files/default/remotedir/remote_dir_file1.txt +2 -2
  1071. data/spec/data/cookbooks/openldap/files/default/remotedir/remote_dir_file2.txt +2 -2
  1072. data/spec/data/cookbooks/openldap/files/default/remotedir/remotesubdir/.a_dotfile +1 -1
  1073. data/spec/data/cookbooks/openldap/files/default/remotedir/remotesubdir/remote_subdir_file1.txt +2 -2
  1074. data/spec/data/cookbooks/openldap/files/default/remotedir/remotesubdir/remote_subdir_file2.txt +2 -2
  1075. data/spec/data/cookbooks/openldap/files/default/remotedir/subdir_with_no_file_just_a_subsubdir/the_subsubdir/some_file.txt +3 -3
  1076. data/spec/data/cookbooks/openldap/libraries/openldap.rb +4 -4
  1077. data/spec/data/cookbooks/openldap/libraries/openldap/version.rb +3 -3
  1078. data/spec/data/cookbooks/openldap/metadata.rb +8 -8
  1079. data/spec/data/cookbooks/openldap/recipes/default.rb +4 -4
  1080. data/spec/data/cookbooks/openldap/recipes/gigantor.rb +3 -3
  1081. data/spec/data/cookbooks/openldap/recipes/one.rb +15 -15
  1082. data/spec/data/cookbooks/openldap/recipes/return.rb +2 -2
  1083. data/spec/data/cookbooks/openldap/templates/default/helper_test.erb +1 -1
  1084. data/spec/data/cookbooks/openldap/templates/default/helpers.erb +14 -14
  1085. data/spec/data/cookbooks/openldap/templates/default/helpers_via_partial_test.erb +1 -1
  1086. data/spec/data/cookbooks/openldap/templates/default/nested_openldap_partials.erb +1 -1
  1087. data/spec/data/cookbooks/openldap/templates/default/nested_partial.erb +1 -1
  1088. data/spec/data/cookbooks/openldap/templates/default/no_windows_line_endings.erb +4 -4
  1089. data/spec/data/cookbooks/openldap/templates/default/openldap_variable_stuff.conf.erb +1 -1
  1090. data/spec/data/cookbooks/openldap/templates/default/test.erb +1 -1
  1091. data/spec/data/cookbooks/preseed/files/default/preseed-file.seed +1 -1
  1092. data/spec/data/cookbooks/preseed/files/default/preseed-template.seed +4 -4
  1093. data/spec/data/cookbooks/preseed/metadata.rb +2 -2
  1094. data/spec/data/cookbooks/preseed/templates/default/preseed-template-variables.seed +1 -1
  1095. data/spec/data/cookbooks/preseed/templates/default/preseed-template.seed +1 -1
  1096. data/spec/data/cookbooks/supports-platform-constraints/metadata.rb +5 -5
  1097. data/spec/data/definitions/test.rb +4 -4
  1098. data/spec/data/environment-config.rb +4 -4
  1099. data/spec/data/file-providers-method-snapshot-chef-11-4.json +127 -127
  1100. data/spec/data/fileedit/hosts +4 -4
  1101. data/spec/data/incomplete-metadata-chef-repo/incomplete-metadata/README.md +4 -4
  1102. data/spec/data/incomplete-metadata-chef-repo/incomplete-metadata/metadata.rb +13 -13
  1103. data/spec/data/incomplete-metadata-chef-repo/incomplete-metadata/recipes/default.rb +8 -8
  1104. data/spec/data/invalid-metadata-chef-repo/invalid-metadata/README.md +4 -4
  1105. data/spec/data/invalid-metadata-chef-repo/invalid-metadata/metadata.rb +9 -9
  1106. data/spec/data/invalid-metadata-chef-repo/invalid-metadata/recipes/default.rb +8 -8
  1107. data/spec/data/kitchen/chefignore +6 -6
  1108. data/spec/data/kitchen/openldap/attributes/default.rb +3 -3
  1109. data/spec/data/kitchen/openldap/attributes/robinson.rb +2 -2
  1110. data/spec/data/kitchen/openldap/definitions/client.rb +3 -3
  1111. data/spec/data/kitchen/openldap/definitions/drewbarrymore.rb +2 -2
  1112. data/spec/data/kitchen/openldap/recipes/gigantor.rb +2 -2
  1113. data/spec/data/kitchen/openldap/recipes/ignoreme.rb +2 -2
  1114. data/spec/data/kitchen/openldap/recipes/woot.rb +3 -3
  1115. data/spec/data/knife_subcommand/test_explicit_category.rb +6 -6
  1116. data/spec/data/knife_subcommand/test_name_mapping.rb +4 -4
  1117. data/spec/data/knife_subcommand/test_yourself.rb +21 -21
  1118. data/spec/data/lwrp/providers/buck_passer.rb +28 -28
  1119. data/spec/data/lwrp/providers/buck_passer_2.rb +26 -26
  1120. data/spec/data/lwrp/providers/embedded_resource_accesses_providers_scope.rb +28 -28
  1121. data/spec/data/lwrp/providers/inline_compiler.rb +26 -26
  1122. data/spec/data/lwrp/providers/monkey_name_printer.rb +5 -5
  1123. data/spec/data/lwrp/providers/paint_drying_watcher.rb +7 -7
  1124. data/spec/data/lwrp/providers/thumb_twiddler.rb +7 -7
  1125. data/spec/data/lwrp/resources/bar.rb +2 -2
  1126. data/spec/data/lwrp/resources/foo.rb +4 -4
  1127. data/spec/data/lwrp/resources_with_default_attributes/nodeattr.rb +1 -1
  1128. data/spec/data/lwrp_override/providers/buck_passer.rb +5 -5
  1129. data/spec/data/lwrp_override/resources/foo.rb +10 -10
  1130. data/spec/data/mac_users/10.7-8.plist.xml +559 -559
  1131. data/spec/data/mac_users/10.7-8.shadow.xml +11 -11
  1132. data/spec/data/mac_users/10.7.plist.xml +559 -559
  1133. data/spec/data/mac_users/10.7.shadow.xml +11 -11
  1134. data/spec/data/mac_users/10.8.plist.xml +559 -559
  1135. data/spec/data/mac_users/10.8.shadow.xml +21 -21
  1136. data/spec/data/mac_users/10.9.plist.xml +560 -560
  1137. data/spec/data/mac_users/10.9.shadow.xml +21 -21
  1138. data/spec/data/metadata/quick_start/metadata.rb +19 -19
  1139. data/spec/data/nested.json +2 -2
  1140. data/spec/data/nodes/default.rb +15 -15
  1141. data/spec/data/nodes/test.example.com.rb +17 -17
  1142. data/spec/data/nodes/test.rb +15 -15
  1143. data/spec/data/null_config.rb +1 -1
  1144. data/spec/data/object_loader/environments/test.json +7 -7
  1145. data/spec/data/object_loader/environments/test.rb +2 -2
  1146. data/spec/data/object_loader/environments/test_json_class.json +8 -8
  1147. data/spec/data/object_loader/nodes/test.json +7 -7
  1148. data/spec/data/object_loader/nodes/test.rb +2 -2
  1149. data/spec/data/object_loader/nodes/test_json_class.json +8 -8
  1150. data/spec/data/object_loader/roles/test.json +7 -7
  1151. data/spec/data/object_loader/roles/test.rb +2 -2
  1152. data/spec/data/object_loader/roles/test_json_class.json +8 -8
  1153. data/spec/data/partial_one.erb +1 -1
  1154. data/spec/data/recipes/test.rb +7 -7
  1155. data/spec/data/run_context/cookbooks/circular-dep1/attributes/default.rb +4 -4
  1156. data/spec/data/run_context/cookbooks/circular-dep1/definitions/circular_dep1_res.rb +1 -1
  1157. data/spec/data/run_context/cookbooks/circular-dep1/libraries/lib.rb +2 -2
  1158. data/spec/data/run_context/cookbooks/circular-dep1/metadata.rb +2 -2
  1159. data/spec/data/run_context/cookbooks/circular-dep1/providers/provider.rb +1 -1
  1160. data/spec/data/run_context/cookbooks/circular-dep1/resources/resource.rb +1 -1
  1161. data/spec/data/run_context/cookbooks/circular-dep2/attributes/default.rb +3 -3
  1162. data/spec/data/run_context/cookbooks/circular-dep2/definitions/circular_dep2_res.rb +1 -1
  1163. data/spec/data/run_context/cookbooks/circular-dep2/libraries/lib.rb +2 -2
  1164. data/spec/data/run_context/cookbooks/circular-dep2/metadata.rb +2 -2
  1165. data/spec/data/run_context/cookbooks/circular-dep2/providers/provider.rb +1 -1
  1166. data/spec/data/run_context/cookbooks/circular-dep2/resources/resource.rb +1 -1
  1167. data/spec/data/run_context/cookbooks/dependency1/attributes/aa_first.rb +2 -2
  1168. data/spec/data/run_context/cookbooks/dependency1/attributes/default.rb +2 -2
  1169. data/spec/data/run_context/cookbooks/dependency1/attributes/zz_last.rb +3 -3
  1170. data/spec/data/run_context/cookbooks/dependency1/definitions/dependency1_res.rb +1 -1
  1171. data/spec/data/run_context/cookbooks/dependency1/libraries/lib.rb +2 -2
  1172. data/spec/data/run_context/cookbooks/dependency1/providers/provider.rb +1 -1
  1173. data/spec/data/run_context/cookbooks/dependency1/resources/resource.rb +1 -1
  1174. data/spec/data/run_context/cookbooks/dependency2/attributes/default.rb +3 -3
  1175. data/spec/data/run_context/cookbooks/dependency2/definitions/dependency2_res.rb +1 -1
  1176. data/spec/data/run_context/cookbooks/dependency2/libraries/lib.rb +2 -2
  1177. data/spec/data/run_context/cookbooks/dependency2/providers/provider.rb +1 -1
  1178. data/spec/data/run_context/cookbooks/dependency2/resources/resource.rb +1 -1
  1179. data/spec/data/run_context/cookbooks/include/recipes/default.rb +24 -24
  1180. data/spec/data/run_context/cookbooks/include/recipes/includee.rb +3 -3
  1181. data/spec/data/run_context/cookbooks/no-default-attr/attributes/server.rb +3 -3
  1182. data/spec/data/run_context/cookbooks/no-default-attr/definitions/no_default-attr_res.rb +1 -1
  1183. data/spec/data/run_context/cookbooks/no-default-attr/providers/provider.rb +1 -1
  1184. data/spec/data/run_context/cookbooks/no-default-attr/resources/resource.rb +1 -1
  1185. data/spec/data/run_context/cookbooks/test-with-circular-deps/attributes/default.rb +3 -3
  1186. data/spec/data/run_context/cookbooks/test-with-circular-deps/definitions/test_with-circular-deps_res.rb +1 -1
  1187. data/spec/data/run_context/cookbooks/test-with-circular-deps/libraries/lib.rb +2 -2
  1188. data/spec/data/run_context/cookbooks/test-with-circular-deps/metadata.rb +2 -2
  1189. data/spec/data/run_context/cookbooks/test-with-circular-deps/providers/provider.rb +1 -1
  1190. data/spec/data/run_context/cookbooks/test-with-circular-deps/resources/resource.rb +1 -1
  1191. data/spec/data/run_context/cookbooks/test-with-deps/attributes/default.rb +3 -3
  1192. data/spec/data/run_context/cookbooks/test-with-deps/definitions/test_with-deps_res.rb +1 -1
  1193. data/spec/data/run_context/cookbooks/test-with-deps/libraries/lib.rb +1 -1
  1194. data/spec/data/run_context/cookbooks/test-with-deps/metadata.rb +3 -3
  1195. data/spec/data/run_context/cookbooks/test-with-deps/providers/provider.rb +1 -1
  1196. data/spec/data/run_context/cookbooks/test-with-deps/resources/resource.rb +1 -1
  1197. data/spec/data/run_context/cookbooks/test/attributes/george.rb +1 -1
  1198. data/spec/data/run_context/cookbooks/test/definitions/new_animals.rb +9 -9
  1199. data/spec/data/run_context/cookbooks/test/definitions/new_cat.rb +5 -5
  1200. data/spec/data/run_context/cookbooks/test/definitions/test_res.rb +1 -1
  1201. data/spec/data/run_context/cookbooks/test/providers/provider.rb +1 -1
  1202. data/spec/data/run_context/cookbooks/test/recipes/default.rb +5 -5
  1203. data/spec/data/run_context/cookbooks/test/recipes/one.rb +7 -7
  1204. data/spec/data/run_context/cookbooks/test/recipes/two.rb +7 -7
  1205. data/spec/data/run_context/cookbooks/test/resources/resource.rb +1 -1
  1206. data/spec/data/run_context/nodes/run_context.rb +5 -5
  1207. data/spec/data/search_queries_to_transform.txt +98 -98
  1208. data/spec/data/shef-config.rb +10 -10
  1209. data/spec/data/ssl/5e707473.0 +18 -18
  1210. data/spec/data/ssl/chef-rspec.cert +27 -27
  1211. data/spec/data/ssl/chef-rspec.key +27 -27
  1212. data/spec/data/ssl/key.pem +15 -15
  1213. data/spec/data/ssl/private_key.pem +27 -27
  1214. data/spec/data/ssl/private_key_with_whitespace.pem +32 -32
  1215. data/spec/data/standalone_cookbook/chefignore +9 -9
  1216. data/spec/data/standalone_cookbook/recipes/default.rb +2 -2
  1217. data/spec/data/trusted_certs/example.crt +22 -22
  1218. data/spec/data/trusted_certs/intermediate.pem +27 -27
  1219. data/spec/data/trusted_certs/opscode.pem +57 -57
  1220. data/spec/data/trusted_certs/root.pem +22 -22
  1221. data/spec/functional/application_spec.rb +58 -58
  1222. data/spec/functional/assets/chefinittest +34 -34
  1223. data/spec/functional/assets/testchefsubsys +10 -10
  1224. data/spec/functional/audit/rspec_formatter_spec.rb +54 -54
  1225. data/spec/functional/audit/runner_spec.rb +121 -121
  1226. data/spec/functional/dsl/reboot_pending_spec.rb +106 -106
  1227. data/spec/functional/dsl/registry_helper_spec.rb +61 -61
  1228. data/spec/functional/event_loggers/windows_eventlog_spec.rb +101 -101
  1229. data/spec/functional/file_content_management/deploy_strategies_spec.rb +229 -229
  1230. data/spec/functional/http/simple_spec.rb +140 -140
  1231. data/spec/functional/knife/configure_spec.rb +33 -33
  1232. data/spec/functional/knife/cookbook_delete_spec.rb +167 -167
  1233. data/spec/functional/knife/exec_spec.rb +55 -55
  1234. data/spec/functional/knife/rehash_spec.rb +39 -39
  1235. data/spec/functional/knife/smoke_test.rb +42 -42
  1236. data/spec/functional/knife/ssh_spec.rb +284 -284
  1237. data/spec/functional/mixin/powershell_out_spec.rb +43 -43
  1238. data/spec/functional/mixin/shell_out_spec.rb +48 -48
  1239. data/spec/functional/notifications_spec.rb +238 -238
  1240. data/spec/functional/provider/remote_file/cache_control_data_spec.rb +100 -100
  1241. data/spec/functional/provider/whyrun_safe_ruby_block_spec.rb +51 -51
  1242. data/spec/functional/rebooter_spec.rb +105 -105
  1243. data/spec/functional/resource/aix_service_spec.rb +138 -138
  1244. data/spec/functional/resource/aixinit_service_spec.rb +211 -211
  1245. data/spec/functional/resource/base.rb +28 -28
  1246. data/spec/functional/resource/bash_spec.rb +88 -88
  1247. data/spec/functional/resource/batch_spec.rb +30 -30
  1248. data/spec/functional/resource/bff_spec.rb +120 -120
  1249. data/spec/functional/resource/chocolatey_package_spec.rb +130 -130
  1250. data/spec/functional/resource/cookbook_file_spec.rb +81 -81
  1251. data/spec/functional/resource/cron_spec.rb +172 -172
  1252. data/spec/functional/resource/deploy_revision_spec.rb +881 -881
  1253. data/spec/functional/resource/directory_spec.rb +43 -43
  1254. data/spec/functional/resource/dpkg_package_spec.rb +339 -339
  1255. data/spec/functional/resource/dsc_resource_spec.rb +90 -90
  1256. data/spec/functional/resource/dsc_script_spec.rb +479 -479
  1257. data/spec/functional/resource/env_spec.rb +192 -192
  1258. data/spec/functional/resource/execute_spec.rb +154 -154
  1259. data/spec/functional/resource/file_spec.rb +167 -167
  1260. data/spec/functional/resource/git_spec.rb +259 -259
  1261. data/spec/functional/resource/group_spec.rb +461 -461
  1262. data/spec/functional/resource/ifconfig_spec.rb +165 -165
  1263. data/spec/functional/resource/link_spec.rb +613 -613
  1264. data/spec/functional/resource/mount_spec.rb +203 -203
  1265. data/spec/functional/resource/ohai_spec.rb +62 -62
  1266. data/spec/functional/resource/package_spec.rb +386 -386
  1267. data/spec/functional/resource/powershell_script_spec.rb +601 -601
  1268. data/spec/functional/resource/reboot_spec.rb +103 -103
  1269. data/spec/functional/resource/registry_spec.rb +560 -560
  1270. data/spec/functional/resource/remote_directory_spec.rb +220 -220
  1271. data/spec/functional/resource/remote_file_spec.rb +240 -240
  1272. data/spec/functional/resource/rpm_spec.rb +123 -123
  1273. data/spec/functional/resource/template_spec.rb +212 -212
  1274. data/spec/functional/resource/user/dscl_spec.rb +198 -198
  1275. data/spec/functional/resource/user/useradd_spec.rb +692 -692
  1276. data/spec/functional/resource/user/windows_spec.rb +133 -133
  1277. data/spec/functional/resource/windows_package_spec.rb +168 -168
  1278. data/spec/functional/resource/windows_service_spec.rb +102 -102
  1279. data/spec/functional/rest_spec.rb +95 -95
  1280. data/spec/functional/run_lock_spec.rb +466 -466
  1281. data/spec/functional/shell_spec.rb +148 -148
  1282. data/spec/functional/tiny_server_spec.rb +78 -78
  1283. data/spec/functional/util/path_helper_spec.rb +37 -37
  1284. data/spec/functional/util/powershell/cmdlet_spec.rb +111 -111
  1285. data/spec/functional/version_spec.rb +35 -35
  1286. data/spec/functional/win32/crypto_spec.rb +54 -54
  1287. data/spec/functional/win32/registry_spec.rb +623 -623
  1288. data/spec/functional/win32/security_spec.rb +100 -100
  1289. data/spec/functional/win32/service_manager_spec.rb +220 -220
  1290. data/spec/functional/win32/sid_spec.rb +55 -55
  1291. data/spec/functional/win32/version_info_spec.rb +50 -50
  1292. data/spec/functional/win32/versions_spec.rb +117 -117
  1293. data/spec/integration/client/client_spec.rb +500 -500
  1294. data/spec/integration/client/ipv6_spec.rb +134 -134
  1295. data/spec/integration/knife/chef_fs_data_store_spec.rb +556 -556
  1296. data/spec/integration/knife/chef_repo_path_spec.rb +890 -890
  1297. data/spec/integration/knife/chef_repository_file_system_spec.rb +296 -292
  1298. data/spec/integration/knife/chefignore_spec.rb +300 -300
  1299. data/spec/integration/knife/common_options_spec.rb +155 -155
  1300. data/spec/integration/knife/cookbook_api_ipv6_spec.rb +112 -112
  1301. data/spec/integration/knife/delete_spec.rb +1017 -1017
  1302. data/spec/integration/knife/deps_spec.rb +706 -706
  1303. data/spec/integration/knife/diff_spec.rb +602 -602
  1304. data/spec/integration/knife/download_spec.rb +1314 -1314
  1305. data/spec/integration/knife/list_spec.rb +1067 -1067
  1306. data/spec/integration/knife/raw_spec.rb +242 -242
  1307. data/spec/integration/knife/redirection_spec.rb +52 -52
  1308. data/spec/integration/knife/serve_spec.rb +57 -57
  1309. data/spec/integration/knife/show_spec.rb +167 -167
  1310. data/spec/integration/knife/upload_spec.rb +1529 -1529
  1311. data/spec/integration/recipes/lwrp_inline_resources_spec.rb +175 -148
  1312. data/spec/integration/recipes/lwrp_spec.rb +53 -53
  1313. data/spec/integration/recipes/noop_resource_spec.rb +24 -0
  1314. data/spec/integration/recipes/notifies_spec.rb +334 -0
  1315. data/spec/integration/recipes/provider_choice.rb +37 -37
  1316. data/spec/integration/recipes/recipe_dsl_spec.rb +1519 -1519
  1317. data/spec/integration/recipes/remote_directory.rb +74 -74
  1318. data/spec/integration/recipes/resource_action_spec.rb +569 -569
  1319. data/spec/integration/recipes/resource_converge_if_changed_spec.rb +496 -496
  1320. data/spec/integration/recipes/resource_load_spec.rb +208 -208
  1321. data/spec/integration/solo/solo_spec.rb +176 -176
  1322. data/spec/rcov.opts +2 -2
  1323. data/spec/scripts/ssl-serve.rb +47 -47
  1324. data/spec/spec_helper.rb +248 -248
  1325. data/spec/stress/win32/file_spec.rb +37 -37
  1326. data/spec/stress/win32/memory_spec.rb +22 -22
  1327. data/spec/stress/win32/security_spec.rb +69 -69
  1328. data/spec/support/chef_helpers.rb +95 -95
  1329. data/spec/support/key_helpers.rb +104 -104
  1330. data/spec/support/lib/chef/provider/easy.rb +35 -35
  1331. data/spec/support/lib/chef/provider/openldap_includer.rb +29 -29
  1332. data/spec/support/lib/chef/provider/snakeoil.rb +41 -41
  1333. data/spec/support/lib/chef/resource/cat.rb +38 -38
  1334. data/spec/support/lib/chef/resource/one_two_three_four.rb +37 -37
  1335. data/spec/support/lib/chef/resource/openldap_includer.rb +26 -26
  1336. data/spec/support/lib/chef/resource/with_state.rb +28 -28
  1337. data/spec/support/lib/chef/resource/zen_follower.rb +35 -35
  1338. data/spec/support/lib/chef/resource/zen_master.rb +41 -41
  1339. data/spec/support/lib/library_load_order.rb +20 -20
  1340. data/spec/support/matchers/leak.rb +98 -98
  1341. data/spec/support/mock/constant.rb +52 -52
  1342. data/spec/support/mock/platform.rb +25 -25
  1343. data/spec/support/platform_helpers.rb +214 -214
  1344. data/spec/support/platforms/prof/gc.rb +53 -53
  1345. data/spec/support/platforms/prof/win32.rb +45 -45
  1346. data/spec/support/platforms/win32/spec_service.rb +59 -59
  1347. data/spec/support/shared/context/client.rb +285 -285
  1348. data/spec/support/shared/context/config.rb +21 -21
  1349. data/spec/support/shared/context/win32.rb +34 -34
  1350. data/spec/support/shared/examples/client.rb +53 -53
  1351. data/spec/support/shared/functional/diff_disabled.rb +10 -10
  1352. data/spec/support/shared/functional/directory_resource.rb +176 -176
  1353. data/spec/support/shared/functional/file_resource.rb +1049 -1049
  1354. data/spec/support/shared/functional/http.rb +248 -248
  1355. data/spec/support/shared/functional/knife.rb +37 -37
  1356. data/spec/support/shared/functional/securable_resource.rb +547 -547
  1357. data/spec/support/shared/functional/securable_resource_with_reporting.rb +394 -394
  1358. data/spec/support/shared/functional/win32_service.rb +59 -59
  1359. data/spec/support/shared/functional/windows_script.rb +202 -202
  1360. data/spec/support/shared/integration/app_server_support.rb +42 -42
  1361. data/spec/support/shared/integration/integration_helper.rb +154 -154
  1362. data/spec/support/shared/integration/knife_support.rb +173 -173
  1363. data/spec/support/shared/matchers/exit_with_code.rb +32 -32
  1364. data/spec/support/shared/matchers/match_environment_variable.rb +17 -17
  1365. data/spec/support/shared/shared_examples.rb +14 -14
  1366. data/spec/support/shared/unit/api_error_inspector.rb +190 -190
  1367. data/spec/support/shared/unit/api_versioning.rb +77 -77
  1368. data/spec/support/shared/unit/application_dot_d.rb +70 -70
  1369. data/spec/support/shared/unit/execute_resource.rb +133 -133
  1370. data/spec/support/shared/unit/file_system_support.rb +69 -69
  1371. data/spec/support/shared/unit/knife_shared.rb +39 -39
  1372. data/spec/support/shared/unit/mock_shellout.rb +49 -49
  1373. data/spec/support/shared/unit/platform_introspector.rb +189 -189
  1374. data/spec/support/shared/unit/provider/file.rb +835 -835
  1375. data/spec/support/shared/unit/provider/useradd_based_user_provider.rb +433 -433
  1376. data/spec/support/shared/unit/resource/static_provider_resolution.rb +63 -63
  1377. data/spec/support/shared/unit/script_resource.rb +98 -98
  1378. data/spec/support/shared/unit/user_and_client_shared.rb +114 -114
  1379. data/spec/support/shared/unit/windows_script_resource.rb +80 -80
  1380. data/spec/tiny_server.rb +207 -207
  1381. data/spec/unit/api_client/registration_spec.rb +278 -278
  1382. data/spec/unit/api_client_spec.rb +341 -341
  1383. data/spec/unit/api_client_v1_spec.rb +455 -455
  1384. data/spec/unit/application/apply_spec.rb +110 -110
  1385. data/spec/unit/application/client_spec.rb +495 -435
  1386. data/spec/unit/application/knife_spec.rb +229 -229
  1387. data/spec/unit/application/solo_spec.rb +170 -170
  1388. data/spec/unit/application_spec.rb +411 -384
  1389. data/spec/unit/audit/audit_event_proxy_spec.rb +311 -311
  1390. data/spec/unit/audit/audit_reporter_spec.rb +430 -430
  1391. data/spec/unit/audit/control_group_data_spec.rb +477 -477
  1392. data/spec/unit/audit/logger_spec.rb +42 -42
  1393. data/spec/unit/audit/rspec_formatter_spec.rb +29 -29
  1394. data/spec/unit/audit/runner_spec.rb +144 -144
  1395. data/spec/unit/chef_class_spec.rb +110 -110
  1396. data/spec/unit/chef_fs/config_spec.rb +106 -106
  1397. data/spec/unit/chef_fs/data_handler/group_handler_spec.rb +63 -63
  1398. data/spec/unit/chef_fs/diff_spec.rb +328 -328
  1399. data/spec/unit/chef_fs/file_pattern_spec.rb +512 -512
  1400. data/spec/unit/chef_fs/file_system/cookbook_subdir_spec.rb +34 -34
  1401. data/spec/unit/chef_fs/file_system/operation_failed_error_spec.rb +47 -47
  1402. data/spec/unit/chef_fs/file_system_spec.rb +148 -148
  1403. data/spec/unit/chef_fs/parallelizer.rb +479 -479
  1404. data/spec/unit/chef_fs/path_util_spec.rb +108 -108
  1405. data/spec/unit/chef_spec.rb +25 -25
  1406. data/spec/unit/client_spec.rb +544 -544
  1407. data/spec/unit/config_fetcher_spec.rb +125 -125
  1408. data/spec/unit/config_spec.rb +31 -31
  1409. data/spec/unit/cookbook/chefignore_spec.rb +49 -49
  1410. data/spec/unit/cookbook/cookbook_version_loader_spec.rb +198 -198
  1411. data/spec/unit/cookbook/file_vendor_spec.rb +97 -97
  1412. data/spec/unit/cookbook/metadata_spec.rb +952 -952
  1413. data/spec/unit/cookbook/synchronizer_spec.rb +520 -520
  1414. data/spec/unit/cookbook/syntax_check_spec.rb +219 -219
  1415. data/spec/unit/cookbook_loader_spec.rb +299 -299
  1416. data/spec/unit/cookbook_manifest_spec.rb +243 -243
  1417. data/spec/unit/cookbook_site_streaming_uploader_spec.rb +203 -203
  1418. data/spec/unit/cookbook_spec.rb +66 -66
  1419. data/spec/unit/cookbook_uploader_spec.rb +199 -199
  1420. data/spec/unit/cookbook_version_file_specificity_spec.rb +576 -553
  1421. data/spec/unit/cookbook_version_spec.rb +359 -359
  1422. data/spec/unit/daemon_spec.rb +174 -174
  1423. data/spec/unit/data_bag_item_spec.rb +388 -388
  1424. data/spec/unit/data_bag_spec.rb +260 -260
  1425. data/spec/unit/deprecation_spec.rb +150 -150
  1426. data/spec/unit/digester_spec.rb +49 -49
  1427. data/spec/unit/dsl/audit_spec.rb +43 -43
  1428. data/spec/unit/dsl/data_query_spec.rb +106 -106
  1429. data/spec/unit/dsl/platform_introspection_spec.rb +129 -129
  1430. data/spec/unit/dsl/reboot_pending_spec.rb +100 -100
  1431. data/spec/unit/dsl/recipe_spec.rb +93 -80
  1432. data/spec/unit/dsl/{regsitry_helper_spec.rb → registry_helper_spec.rb} +52 -52
  1433. data/spec/unit/dsl/resources_spec.rb +85 -85
  1434. data/spec/unit/encrypted_data_bag_item/check_encrypted_spec.rb +95 -95
  1435. data/spec/unit/encrypted_data_bag_item_spec.rb +437 -437
  1436. data/spec/unit/environment_spec.rb +470 -470
  1437. data/spec/unit/event_dispatch/dispatcher_spec.rb +122 -122
  1438. data/spec/unit/event_dispatch/dsl_spec.rb +83 -83
  1439. data/spec/unit/exceptions_spec.rb +130 -130
  1440. data/spec/unit/file_access_control_spec.rb +308 -308
  1441. data/spec/unit/file_cache_spec.rb +114 -114
  1442. data/spec/unit/file_content_management/deploy/cp_spec.rb +44 -44
  1443. data/spec/unit/file_content_management/deploy/mv_unix_spec.rb +101 -101
  1444. data/spec/unit/file_content_management/deploy/mv_windows_spec.rb +232 -232
  1445. data/spec/unit/file_content_management/tempfile_spec.rb +85 -85
  1446. data/spec/unit/formatters/base_spec.rb +71 -71
  1447. data/spec/unit/formatters/doc_spec.rb +92 -78
  1448. data/spec/unit/formatters/error_description_spec.rb +96 -0
  1449. data/spec/unit/formatters/error_inspectors/api_error_formatting_spec.rb +76 -76
  1450. data/spec/unit/formatters/error_inspectors/compile_error_inspector_spec.rb +265 -265
  1451. data/spec/unit/formatters/error_inspectors/cookbook_resolve_error_inspector_spec.rb +126 -126
  1452. data/spec/unit/formatters/error_inspectors/cookbook_sync_error_inspector_spec.rb +43 -43
  1453. data/spec/unit/formatters/error_inspectors/node_load_error_inspector_spec.rb +26 -26
  1454. data/spec/unit/formatters/error_inspectors/registration_error_inspector_spec.rb +26 -26
  1455. data/spec/unit/formatters/error_inspectors/resource_failure_inspector_spec.rb +191 -191
  1456. data/spec/unit/formatters/error_inspectors/run_list_expansion_error_inspector_spec.rb +91 -91
  1457. data/spec/unit/guard_interpreter/resource_guard_interpreter_spec.rb +155 -155
  1458. data/spec/unit/guard_interpreter_spec.rb +41 -41
  1459. data/spec/unit/handler/json_file_spec.rb +63 -63
  1460. data/spec/unit/handler_spec.rb +215 -215
  1461. data/spec/unit/http/authenticator_spec.rb +80 -80
  1462. data/spec/unit/http/basic_client_spec.rb +52 -129
  1463. data/spec/unit/http/http_request_spec.rb +91 -91
  1464. data/spec/unit/http/json_input_spec.rb +128 -128
  1465. data/spec/unit/http/simple_spec.rb +32 -32
  1466. data/spec/unit/http/socketless_chef_zero_client_spec.rb +173 -173
  1467. data/spec/unit/http/ssl_policies_spec.rb +169 -169
  1468. data/spec/unit/http/validate_content_length_spec.rb +207 -207
  1469. data/spec/unit/http_spec.rb +206 -206
  1470. data/spec/unit/json_compat_spec.rb +105 -105
  1471. data/spec/unit/key_spec.rb +631 -631
  1472. data/spec/unit/knife/bootstrap/chef_vault_handler_spec.rb +152 -152
  1473. data/spec/unit/knife/bootstrap/client_builder_spec.rb +207 -207
  1474. data/spec/unit/knife/bootstrap_spec.rb +822 -822
  1475. data/spec/unit/knife/client_bulk_delete_spec.rb +166 -166
  1476. data/spec/unit/knife/client_create_spec.rb +186 -186
  1477. data/spec/unit/knife/client_delete_spec.rb +83 -83
  1478. data/spec/unit/knife/client_edit_spec.rb +53 -53
  1479. data/spec/unit/knife/client_list_spec.rb +34 -34
  1480. data/spec/unit/knife/client_reregister_spec.rb +62 -62
  1481. data/spec/unit/knife/client_show_spec.rb +52 -52
  1482. data/spec/unit/knife/configure_client_spec.rb +83 -83
  1483. data/spec/unit/knife/configure_spec.rb +241 -241
  1484. data/spec/unit/knife/cookbook_bulk_delete_spec.rb +87 -87
  1485. data/spec/unit/knife/cookbook_create_spec.rb +260 -260
  1486. data/spec/unit/knife/cookbook_delete_spec.rb +239 -239
  1487. data/spec/unit/knife/cookbook_download_spec.rb +237 -237
  1488. data/spec/unit/knife/cookbook_list_spec.rb +88 -88
  1489. data/spec/unit/knife/cookbook_metadata_from_file_spec.rb +65 -65
  1490. data/spec/unit/knife/cookbook_metadata_spec.rb +179 -179
  1491. data/spec/unit/knife/cookbook_show_spec.rb +222 -222
  1492. data/spec/unit/knife/cookbook_site_download_spec.rb +149 -149
  1493. data/spec/unit/knife/cookbook_site_install_spec.rb +197 -197
  1494. data/spec/unit/knife/cookbook_site_share_spec.rb +209 -209
  1495. data/spec/unit/knife/cookbook_site_unshare_spec.rb +77 -77
  1496. data/spec/unit/knife/cookbook_test_spec.rb +84 -84
  1497. data/spec/unit/knife/cookbook_upload_spec.rb +331 -331
  1498. data/spec/unit/knife/core/bootstrap_context_spec.rb +257 -257
  1499. data/spec/unit/knife/core/cookbook_scm_repo_spec.rb +187 -187
  1500. data/spec/unit/knife/core/custom_manifest_loader_spec.rb +41 -41
  1501. data/spec/unit/knife/core/gem_glob_loader_spec.rb +209 -209
  1502. data/spec/unit/knife/core/hashed_command_loader_spec.rb +109 -109
  1503. data/spec/unit/knife/core/node_editor_spec.rb +211 -211
  1504. data/spec/unit/knife/core/object_loader_spec.rb +81 -81
  1505. data/spec/unit/knife/core/subcommand_loader_spec.rb +70 -70
  1506. data/spec/unit/knife/core/ui_spec.rb +598 -598
  1507. data/spec/unit/knife/data_bag_create_spec.rb +109 -109
  1508. data/spec/unit/knife/data_bag_edit_spec.rb +127 -127
  1509. data/spec/unit/knife/data_bag_from_file_spec.rb +172 -172
  1510. data/spec/unit/knife/data_bag_secret_options_spec.rb +165 -165
  1511. data/spec/unit/knife/data_bag_show_spec.rb +123 -123
  1512. data/spec/unit/knife/environment_compare_spec.rb +112 -112
  1513. data/spec/unit/knife/environment_create_spec.rb +91 -91
  1514. data/spec/unit/knife/environment_delete_spec.rb +71 -71
  1515. data/spec/unit/knife/environment_edit_spec.rb +79 -79
  1516. data/spec/unit/knife/environment_from_file_spec.rb +90 -90
  1517. data/spec/unit/knife/environment_list_spec.rb +54 -54
  1518. data/spec/unit/knife/environment_show_spec.rb +52 -52
  1519. data/spec/unit/knife/index_rebuild_spec.rb +125 -125
  1520. data/spec/unit/knife/key_create_spec.rb +223 -223
  1521. data/spec/unit/knife/key_delete_spec.rb +133 -133
  1522. data/spec/unit/knife/key_edit_spec.rb +264 -264
  1523. data/spec/unit/knife/key_helper.rb +74 -74
  1524. data/spec/unit/knife/key_list_spec.rb +216 -216
  1525. data/spec/unit/knife/key_show_spec.rb +126 -126
  1526. data/spec/unit/knife/knife_help.rb +92 -92
  1527. data/spec/unit/knife/node_bulk_delete_spec.rb +94 -94
  1528. data/spec/unit/knife/node_delete_spec.rb +68 -68
  1529. data/spec/unit/knife/node_edit_spec.rb +114 -114
  1530. data/spec/unit/knife/node_environment_set_spec.rb +80 -80
  1531. data/spec/unit/knife/node_from_file_spec.rb +59 -59
  1532. data/spec/unit/knife/node_list_spec.rb +62 -62
  1533. data/spec/unit/knife/node_run_list_add_spec.rb +145 -145
  1534. data/spec/unit/knife/node_run_list_remove_spec.rb +106 -106
  1535. data/spec/unit/knife/node_run_list_set_spec.rb +140 -140
  1536. data/spec/unit/knife/node_show_spec.rb +65 -65
  1537. data/spec/unit/knife/osc_user_create_spec.rb +93 -93
  1538. data/spec/unit/knife/osc_user_delete_spec.rb +44 -44
  1539. data/spec/unit/knife/osc_user_edit_spec.rb +52 -52
  1540. data/spec/unit/knife/osc_user_list_spec.rb +37 -37
  1541. data/spec/unit/knife/osc_user_reregister_spec.rb +58 -58
  1542. data/spec/unit/knife/osc_user_show_spec.rb +46 -46
  1543. data/spec/unit/knife/raw_spec.rb +43 -43
  1544. data/spec/unit/knife/role_bulk_delete_spec.rb +80 -80
  1545. data/spec/unit/knife/role_create_spec.rb +80 -80
  1546. data/spec/unit/knife/role_delete_spec.rb +67 -67
  1547. data/spec/unit/knife/role_edit_spec.rb +77 -77
  1548. data/spec/unit/knife/role_env_run_list_add_spec.rb +217 -217
  1549. data/spec/unit/knife/role_env_run_list_clear_spec.rb +94 -94
  1550. data/spec/unit/knife/role_env_run_list_remove_spec.rb +102 -102
  1551. data/spec/unit/knife/role_env_run_list_replace_spec.rb +105 -105
  1552. data/spec/unit/knife/role_env_run_list_set_spec.rb +99 -99
  1553. data/spec/unit/knife/role_from_file_spec.rb +69 -69
  1554. data/spec/unit/knife/role_list_spec.rb +54 -54
  1555. data/spec/unit/knife/role_run_list_add_spec.rb +179 -179
  1556. data/spec/unit/knife/role_run_list_clear_spec.rb +84 -84
  1557. data/spec/unit/knife/role_run_list_remove_spec.rb +92 -92
  1558. data/spec/unit/knife/role_run_list_replace_spec.rb +98 -98
  1559. data/spec/unit/knife/role_run_list_set_spec.rb +89 -89
  1560. data/spec/unit/knife/role_show_spec.rb +59 -59
  1561. data/spec/unit/knife/ssh_spec.rb +428 -410
  1562. data/spec/unit/knife/ssl_check_spec.rb +240 -240
  1563. data/spec/unit/knife/ssl_fetch_spec.rb +184 -184
  1564. data/spec/unit/knife/status_spec.rb +108 -108
  1565. data/spec/unit/knife/tag_create_spec.rb +23 -23
  1566. data/spec/unit/knife/tag_delete_spec.rb +25 -25
  1567. data/spec/unit/knife/tag_list_spec.rb +23 -23
  1568. data/spec/unit/knife/user_create_spec.rb +214 -214
  1569. data/spec/unit/knife/user_delete_spec.rb +65 -65
  1570. data/spec/unit/knife/user_edit_spec.rb +66 -66
  1571. data/spec/unit/knife/user_list_spec.rb +36 -36
  1572. data/spec/unit/knife/user_reregister_spec.rb +74 -74
  1573. data/spec/unit/knife/user_show_spec.rb +65 -65
  1574. data/spec/unit/knife_spec.rb +529 -529
  1575. data/spec/unit/lib_backcompat_spec.rb +34 -34
  1576. data/spec/unit/log/syslog_spec.rb +53 -53
  1577. data/spec/unit/log/winevt_spec.rb +55 -55
  1578. data/spec/unit/log_spec.rb +24 -24
  1579. data/spec/unit/lwrp_spec.rb +778 -720
  1580. data/spec/unit/mash_spec.rb +51 -51
  1581. data/spec/unit/mixin/api_version_request_handling_spec.rb +126 -126
  1582. data/spec/unit/mixin/checksum_spec.rb +40 -40
  1583. data/spec/unit/mixin/command_spec.rb +104 -104
  1584. data/spec/unit/mixin/convert_to_class_name_spec.rb +54 -54
  1585. data/spec/unit/mixin/deep_merge_spec.rb +342 -342
  1586. data/spec/unit/mixin/deprecation_spec.rb +57 -57
  1587. data/spec/unit/mixin/enforce_ownership_and_permissions_spec.rb +96 -96
  1588. data/spec/unit/mixin/homebrew_user_spec.rb +100 -100
  1589. data/spec/unit/mixin/lazy_module_include.rb +71 -0
  1590. data/spec/unit/mixin/params_validate_spec.rb +409 -409
  1591. data/spec/unit/mixin/path_sanity_spec.rb +92 -92
  1592. data/spec/unit/mixin/powershell_out_spec.rb +70 -70
  1593. data/spec/unit/mixin/powershell_type_coercions_spec.rb +83 -83
  1594. data/spec/unit/mixin/properties_spec.rb +97 -97
  1595. data/spec/unit/mixin/proxified_socket_spec.rb +97 -94
  1596. data/spec/unit/mixin/securable_spec.rb +314 -314
  1597. data/spec/unit/mixin/shell_out_spec.rb +299 -299
  1598. data/spec/unit/mixin/subclass_directive_spec.rb +45 -45
  1599. data/spec/unit/mixin/template_spec.rb +276 -276
  1600. data/spec/unit/mixin/unformatter_spec.rb +61 -61
  1601. data/spec/unit/mixin/uris_spec.rb +57 -57
  1602. data/spec/unit/mixin/windows_architecture_helper_spec.rb +85 -85
  1603. data/spec/unit/mixin/xml_escape_spec.rb +54 -54
  1604. data/spec/unit/monkey_patches/uri_spec.rb +34 -34
  1605. data/spec/unit/monologger_spec.rb +45 -45
  1606. data/spec/unit/node/attribute_spec.rb +1179 -1179
  1607. data/spec/unit/node/immutable_collections_spec.rb +197 -197
  1608. data/spec/unit/node_map_spec.rb +170 -170
  1609. data/spec/unit/node_spec.rb +1565 -1565
  1610. data/spec/unit/org_spec.rb +196 -196
  1611. data/spec/unit/platform/query_helpers_spec.rb +220 -220
  1612. data/spec/unit/platform_spec.rb +241 -241
  1613. data/spec/unit/policy_builder/dynamic_spec.rb +273 -273
  1614. data/spec/unit/policy_builder/expand_node_object_spec.rb +336 -336
  1615. data/spec/unit/policy_builder/policyfile_spec.rb +745 -745
  1616. data/spec/unit/policy_builder_spec.rb +26 -26
  1617. data/spec/unit/property/state_spec.rb +508 -508
  1618. data/spec/unit/property/validation_spec.rb +704 -704
  1619. data/spec/unit/property_spec.rb +1227 -1227
  1620. data/spec/unit/provider/apt_repository_spec.rb +178 -0
  1621. data/spec/unit/provider/apt_update_spec.rb +113 -113
  1622. data/spec/unit/provider/breakpoint_spec.rb +53 -53
  1623. data/spec/unit/provider/cookbook_file/content_spec.rb +39 -39
  1624. data/spec/unit/provider/cookbook_file_spec.rb +58 -58
  1625. data/spec/unit/provider/cron/unix_spec.rb +139 -139
  1626. data/spec/unit/provider/cron_spec.rb +1010 -1010
  1627. data/spec/unit/provider/deploy/revision_spec.rb +110 -110
  1628. data/spec/unit/provider/deploy/timestamped_spec.rb +40 -40
  1629. data/spec/unit/provider/deploy_spec.rb +641 -641
  1630. data/spec/unit/provider/directory_spec.rb +287 -287
  1631. data/spec/unit/provider/dsc_resource_spec.rb +167 -167
  1632. data/spec/unit/provider/dsc_script_spec.rb +173 -173
  1633. data/spec/unit/provider/env/windows_spec.rb +103 -103
  1634. data/spec/unit/provider/env_spec.rb +310 -310
  1635. data/spec/unit/provider/erl_call_spec.rb +85 -85
  1636. data/spec/unit/provider/execute_spec.rb +243 -243
  1637. data/spec/unit/provider/file/content_spec.rb +114 -114
  1638. data/spec/unit/provider/file_spec.rb +56 -56
  1639. data/spec/unit/provider/git_spec.rb +668 -668
  1640. data/spec/unit/provider/group/dscl_spec.rb +331 -331
  1641. data/spec/unit/provider/group/gpasswd_spec.rb +116 -116
  1642. data/spec/unit/provider/group/groupadd_spec.rb +174 -174
  1643. data/spec/unit/provider/group/groupmod_spec.rb +133 -133
  1644. data/spec/unit/provider/group/pw_spec.rb +138 -138
  1645. data/spec/unit/provider/group/usermod_spec.rb +115 -115
  1646. data/spec/unit/provider/group/windows_spec.rb +101 -101
  1647. data/spec/unit/provider/group_spec.rb +286 -286
  1648. data/spec/unit/provider/http_request_spec.rb +159 -159
  1649. data/spec/unit/provider/ifconfig/aix_spec.rb +180 -180
  1650. data/spec/unit/provider/ifconfig/debian_spec.rb +344 -344
  1651. data/spec/unit/provider/ifconfig/redhat_spec.rb +73 -73
  1652. data/spec/unit/provider/ifconfig_spec.rb +200 -200
  1653. data/spec/unit/provider/launchd_spec.rb +189 -189
  1654. data/spec/unit/provider/link_spec.rb +252 -252
  1655. data/spec/unit/provider/log_spec.rb +75 -75
  1656. data/spec/unit/provider/mdadm_spec.rb +131 -131
  1657. data/spec/unit/provider/mount/aix_spec.rb +237 -238
  1658. data/spec/unit/provider/mount/mount_spec.rb +474 -480
  1659. data/spec/unit/provider/mount/solaris_spec.rb +822 -822
  1660. data/spec/unit/provider/mount/windows_spec.rb +149 -151
  1661. data/spec/unit/provider/mount_spec.rb +184 -203
  1662. data/spec/unit/provider/ohai_spec.rb +84 -84
  1663. data/spec/unit/provider/osx_profile_spec.rb +249 -249
  1664. data/spec/unit/provider/package/aix_spec.rb +172 -172
  1665. data/spec/unit/provider/package/apt_spec.rb +386 -386
  1666. data/spec/unit/provider/package/chocolatey_spec.rb +501 -501
  1667. data/spec/unit/provider/package/dpkg_spec.rb +287 -287
  1668. data/spec/unit/provider/package/easy_install_spec.rb +108 -108
  1669. data/spec/unit/provider/package/freebsd/pkg_spec.rb +274 -274
  1670. data/spec/unit/provider/package/freebsd/pkgng_spec.rb +148 -148
  1671. data/spec/unit/provider/package/freebsd/port_spec.rb +163 -163
  1672. data/spec/unit/provider/package/homebrew_spec.rb +292 -292
  1673. data/spec/unit/provider/package/ips_spec.rb +227 -227
  1674. data/spec/unit/provider/package/macports_spec.rb +203 -203
  1675. data/spec/unit/provider/package/openbsd_spec.rb +132 -132
  1676. data/spec/unit/provider/package/pacman_spec.rb +194 -194
  1677. data/spec/unit/provider/package/paludis_spec.rb +134 -134
  1678. data/spec/unit/provider/package/portage_spec.rb +310 -310
  1679. data/spec/unit/provider/package/rpm_spec.rb +429 -429
  1680. data/spec/unit/provider/package/rubygems_spec.rb +782 -782
  1681. data/spec/unit/provider/package/smartos_spec.rb +110 -110
  1682. data/spec/unit/provider/package/solaris_spec.rb +167 -167
  1683. data/spec/unit/provider/package/windows/exe_spec.rb +187 -187
  1684. data/spec/unit/provider/package/windows/msi_spec.rb +159 -159
  1685. data/spec/unit/provider/package/windows_spec.rb +397 -397
  1686. data/spec/unit/provider/package/yum_spec.rb +2267 -2267
  1687. data/spec/unit/provider/package/zypper_spec.rb +268 -268
  1688. data/spec/unit/provider/package_spec.rb +870 -870
  1689. data/spec/unit/provider/powershell_script_spec.rb +106 -106
  1690. data/spec/unit/provider/registry_key_spec.rb +295 -295
  1691. data/spec/unit/provider/remote_directory_spec.rb +221 -221
  1692. data/spec/unit/provider/remote_file/cache_control_data_spec.rb +245 -245
  1693. data/spec/unit/provider/remote_file/content_spec.rb +252 -252
  1694. data/spec/unit/provider/remote_file/fetcher_spec.rb +94 -94
  1695. data/spec/unit/provider/remote_file/ftp_spec.rb +217 -219
  1696. data/spec/unit/provider/remote_file/http_spec.rb +322 -301
  1697. data/spec/unit/provider/remote_file/local_file_spec.rb +103 -103
  1698. data/spec/unit/provider/remote_file/network_file_spec.rb +45 -45
  1699. data/spec/unit/provider/remote_file/sftp_spec.rb +150 -0
  1700. data/spec/unit/provider/remote_file_spec.rb +61 -61
  1701. data/spec/unit/provider/route_spec.rb +242 -242
  1702. data/spec/unit/provider/ruby_block_spec.rb +45 -45
  1703. data/spec/unit/provider/script_spec.rb +114 -114
  1704. data/spec/unit/provider/service/aix_service_spec.rb +195 -195
  1705. data/spec/unit/provider/service/aixinit_service_spec.rb +272 -272
  1706. data/spec/unit/provider/service/arch_service_spec.rb +324 -324
  1707. data/spec/unit/provider/service/debian_service_spec.rb +375 -375
  1708. data/spec/unit/provider/service/freebsd_service_spec.rb +613 -613
  1709. data/spec/unit/provider/service/gentoo_service_spec.rb +144 -144
  1710. data/spec/unit/provider/service/init_service_spec.rb +235 -235
  1711. data/spec/unit/provider/service/insserv_service_spec.rb +75 -75
  1712. data/spec/unit/provider/service/invokercd_service_spec.rb +211 -211
  1713. data/spec/unit/provider/service/macosx_spec.rb +335 -335
  1714. data/spec/unit/provider/service/openbsd_service_spec.rb +545 -545
  1715. data/spec/unit/provider/service/redhat_spec.rb +250 -236
  1716. data/spec/unit/provider/service/simple_service_spec.rb +169 -169
  1717. data/spec/unit/provider/service/solaris_smf_service_spec.rb +255 -255
  1718. data/spec/unit/provider/service/systemd_service_spec.rb +370 -344
  1719. data/spec/unit/provider/service/upstart_service_spec.rb +342 -342
  1720. data/spec/unit/provider/service/windows_spec.rb +463 -463
  1721. data/spec/unit/provider/service_spec.rb +168 -168
  1722. data/spec/unit/provider/subversion_spec.rb +352 -298
  1723. data/spec/unit/provider/template/content_spec.rb +169 -169
  1724. data/spec/unit/provider/template_spec.rb +89 -89
  1725. data/spec/unit/provider/user/dscl_spec.rb +901 -901
  1726. data/spec/unit/provider/user/pw_spec.rb +252 -252
  1727. data/spec/unit/provider/user/solaris_spec.rb +139 -139
  1728. data/spec/unit/provider/user/useradd_spec.rb +51 -51
  1729. data/spec/unit/provider/user/windows_spec.rb +185 -185
  1730. data/spec/unit/provider/user_spec.rb +474 -474
  1731. data/spec/unit/provider/whyrun_safe_ruby_block_spec.rb +46 -46
  1732. data/spec/unit/provider_resolver_spec.rb +893 -893
  1733. data/spec/unit/provider_spec.rb +198 -198
  1734. data/spec/unit/pure_application_spec.rb +32 -32
  1735. data/spec/unit/recipe_spec.rb +699 -699
  1736. data/spec/unit/resource/apt_package_spec.rb +38 -38
  1737. data/spec/unit/resource/apt_repository_spec.rb +34 -0
  1738. data/spec/unit/resource/apt_update_spec.rb +38 -38
  1739. data/spec/unit/resource/bash_spec.rb +40 -40
  1740. data/spec/unit/resource/batch_spec.rb +49 -49
  1741. data/spec/unit/resource/breakpoint_spec.rb +47 -47
  1742. data/spec/unit/resource/chef_gem_spec.rb +157 -157
  1743. data/spec/unit/resource/chocolatey_package_spec.rb +67 -67
  1744. data/spec/unit/resource/conditional_action_not_nothing_spec.rb +45 -45
  1745. data/spec/unit/resource/conditional_spec.rb +208 -208
  1746. data/spec/unit/resource/cookbook_file_spec.rb +88 -88
  1747. data/spec/unit/resource/cron_spec.rb +186 -186
  1748. data/spec/unit/resource/csh_spec.rb +40 -40
  1749. data/spec/unit/resource/deploy_revision_spec.rb +42 -42
  1750. data/spec/unit/resource/deploy_spec.rb +283 -283
  1751. data/spec/unit/resource/directory_spec.rb +82 -82
  1752. data/spec/unit/resource/dpkg_package_spec.rb +32 -32
  1753. data/spec/unit/resource/dsc_resource_spec.rb +96 -96
  1754. data/spec/unit/resource/dsc_script_spec.rb +134 -134
  1755. data/spec/unit/resource/easy_install_package_spec.rb +39 -39
  1756. data/spec/unit/resource/env_spec.rb +85 -85
  1757. data/spec/unit/resource/erl_call_spec.rb +81 -81
  1758. data/spec/unit/resource/execute_spec.rb +35 -35
  1759. data/spec/unit/resource/file/verification_spec.rb +139 -139
  1760. data/spec/unit/resource/file_spec.rb +130 -130
  1761. data/spec/unit/resource/freebsd_package_spec.rb +87 -87
  1762. data/spec/unit/resource/gem_package_spec.rb +42 -42
  1763. data/spec/unit/resource/git_spec.rb +50 -50
  1764. data/spec/unit/resource/group_spec.rb +162 -162
  1765. data/spec/unit/resource/homebrew_package_spec.rb +50 -50
  1766. data/spec/unit/resource/http_request_spec.rb +59 -59
  1767. data/spec/unit/resource/ifconfig_spec.rb +109 -109
  1768. data/spec/unit/resource/ips_package_spec.rb +40 -40
  1769. data/spec/unit/resource/ksh_spec.rb +40 -40
  1770. data/spec/unit/resource/launchd_spec.rb +31 -31
  1771. data/spec/unit/resource/link_spec.rb +134 -134
  1772. data/spec/unit/resource/log_spec.rb +73 -73
  1773. data/spec/unit/resource/macports_package_spec.rb +32 -32
  1774. data/spec/unit/resource/mdadm_spec.rb +102 -102
  1775. data/spec/unit/resource/mount_spec.rb +214 -214
  1776. data/spec/unit/resource/ohai_spec.rb +61 -61
  1777. data/spec/unit/resource/openbsd_package_spec.rb +48 -48
  1778. data/spec/unit/resource/osx_profile_spec.rb +61 -61
  1779. data/spec/unit/resource/package_spec.rb +93 -93
  1780. data/spec/unit/resource/pacman_package_spec.rb +32 -32
  1781. data/spec/unit/resource/perl_spec.rb +40 -40
  1782. data/spec/unit/resource/portage_package_spec.rb +38 -38
  1783. data/spec/unit/resource/powershell_script_spec.rb +136 -136
  1784. data/spec/unit/resource/python_spec.rb +40 -40
  1785. data/spec/unit/resource/registry_key_spec.rb +199 -199
  1786. data/spec/unit/resource/remote_directory_spec.rb +97 -97
  1787. data/spec/unit/resource/remote_file_spec.rb +207 -207
  1788. data/spec/unit/resource/resource_notification_spec.rb +169 -169
  1789. data/spec/unit/resource/route_spec.rb +107 -107
  1790. data/spec/unit/resource/rpm_package_spec.rb +46 -46
  1791. data/spec/unit/resource/ruby_block_spec.rb +61 -61
  1792. data/spec/unit/resource/ruby_spec.rb +40 -40
  1793. data/spec/unit/resource/scm_spec.rb +193 -193
  1794. data/spec/unit/resource/script_spec.rb +44 -44
  1795. data/spec/unit/resource/service_spec.rb +179 -179
  1796. data/spec/unit/resource/smartos_package_spec.rb +33 -33
  1797. data/spec/unit/resource/solaris_package_spec.rb +42 -42
  1798. data/spec/unit/resource/subversion_spec.rb +71 -71
  1799. data/spec/unit/resource/template_spec.rb +210 -210
  1800. data/spec/unit/resource/timestamped_deploy_spec.rb +32 -32
  1801. data/spec/unit/resource/user_spec.rb +133 -133
  1802. data/spec/unit/resource/windows_package_spec.rb +95 -95
  1803. data/spec/unit/resource/windows_service_spec.rb +49 -49
  1804. data/spec/unit/resource/yum_package_spec.rb +89 -89
  1805. data/spec/unit/resource_builder_spec.rb +1 -1
  1806. data/spec/unit/resource_collection/resource_list_spec.rb +137 -137
  1807. data/spec/unit/resource_collection/resource_set_spec.rb +199 -199
  1808. data/spec/unit/resource_collection/stepable_iterator_spec.rb +144 -144
  1809. data/spec/unit/resource_collection_spec.rb +369 -299
  1810. data/spec/unit/resource_definition_spec.rb +117 -117
  1811. data/spec/unit/resource_reporter_spec.rb +758 -758
  1812. data/spec/unit/resource_resolver_spec.rb +52 -52
  1813. data/spec/unit/resource_spec.rb +1101 -1101
  1814. data/spec/unit/rest/auth_credentials_spec.rb +292 -296
  1815. data/spec/unit/rest_spec.rb +753 -753
  1816. data/spec/unit/role_spec.rb +358 -358
  1817. data/spec/unit/run_context/child_run_context_spec.rb +133 -133
  1818. data/spec/unit/run_context/cookbook_compiler_spec.rb +184 -184
  1819. data/spec/unit/run_context_spec.rb +241 -241
  1820. data/spec/unit/run_list/run_list_expansion_spec.rb +144 -144
  1821. data/spec/unit/run_list/run_list_item_spec.rb +117 -117
  1822. data/spec/unit/run_list/versioned_recipe_list_spec.rb +194 -194
  1823. data/spec/unit/run_list_spec.rb +312 -312
  1824. data/spec/unit/run_lock_spec.rb +140 -140
  1825. data/spec/unit/run_status_spec.rb +144 -144
  1826. data/spec/unit/runner_spec.rb +411 -411
  1827. data/spec/unit/scan_access_control_spec.rb +183 -183
  1828. data/spec/unit/search/query_spec.rb +289 -289
  1829. data/spec/unit/shell/model_wrapper_spec.rb +96 -96
  1830. data/spec/unit/shell/shell_ext_spec.rb +153 -153
  1831. data/spec/unit/shell/shell_session_spec.rb +195 -195
  1832. data/spec/unit/shell_out_spec.rb +18 -18
  1833. data/spec/unit/shell_spec.rb +162 -162
  1834. data/spec/unit/user_spec.rb +275 -275
  1835. data/spec/unit/user_v1_spec.rb +583 -583
  1836. data/spec/unit/util/backup_spec.rb +141 -141
  1837. data/spec/unit/util/diff_spec.rb +576 -576
  1838. data/spec/unit/util/dsc/configuration_generator_spec.rb +193 -193
  1839. data/spec/unit/util/dsc/lcm_output_parser_spec.rb +164 -164
  1840. data/spec/unit/util/dsc/local_configuration_manager_spec.rb +138 -138
  1841. data/spec/unit/util/dsc/resource_store.rb +76 -76
  1842. data/spec/unit/util/editor_spec.rb +152 -152
  1843. data/spec/unit/util/file_edit_spec.rb +224 -224
  1844. data/spec/unit/util/powershell/cmdlet_spec.rb +106 -106
  1845. data/spec/unit/util/powershell/ps_credential_spec.rb +44 -44
  1846. data/spec/unit/util/selinux_spec.rb +171 -171
  1847. data/spec/unit/util/threaded_job_queue_spec.rb +51 -51
  1848. data/spec/unit/version/platform_spec.rb +60 -60
  1849. data/spec/unit/version_class_spec.rb +171 -171
  1850. data/spec/unit/version_constraint/platform_spec.rb +45 -45
  1851. data/spec/unit/version_constraint_spec.rb +179 -179
  1852. data/spec/unit/win32/registry_spec.rb +394 -394
  1853. data/spec/unit/windows_service_spec.rb +116 -116
  1854. data/tasks/cbgb.rb +84 -84
  1855. data/tasks/external_tests.rb +64 -64
  1856. data/tasks/maintainers.rb +210 -210
  1857. data/tasks/rspec.rb +89 -89
  1858. metadata +55 -464
@@ -1,202 +1,202 @@
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 Man Pages &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-man-pages">
43
- <h1>chef-client Man Pages<a class="headerlink" href="#chef-client-man-pages" title="Permalink to this headline">¶</a></h1>
44
- <p>The following command line interfaces are available in the chef-client:</p>
45
- <ul class="simple">
46
- <li><a class="reference internal" href="ctl_chef_client.html"><em>chef-client</em></a></li>
47
- <li><a class="reference internal" href="ctl_chef_server.html"><em>chef-server-ctl (executable)</em></a></li>
48
- <li><a class="reference internal" href="ctl_chef_shell.html"><em>chef-shell</em></a></li>
49
- <li><a class="reference internal" href="ctl_chef_solo.html"><em>chef-solo</em></a></li>
50
- <li><a class="reference internal" href="knife.html"><em>knife</em></a></li>
51
- </ul>
52
- <div class="section" id="knife">
53
- <h2>knife<a class="headerlink" href="#knife" title="Permalink to this headline">¶</a></h2>
54
- <p>knife is a command-line tool that provides an interface between a local chef-repo and the Chef server. knife helps users to manage:</p>
55
- <ul class="simple">
56
- <li>Nodes</li>
57
- <li>Cookbooks and recipes</li>
58
- <li>Roles</li>
59
- <li>Stores of JSON data (data bags), including encrypted data</li>
60
- <li>Environments</li>
61
- <li>Cloud resources, including provisioning</li>
62
- <li>The installation of the chef-client on management workstations</li>
63
- <li>Searching of indexed data on the Chef server</li>
64
- </ul>
65
- <p>The following sections describe functionality common to all knife subcommands:</p>
66
- <ul class="simple">
67
- <li><a class="reference internal" href="knife_using.html"><em>Working with Knife</em></a></li>
68
- <li><a class="reference internal" href="knife_common_options.html"><em>Common Options</em></a></li>
69
- </ul>
70
- <p>knife includes the following sub-commands:</p>
71
- <table border="1" class="docutils">
72
- <colgroup>
73
- <col width="25%" />
74
- <col width="75%" />
75
- </colgroup>
76
- <thead valign="bottom">
77
- <tr class="row-odd"><th class="head">Sub-command</th>
78
- <th class="head">Description</th>
79
- </tr>
80
- </thead>
81
- <tbody valign="top">
82
- <tr class="row-even"><td><a class="reference internal" href="knife_bootstrap.html"><em>knife bootstrap</em></a></td>
83
- <td>The <strong>knife bootstrap</strong> subcommand is used to run a bootstrap operation that installs the chef-client on the target system. The bootstrap operation must specify the IP address or FQDN of the target system.</td>
84
- </tr>
85
- <tr class="row-odd"><td><a class="reference internal" href="knife_client.html"><em>knife client</em></a></td>
86
- <td>The <strong>knife client</strong> subcommand is used to manage an API client list and their associated RSA public key-pairs. This allows authentication requests to be made to the Chef server by any entity that uses the Chef server API, such as the chef-client and knife.</td>
87
- </tr>
88
- <tr class="row-even"><td><a class="reference internal" href="knife_configure.html"><em>knife configure</em></a></td>
89
- <td>The <strong>knife configure</strong> subcommand is used to create the knife.rb and client.rb files so that they can be distributed to workstations and nodes.</td>
90
- </tr>
91
- <tr class="row-odd"><td><a class="reference internal" href="knife_cookbook.html"><em>knife cookbook</em></a></td>
92
- <td>The <strong>knife cookbook</strong> subcommand is used to interact with cookbooks that are located on the Chef server or the local chef-repo.</td>
93
- </tr>
94
- <tr class="row-even"><td><a class="reference internal" href="knife_cookbook_site.html"><em>knife cookbook site</em></a></td>
95
- <td>The <strong>knife cookbook site</strong> subcommand is used to interact with cookbooks that are located at <a class="reference external" href="https://supermarket.getchef.com/cookbooks">https://supermarket.getchef.com/cookbooks</a>. A user account is required for any community actions that write data to this site. The following arguments do not require a user account: <tt class="docutils literal"><span class="pre">download</span></tt>, <tt class="docutils literal"><span class="pre">search</span></tt>, <tt class="docutils literal"><span class="pre">install</span></tt>, and <tt class="docutils literal"><span class="pre">list</span></tt>.</td>
96
- </tr>
97
- <tr class="row-odd"><td><a class="reference internal" href="knife_data_bag.html"><em>knife data bag</em></a></td>
98
- <td>The <strong>knife data bag</strong> subcommand is used to manage arbitrary stores of globally available JSON data.</td>
99
- </tr>
100
- <tr class="row-even"><td><a class="reference internal" href="knife_delete.html"><em>knife delete</em></a></td>
101
- <td>The <strong>knife delete</strong> subcommand is used to delete an object from a Chef server. This subcommand works similar to <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">cookbook</span> <span class="pre">delete</span></tt>, <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">data</span> <span class="pre">bag</span> <span class="pre">delete</span></tt>, <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">environment</span> <span class="pre">delete</span></tt>, <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">node</span> <span class="pre">delete</span></tt>, and <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">role</span> <span class="pre">delete</span></tt>, but with a single verb (and a single action).</td>
102
- </tr>
103
- <tr class="row-odd"><td><a class="reference internal" href="knife_deps.html"><em>knife deps</em></a></td>
104
- <td>The <strong>knife deps</strong> subcommand is used to identify dependencies for a node, role, or cookbook.</td>
105
- </tr>
106
- <tr class="row-even"><td><a class="reference internal" href="knife_diff.html"><em>knife diff</em></a></td>
107
- <td>The <strong>knife diff</strong> subcommand is used to compare the differences between files and directories on the Chef server and in the chef-repo. For example, to compare files on the Chef server prior to an uploading or downloading files using the <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">download</span></tt> and <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">upload</span></tt> subcommands, or to ensure that certain files in multiple production environments are the same. This subcommand is similar to the <tt class="docutils literal"><span class="pre">git</span> <span class="pre">diff</span></tt> command that can be used to diff what is in the chef-repo with what is synced to a git repository.</td>
108
- </tr>
109
- <tr class="row-odd"><td><a class="reference internal" href="knife_download.html"><em>knife download</em></a></td>
110
- <td>The <strong>knife download</strong> subcommand is used to download roles, cookbooks, environments, nodes, and data bags from the Chef server to the current working directory. It can be used to back up data on the Chef server, inspect the state of one or more files, or to extract out-of-process changes users may have made to files on the Chef server, such as if a user made a change that bypassed version source control. This subcommand is often used in conjunction with <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">diff</span></tt>, which can be used to see exactly what changes will be downloaded, and then <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">upload</span></tt>, which does the opposite of <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">download</span></tt>.</td>
111
- </tr>
112
- <tr class="row-even"><td><a class="reference internal" href="knife_edit.html"><em>knife edit</em></a></td>
113
- <td>The <strong>knife edit</strong> subcommand is used to edit objects on the Chef server. This subcommand works similar to <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">cookbook</span> <span class="pre">edit</span></tt>, <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">data</span> <span class="pre">bag</span> <span class="pre">edit</span></tt>, <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">environment</span> <span class="pre">edit</span></tt>, <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">node</span> <span class="pre">edit</span></tt>, and <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">role</span> <span class="pre">edit</span></tt>, but with a single verb (and a single action).</td>
114
- </tr>
115
- <tr class="row-odd"><td><a class="reference internal" href="knife_environment.html"><em>knife environment</em></a></td>
116
- <td>The <strong>knife environment</strong> subcommand is used to manage environments within a single organization on the Chef server.</td>
117
- </tr>
118
- <tr class="row-even"><td><a class="reference internal" href="knife_exec.html"><em>knife exec</em></a></td>
119
- <td>The <strong>knife exec</strong> subcommand uses the knife configuration file to execute Ruby scripts in the context of a fully configured chef-client. This subcommand is most often used to run scripts that will only access Chef server one time (or otherwise very infrequently). Use this subcommand any time that an operation does not warrant full usage of the knife subcommand library.</td>
120
- </tr>
121
- <tr class="row-odd"><td><a class="reference internal" href="knife_index_rebuild.html"><em>knife index rebuild</em></a></td>
122
- <td>The <strong>knife index rebuild</strong> subcommand is used to rebuild the search indexes for the open source Chef server. This operation is destructive and may take some time.</td>
123
- </tr>
124
- <tr class="row-even"><td><a class="reference internal" href="knife_list.html"><em>knife list</em></a></td>
125
- <td>The <strong>knife list</strong> subcommand is used to view a list of objects on the Chef server. This subcommand works similar to <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">cookbook</span> <span class="pre">list</span></tt>, <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">data</span> <span class="pre">bag</span> <span class="pre">list</span></tt>, <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">environment</span> <span class="pre">list</span></tt>, <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">node</span> <span class="pre">list</span></tt>, and <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">role</span> <span class="pre">list</span></tt>, but with a single verb (and a single action).</td>
126
- </tr>
127
- <tr class="row-odd"><td><a class="reference internal" href="knife_node.html"><em>knife node</em></a></td>
128
- <td>The <strong>knife node</strong> subcommand is used to manage the nodes that exist on a Chef server.</td>
129
- </tr>
130
- <tr class="row-even"><td><a class="reference internal" href="knife_raw.html"><em>knife raw</em></a></td>
131
- <td>The <strong>knife raw</strong> subcommand is used to send a REST request to an endpoint in the Chef server API.</td>
132
- </tr>
133
- <tr class="row-odd"><td><a class="reference internal" href="knife_recipe_list.html"><em>knife recipe list</em></a></td>
134
- <td>The <strong>knife recipe list</strong> subcommand is used to view all of the recipes that are on a Chef server. A regular expression can be used to limit the results to recipes that match a specific pattern. The regular expression must be within quotes and not be surrounded by forward slashes (/).</td>
135
- </tr>
136
- <tr class="row-even"><td><a class="reference internal" href="knife_role.html"><em>knife role</em></a></td>
137
- <td>The <strong>knife role</strong> subcommand is used to manage the roles that are associated with one or more nodes on a Chef server.</td>
138
- </tr>
139
- <tr class="row-odd"><td><a class="reference internal" href="knife_search.html"><em>knife search</em></a></td>
140
- <td>The <strong>knife search</strong> subcommand is used run a search query for information that is indexed on a Chef server.</td>
141
- </tr>
142
- <tr class="row-even"><td><a class="reference internal" href="knife_serve.html"><em>knife serve</em></a></td>
143
- <td>The <strong>knife serve</strong> subcommand is used to run a persistent chef-zero against the local chef-repo. (chef-zero is a lightweight Chef server that runs in-memory on the local machine.) This is the same as running the chef-client executable with the <tt class="docutils literal"><span class="pre">--local-mode</span></tt> option. The <tt class="docutils literal"><span class="pre">chef_repo_path</span></tt> is located automatically and the Chef server will bind to the first available port between <tt class="docutils literal"><span class="pre">8889</span></tt> and <tt class="docutils literal"><span class="pre">9999</span></tt>. <strong>knife serve</strong> will print the URL for the local Chef server, so that it may be added to the knife.rb file.</td>
144
- </tr>
145
- <tr class="row-odd"><td><a class="reference internal" href="knife_show.html"><em>knife show</em></a></td>
146
- <td>The <strong>knife show</strong> subcommand is used to view the details of one (or more) objects on the Chef server. This subcommand works similar to <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">cookbook</span> <span class="pre">show</span></tt>, <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">data</span> <span class="pre">bag</span> <span class="pre">show</span></tt>, <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">environment</span> <span class="pre">show</span></tt>, <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">node</span> <span class="pre">show</span></tt>, and <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">role</span> <span class="pre">show</span></tt>, but with a single verb (and a single action).</td>
147
- </tr>
148
- <tr class="row-even"><td><a class="reference internal" href="knife_ssh.html"><em>knife ssh</em></a></td>
149
- <td>The <strong>knife ssh</strong> subcommand is used to invoke SSH commands (in parallel) on a subset of nodes within an organization, based on the results of a <a class="reference external" href="http://docs.opscode.com/essentials_search.html">search query</a> made to the Chef server.</td>
150
- </tr>
151
- <tr class="row-odd"><td><a class="reference internal" href="knife_ssl_check.html"><em>knife ssl check</em></a></td>
152
- <td><p class="first">The <strong>knife ssl check</strong> subcommand is used to verify the SSL configuration for the Enterprise Chef and/or Open Source Chef servers, or at another location specified by a URL or URI.</p>
153
- <div class="last admonition warning">
154
- <p class="first admonition-title">Warning</p>
155
- <p class="last">When verification of a remote server&#8217;s SSL certificate is disabled, the chef-client will issue a warning similar to &#8220;SSL validation of HTTPS requests is disabled. HTTPS connections are still encrypted, but the chef-client is not able to detect forged replies or man-in-the-middle attacks.&#8221; To configure SSL for the chef-client, set <tt class="docutils literal"><span class="pre">ssl_verify_mode</span></tt> to <tt class="docutils literal"><span class="pre">:verify_peer</span></tt> (recommended) <strong>or</strong> <tt class="docutils literal"><span class="pre">verify_api_cert</span></tt> to <tt class="docutils literal"><span class="pre">true</span></tt> in the client.rb file.</p>
156
- </div>
157
- </td>
158
- </tr>
159
- <tr class="row-even"><td><a class="reference internal" href="knife_ssl_fetch.html"><em>knife ssl fetch</em></a></td>
160
- <td><p class="first">The <strong>knife ssl fetch</strong> subcommand is used to copy SSL certificates from an HTTPS server to the <tt class="docutils literal"><span class="pre">trusted_certs_dir</span></tt> directory that is used by knife and the chef-client to store trusted SSL certificates. When these certificates match the hostname of the remote server, running <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">ssl</span> <span class="pre">fetch</span></tt> is the only step required to verify a remote server that is accessed by either knife or the chef-client.</p>
161
- <div class="last admonition warning">
162
- <p class="first admonition-title">Warning</p>
163
- <p class="last">It is the user&#8217;s responsibility to verify the authenticity of every SSL certificate before downloading it to the <tt class="docutils literal"><span class="pre">trusted_certs_dir</span></tt> directory. knife will use any certificate in that directory as if it is a 100% trusted and authentic SSL certificate. knife will not be able to determine if any certificate in this directory has been tampered with, is forged, malicious, or otherwise harmful. Therefore it is essential that users take the proper steps before downloading certificates into this directory.</p>
164
- </div>
165
- </td>
166
- </tr>
167
- <tr class="row-odd"><td><a class="reference internal" href="knife_status.html"><em>knife status</em></a></td>
168
- <td>The <strong>knife status</strong> subcommand is used to display a brief summary of the nodes on a Chef server, including the time of the most recent successful chef-client run.</td>
169
- </tr>
170
- <tr class="row-even"><td><a class="reference internal" href="knife_tag.html"><em>knife tag</em></a></td>
171
- <td>The <strong>knife tag</strong> subcommand is used to apply tags to nodes on a Chef server.</td>
172
- </tr>
173
- <tr class="row-odd"><td><a class="reference internal" href="knife_upload.html"><em>knife upload</em></a></td>
174
- <td>The <strong>knife upload</strong> subcommand is used to upload roles, cookbooks, environments, and data bags to the Chef server from the current working directory in the chef-repo. This subcommand is often used in conjunction with <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">diff</span></tt>, which can be used to see exactly what changes will be uploaded, and then <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">download</span></tt>, which does the opposite of <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">upload</span></tt>.</td>
175
- </tr>
176
- <tr class="row-even"><td><a class="reference internal" href="knife_user.html"><em>knife user</em></a></td>
177
- <td>The <strong>knife user</strong> subcommand is used to manage the list of users and their associated RSA public key-pairs.</td>
178
- </tr>
179
- <tr class="row-odd"><td><a class="reference internal" href="knife_xargs.html"><em>knife xargs</em></a></td>
180
- <td>The <strong>knife xargs</strong> subcommand is used to take patterns from standard input, download as JSON, run a command against the downloaded JSON, and then upload any changes.</td>
181
- </tr>
182
- </tbody>
183
- </table>
184
- <div class="toctree-wrapper compound">
185
- </div>
186
- </div>
187
- </div>
188
-
189
-
190
- </div>
191
-
192
- </div>
193
-
194
-
195
- <div class="clearer"></div>
196
- </div>
197
-
198
-
199
-
200
-
201
- </body>
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 Man Pages &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-man-pages">
43
+ <h1>chef-client Man Pages<a class="headerlink" href="#chef-client-man-pages" title="Permalink to this headline">¶</a></h1>
44
+ <p>The following command line interfaces are available in the chef-client:</p>
45
+ <ul class="simple">
46
+ <li><a class="reference internal" href="ctl_chef_client.html"><em>chef-client</em></a></li>
47
+ <li><a class="reference internal" href="ctl_chef_server.html"><em>chef-server-ctl (executable)</em></a></li>
48
+ <li><a class="reference internal" href="ctl_chef_shell.html"><em>chef-shell</em></a></li>
49
+ <li><a class="reference internal" href="ctl_chef_solo.html"><em>chef-solo</em></a></li>
50
+ <li><a class="reference internal" href="knife.html"><em>knife</em></a></li>
51
+ </ul>
52
+ <div class="section" id="knife">
53
+ <h2>knife<a class="headerlink" href="#knife" title="Permalink to this headline">¶</a></h2>
54
+ <p>knife is a command-line tool that provides an interface between a local chef-repo and the Chef server. knife helps users to manage:</p>
55
+ <ul class="simple">
56
+ <li>Nodes</li>
57
+ <li>Cookbooks and recipes</li>
58
+ <li>Roles</li>
59
+ <li>Stores of JSON data (data bags), including encrypted data</li>
60
+ <li>Environments</li>
61
+ <li>Cloud resources, including provisioning</li>
62
+ <li>The installation of the chef-client on management workstations</li>
63
+ <li>Searching of indexed data on the Chef server</li>
64
+ </ul>
65
+ <p>The following sections describe functionality common to all knife subcommands:</p>
66
+ <ul class="simple">
67
+ <li><a class="reference internal" href="knife_using.html"><em>Working with Knife</em></a></li>
68
+ <li><a class="reference internal" href="knife_common_options.html"><em>Common Options</em></a></li>
69
+ </ul>
70
+ <p>knife includes the following sub-commands:</p>
71
+ <table border="1" class="docutils">
72
+ <colgroup>
73
+ <col width="25%" />
74
+ <col width="75%" />
75
+ </colgroup>
76
+ <thead valign="bottom">
77
+ <tr class="row-odd"><th class="head">Sub-command</th>
78
+ <th class="head">Description</th>
79
+ </tr>
80
+ </thead>
81
+ <tbody valign="top">
82
+ <tr class="row-even"><td><a class="reference internal" href="knife_bootstrap.html"><em>knife bootstrap</em></a></td>
83
+ <td>The <strong>knife bootstrap</strong> subcommand is used to run a bootstrap operation that installs the chef-client on the target system. The bootstrap operation must specify the IP address or FQDN of the target system.</td>
84
+ </tr>
85
+ <tr class="row-odd"><td><a class="reference internal" href="knife_client.html"><em>knife client</em></a></td>
86
+ <td>The <strong>knife client</strong> subcommand is used to manage an API client list and their associated RSA public key-pairs. This allows authentication requests to be made to the Chef server by any entity that uses the Chef server API, such as the chef-client and knife.</td>
87
+ </tr>
88
+ <tr class="row-even"><td><a class="reference internal" href="knife_configure.html"><em>knife configure</em></a></td>
89
+ <td>The <strong>knife configure</strong> subcommand is used to create the knife.rb and client.rb files so that they can be distributed to workstations and nodes.</td>
90
+ </tr>
91
+ <tr class="row-odd"><td><a class="reference internal" href="knife_cookbook.html"><em>knife cookbook</em></a></td>
92
+ <td>The <strong>knife cookbook</strong> subcommand is used to interact with cookbooks that are located on the Chef server or the local chef-repo.</td>
93
+ </tr>
94
+ <tr class="row-even"><td><a class="reference internal" href="knife_cookbook_site.html"><em>knife cookbook site</em></a></td>
95
+ <td>The <strong>knife cookbook site</strong> subcommand is used to interact with cookbooks that are located at <a class="reference external" href="https://supermarket.getchef.com/cookbooks">https://supermarket.getchef.com/cookbooks</a>. A user account is required for any community actions that write data to this site. The following arguments do not require a user account: <tt class="docutils literal"><span class="pre">download</span></tt>, <tt class="docutils literal"><span class="pre">search</span></tt>, <tt class="docutils literal"><span class="pre">install</span></tt>, and <tt class="docutils literal"><span class="pre">list</span></tt>.</td>
96
+ </tr>
97
+ <tr class="row-odd"><td><a class="reference internal" href="knife_data_bag.html"><em>knife data bag</em></a></td>
98
+ <td>The <strong>knife data bag</strong> subcommand is used to manage arbitrary stores of globally available JSON data.</td>
99
+ </tr>
100
+ <tr class="row-even"><td><a class="reference internal" href="knife_delete.html"><em>knife delete</em></a></td>
101
+ <td>The <strong>knife delete</strong> subcommand is used to delete an object from a Chef server. This subcommand works similar to <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">cookbook</span> <span class="pre">delete</span></tt>, <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">data</span> <span class="pre">bag</span> <span class="pre">delete</span></tt>, <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">environment</span> <span class="pre">delete</span></tt>, <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">node</span> <span class="pre">delete</span></tt>, and <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">role</span> <span class="pre">delete</span></tt>, but with a single verb (and a single action).</td>
102
+ </tr>
103
+ <tr class="row-odd"><td><a class="reference internal" href="knife_deps.html"><em>knife deps</em></a></td>
104
+ <td>The <strong>knife deps</strong> subcommand is used to identify dependencies for a node, role, or cookbook.</td>
105
+ </tr>
106
+ <tr class="row-even"><td><a class="reference internal" href="knife_diff.html"><em>knife diff</em></a></td>
107
+ <td>The <strong>knife diff</strong> subcommand is used to compare the differences between files and directories on the Chef server and in the chef-repo. For example, to compare files on the Chef server prior to an uploading or downloading files using the <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">download</span></tt> and <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">upload</span></tt> subcommands, or to ensure that certain files in multiple production environments are the same. This subcommand is similar to the <tt class="docutils literal"><span class="pre">git</span> <span class="pre">diff</span></tt> command that can be used to diff what is in the chef-repo with what is synced to a git repository.</td>
108
+ </tr>
109
+ <tr class="row-odd"><td><a class="reference internal" href="knife_download.html"><em>knife download</em></a></td>
110
+ <td>The <strong>knife download</strong> subcommand is used to download roles, cookbooks, environments, nodes, and data bags from the Chef server to the current working directory. It can be used to back up data on the Chef server, inspect the state of one or more files, or to extract out-of-process changes users may have made to files on the Chef server, such as if a user made a change that bypassed version source control. This subcommand is often used in conjunction with <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">diff</span></tt>, which can be used to see exactly what changes will be downloaded, and then <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">upload</span></tt>, which does the opposite of <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">download</span></tt>.</td>
111
+ </tr>
112
+ <tr class="row-even"><td><a class="reference internal" href="knife_edit.html"><em>knife edit</em></a></td>
113
+ <td>The <strong>knife edit</strong> subcommand is used to edit objects on the Chef server. This subcommand works similar to <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">cookbook</span> <span class="pre">edit</span></tt>, <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">data</span> <span class="pre">bag</span> <span class="pre">edit</span></tt>, <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">environment</span> <span class="pre">edit</span></tt>, <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">node</span> <span class="pre">edit</span></tt>, and <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">role</span> <span class="pre">edit</span></tt>, but with a single verb (and a single action).</td>
114
+ </tr>
115
+ <tr class="row-odd"><td><a class="reference internal" href="knife_environment.html"><em>knife environment</em></a></td>
116
+ <td>The <strong>knife environment</strong> subcommand is used to manage environments within a single organization on the Chef server.</td>
117
+ </tr>
118
+ <tr class="row-even"><td><a class="reference internal" href="knife_exec.html"><em>knife exec</em></a></td>
119
+ <td>The <strong>knife exec</strong> subcommand uses the knife configuration file to execute Ruby scripts in the context of a fully configured chef-client. This subcommand is most often used to run scripts that will only access Chef server one time (or otherwise very infrequently). Use this subcommand any time that an operation does not warrant full usage of the knife subcommand library.</td>
120
+ </tr>
121
+ <tr class="row-odd"><td><a class="reference internal" href="knife_index_rebuild.html"><em>knife index rebuild</em></a></td>
122
+ <td>The <strong>knife index rebuild</strong> subcommand is used to rebuild the search indexes for the open source Chef server. This operation is destructive and may take some time.</td>
123
+ </tr>
124
+ <tr class="row-even"><td><a class="reference internal" href="knife_list.html"><em>knife list</em></a></td>
125
+ <td>The <strong>knife list</strong> subcommand is used to view a list of objects on the Chef server. This subcommand works similar to <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">cookbook</span> <span class="pre">list</span></tt>, <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">data</span> <span class="pre">bag</span> <span class="pre">list</span></tt>, <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">environment</span> <span class="pre">list</span></tt>, <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">node</span> <span class="pre">list</span></tt>, and <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">role</span> <span class="pre">list</span></tt>, but with a single verb (and a single action).</td>
126
+ </tr>
127
+ <tr class="row-odd"><td><a class="reference internal" href="knife_node.html"><em>knife node</em></a></td>
128
+ <td>The <strong>knife node</strong> subcommand is used to manage the nodes that exist on a Chef server.</td>
129
+ </tr>
130
+ <tr class="row-even"><td><a class="reference internal" href="knife_raw.html"><em>knife raw</em></a></td>
131
+ <td>The <strong>knife raw</strong> subcommand is used to send a REST request to an endpoint in the Chef server API.</td>
132
+ </tr>
133
+ <tr class="row-odd"><td><a class="reference internal" href="knife_recipe_list.html"><em>knife recipe list</em></a></td>
134
+ <td>The <strong>knife recipe list</strong> subcommand is used to view all of the recipes that are on a Chef server. A regular expression can be used to limit the results to recipes that match a specific pattern. The regular expression must be within quotes and not be surrounded by forward slashes (/).</td>
135
+ </tr>
136
+ <tr class="row-even"><td><a class="reference internal" href="knife_role.html"><em>knife role</em></a></td>
137
+ <td>The <strong>knife role</strong> subcommand is used to manage the roles that are associated with one or more nodes on a Chef server.</td>
138
+ </tr>
139
+ <tr class="row-odd"><td><a class="reference internal" href="knife_search.html"><em>knife search</em></a></td>
140
+ <td>The <strong>knife search</strong> subcommand is used run a search query for information that is indexed on a Chef server.</td>
141
+ </tr>
142
+ <tr class="row-even"><td><a class="reference internal" href="knife_serve.html"><em>knife serve</em></a></td>
143
+ <td>The <strong>knife serve</strong> subcommand is used to run a persistent chef-zero against the local chef-repo. (chef-zero is a lightweight Chef server that runs in-memory on the local machine.) This is the same as running the chef-client executable with the <tt class="docutils literal"><span class="pre">--local-mode</span></tt> option. The <tt class="docutils literal"><span class="pre">chef_repo_path</span></tt> is located automatically and the Chef server will bind to the first available port between <tt class="docutils literal"><span class="pre">8889</span></tt> and <tt class="docutils literal"><span class="pre">9999</span></tt>. <strong>knife serve</strong> will print the URL for the local Chef server, so that it may be added to the knife.rb file.</td>
144
+ </tr>
145
+ <tr class="row-odd"><td><a class="reference internal" href="knife_show.html"><em>knife show</em></a></td>
146
+ <td>The <strong>knife show</strong> subcommand is used to view the details of one (or more) objects on the Chef server. This subcommand works similar to <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">cookbook</span> <span class="pre">show</span></tt>, <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">data</span> <span class="pre">bag</span> <span class="pre">show</span></tt>, <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">environment</span> <span class="pre">show</span></tt>, <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">node</span> <span class="pre">show</span></tt>, and <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">role</span> <span class="pre">show</span></tt>, but with a single verb (and a single action).</td>
147
+ </tr>
148
+ <tr class="row-even"><td><a class="reference internal" href="knife_ssh.html"><em>knife ssh</em></a></td>
149
+ <td>The <strong>knife ssh</strong> subcommand is used to invoke SSH commands (in parallel) on a subset of nodes within an organization, based on the results of a <a class="reference external" href="http://docs.opscode.com/essentials_search.html">search query</a> made to the Chef server.</td>
150
+ </tr>
151
+ <tr class="row-odd"><td><a class="reference internal" href="knife_ssl_check.html"><em>knife ssl check</em></a></td>
152
+ <td><p class="first">The <strong>knife ssl check</strong> subcommand is used to verify the SSL configuration for the Enterprise Chef and/or Open Source Chef servers, or at another location specified by a URL or URI.</p>
153
+ <div class="last admonition warning">
154
+ <p class="first admonition-title">Warning</p>
155
+ <p class="last">When verification of a remote server&#8217;s SSL certificate is disabled, the chef-client will issue a warning similar to &#8220;SSL validation of HTTPS requests is disabled. HTTPS connections are still encrypted, but the chef-client is not able to detect forged replies or man-in-the-middle attacks.&#8221; To configure SSL for the chef-client, set <tt class="docutils literal"><span class="pre">ssl_verify_mode</span></tt> to <tt class="docutils literal"><span class="pre">:verify_peer</span></tt> (recommended) <strong>or</strong> <tt class="docutils literal"><span class="pre">verify_api_cert</span></tt> to <tt class="docutils literal"><span class="pre">true</span></tt> in the client.rb file.</p>
156
+ </div>
157
+ </td>
158
+ </tr>
159
+ <tr class="row-even"><td><a class="reference internal" href="knife_ssl_fetch.html"><em>knife ssl fetch</em></a></td>
160
+ <td><p class="first">The <strong>knife ssl fetch</strong> subcommand is used to copy SSL certificates from an HTTPS server to the <tt class="docutils literal"><span class="pre">trusted_certs_dir</span></tt> directory that is used by knife and the chef-client to store trusted SSL certificates. When these certificates match the hostname of the remote server, running <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">ssl</span> <span class="pre">fetch</span></tt> is the only step required to verify a remote server that is accessed by either knife or the chef-client.</p>
161
+ <div class="last admonition warning">
162
+ <p class="first admonition-title">Warning</p>
163
+ <p class="last">It is the user&#8217;s responsibility to verify the authenticity of every SSL certificate before downloading it to the <tt class="docutils literal"><span class="pre">trusted_certs_dir</span></tt> directory. knife will use any certificate in that directory as if it is a 100% trusted and authentic SSL certificate. knife will not be able to determine if any certificate in this directory has been tampered with, is forged, malicious, or otherwise harmful. Therefore it is essential that users take the proper steps before downloading certificates into this directory.</p>
164
+ </div>
165
+ </td>
166
+ </tr>
167
+ <tr class="row-odd"><td><a class="reference internal" href="knife_status.html"><em>knife status</em></a></td>
168
+ <td>The <strong>knife status</strong> subcommand is used to display a brief summary of the nodes on a Chef server, including the time of the most recent successful chef-client run.</td>
169
+ </tr>
170
+ <tr class="row-even"><td><a class="reference internal" href="knife_tag.html"><em>knife tag</em></a></td>
171
+ <td>The <strong>knife tag</strong> subcommand is used to apply tags to nodes on a Chef server.</td>
172
+ </tr>
173
+ <tr class="row-odd"><td><a class="reference internal" href="knife_upload.html"><em>knife upload</em></a></td>
174
+ <td>The <strong>knife upload</strong> subcommand is used to upload roles, cookbooks, environments, and data bags to the Chef server from the current working directory in the chef-repo. This subcommand is often used in conjunction with <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">diff</span></tt>, which can be used to see exactly what changes will be uploaded, and then <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">download</span></tt>, which does the opposite of <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">upload</span></tt>.</td>
175
+ </tr>
176
+ <tr class="row-even"><td><a class="reference internal" href="knife_user.html"><em>knife user</em></a></td>
177
+ <td>The <strong>knife user</strong> subcommand is used to manage the list of users and their associated RSA public key-pairs.</td>
178
+ </tr>
179
+ <tr class="row-odd"><td><a class="reference internal" href="knife_xargs.html"><em>knife xargs</em></a></td>
180
+ <td>The <strong>knife xargs</strong> subcommand is used to take patterns from standard input, download as JSON, run a command against the downloaded JSON, and then upload any changes.</td>
181
+ </tr>
182
+ </tbody>
183
+ </table>
184
+ <div class="toctree-wrapper compound">
185
+ </div>
186
+ </div>
187
+ </div>
188
+
189
+
190
+ </div>
191
+
192
+ </div>
193
+
194
+
195
+ <div class="clearer"></div>
196
+ </div>
197
+
198
+
199
+
200
+
201
+ </body>
202
202
  </html>
@@ -1,170 +1,170 @@
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>knife &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="knife">
43
- <h1>knife<a class="headerlink" href="#knife" title="Permalink to this headline">¶</a></h1>
44
- <p>knife is a command-line tool that provides an interface between a local chef-repo and the Chef server. knife helps users to manage:</p>
45
- <ul class="simple">
46
- <li>Nodes</li>
47
- <li>Cookbooks and recipes</li>
48
- <li>Roles</li>
49
- <li>Stores of JSON data (data bags), including encrypted data</li>
50
- <li>Environments</li>
51
- <li>Cloud resources, including provisioning</li>
52
- <li>The installation of the chef-client on management workstations</li>
53
- <li>Searching of indexed data on the Chef server</li>
54
- </ul>
55
- <p>The following sections describe functionality common to all knife subcommands:</p>
56
- <ul class="simple">
57
- <li><a class="reference internal" href="knife_using.html"><em>Working with Knife</em></a></li>
58
- <li><a class="reference internal" href="knife_common_options.html"><em>Common Options</em></a></li>
59
- </ul>
60
- <p>knife includes the following sub-commands:</p>
61
- <table border="1" class="docutils">
62
- <colgroup>
63
- <col width="25%" />
64
- <col width="75%" />
65
- </colgroup>
66
- <thead valign="bottom">
67
- <tr class="row-odd"><th class="head">Sub-command</th>
68
- <th class="head">Description</th>
69
- </tr>
70
- </thead>
71
- <tbody valign="top">
72
- <tr class="row-even"><td><a class="reference internal" href="knife_bootstrap.html"><em>knife bootstrap</em></a></td>
73
- <td>The <strong>knife bootstrap</strong> subcommand is used to run a bootstrap operation that installs the chef-client on the target system. The bootstrap operation must specify the IP address or FQDN of the target system.</td>
74
- </tr>
75
- <tr class="row-odd"><td><a class="reference internal" href="knife_client.html"><em>knife client</em></a></td>
76
- <td>The <strong>knife client</strong> subcommand is used to manage an API client list and their associated RSA public key-pairs. This allows authentication requests to be made to the Chef server by any entity that uses the Chef server API, such as the chef-client and knife.</td>
77
- </tr>
78
- <tr class="row-even"><td><a class="reference internal" href="knife_configure.html"><em>knife configure</em></a></td>
79
- <td>The <strong>knife configure</strong> subcommand is used to create the knife.rb and client.rb files so that they can be distributed to workstations and nodes.</td>
80
- </tr>
81
- <tr class="row-odd"><td><a class="reference internal" href="knife_cookbook.html"><em>knife cookbook</em></a></td>
82
- <td>The <strong>knife cookbook</strong> subcommand is used to interact with cookbooks that are located on the Chef server or the local chef-repo.</td>
83
- </tr>
84
- <tr class="row-even"><td><a class="reference internal" href="knife_cookbook_site.html"><em>knife cookbook site</em></a></td>
85
- <td>The <strong>knife cookbook site</strong> subcommand is used to interact with cookbooks that are located at <a class="reference external" href="https://supermarket.getchef.com/cookbooks">https://supermarket.getchef.com/cookbooks</a>. A user account is required for any community actions that write data to this site. The following arguments do not require a user account: <tt class="docutils literal"><span class="pre">download</span></tt>, <tt class="docutils literal"><span class="pre">search</span></tt>, <tt class="docutils literal"><span class="pre">install</span></tt>, and <tt class="docutils literal"><span class="pre">list</span></tt>.</td>
86
- </tr>
87
- <tr class="row-odd"><td><a class="reference internal" href="knife_data_bag.html"><em>knife data bag</em></a></td>
88
- <td>The <strong>knife data bag</strong> subcommand is used to manage arbitrary stores of globally available JSON data.</td>
89
- </tr>
90
- <tr class="row-even"><td><a class="reference internal" href="knife_delete.html"><em>knife delete</em></a></td>
91
- <td>The <strong>knife delete</strong> subcommand is used to delete an object from a Chef server. This subcommand works similar to <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">cookbook</span> <span class="pre">delete</span></tt>, <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">data</span> <span class="pre">bag</span> <span class="pre">delete</span></tt>, <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">environment</span> <span class="pre">delete</span></tt>, <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">node</span> <span class="pre">delete</span></tt>, and <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">role</span> <span class="pre">delete</span></tt>, but with a single verb (and a single action).</td>
92
- </tr>
93
- <tr class="row-odd"><td><a class="reference internal" href="knife_deps.html"><em>knife deps</em></a></td>
94
- <td>The <strong>knife deps</strong> subcommand is used to identify dependencies for a node, role, or cookbook.</td>
95
- </tr>
96
- <tr class="row-even"><td><a class="reference internal" href="knife_diff.html"><em>knife diff</em></a></td>
97
- <td>The <strong>knife diff</strong> subcommand is used to compare the differences between files and directories on the Chef server and in the chef-repo. For example, to compare files on the Chef server prior to an uploading or downloading files using the <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">download</span></tt> and <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">upload</span></tt> subcommands, or to ensure that certain files in multiple production environments are the same. This subcommand is similar to the <tt class="docutils literal"><span class="pre">git</span> <span class="pre">diff</span></tt> command that can be used to diff what is in the chef-repo with what is synced to a git repository.</td>
98
- </tr>
99
- <tr class="row-odd"><td><a class="reference internal" href="knife_download.html"><em>knife download</em></a></td>
100
- <td>The <strong>knife download</strong> subcommand is used to download roles, cookbooks, environments, nodes, and data bags from the Chef server to the current working directory. It can be used to back up data on the Chef server, inspect the state of one or more files, or to extract out-of-process changes users may have made to files on the Chef server, such as if a user made a change that bypassed version source control. This subcommand is often used in conjunction with <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">diff</span></tt>, which can be used to see exactly what changes will be downloaded, and then <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">upload</span></tt>, which does the opposite of <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">download</span></tt>.</td>
101
- </tr>
102
- <tr class="row-even"><td><a class="reference internal" href="knife_edit.html"><em>knife edit</em></a></td>
103
- <td>The <strong>knife edit</strong> subcommand is used to edit objects on the Chef server. This subcommand works similar to <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">cookbook</span> <span class="pre">edit</span></tt>, <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">data</span> <span class="pre">bag</span> <span class="pre">edit</span></tt>, <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">environment</span> <span class="pre">edit</span></tt>, <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">node</span> <span class="pre">edit</span></tt>, and <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">role</span> <span class="pre">edit</span></tt>, but with a single verb (and a single action).</td>
104
- </tr>
105
- <tr class="row-odd"><td><a class="reference internal" href="knife_environment.html"><em>knife environment</em></a></td>
106
- <td>The <strong>knife environment</strong> subcommand is used to manage environments within a single organization on the Chef server.</td>
107
- </tr>
108
- <tr class="row-even"><td><a class="reference internal" href="knife_exec.html"><em>knife exec</em></a></td>
109
- <td>The <strong>knife exec</strong> subcommand uses the knife configuration file to execute Ruby scripts in the context of a fully configured chef-client. This subcommand is most often used to run scripts that will only access Chef server one time (or otherwise very infrequently). Use this subcommand any time that an operation does not warrant full usage of the knife subcommand library.</td>
110
- </tr>
111
- <tr class="row-odd"><td><a class="reference internal" href="knife_index_rebuild.html"><em>knife index rebuild</em></a></td>
112
- <td>The <strong>knife index rebuild</strong> subcommand is used to rebuild the search indexes for the open source Chef server. This operation is destructive and may take some time.</td>
113
- </tr>
114
- <tr class="row-even"><td><a class="reference internal" href="knife_list.html"><em>knife list</em></a></td>
115
- <td>The <strong>knife list</strong> subcommand is used to view a list of objects on the Chef server. This subcommand works similar to <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">cookbook</span> <span class="pre">list</span></tt>, <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">data</span> <span class="pre">bag</span> <span class="pre">list</span></tt>, <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">environment</span> <span class="pre">list</span></tt>, <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">node</span> <span class="pre">list</span></tt>, and <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">role</span> <span class="pre">list</span></tt>, but with a single verb (and a single action).</td>
116
- </tr>
117
- <tr class="row-odd"><td><a class="reference internal" href="knife_node.html"><em>knife node</em></a></td>
118
- <td>The <strong>knife node</strong> subcommand is used to manage the nodes that exist on a Chef server.</td>
119
- </tr>
120
- <tr class="row-even"><td><a class="reference internal" href="knife_raw.html"><em>knife raw</em></a></td>
121
- <td>The <strong>knife raw</strong> subcommand is used to send a REST request to an endpoint in the Chef server API.</td>
122
- </tr>
123
- <tr class="row-odd"><td><a class="reference internal" href="knife_recipe_list.html"><em>knife recipe list</em></a></td>
124
- <td>The <strong>knife recipe list</strong> subcommand is used to view all of the recipes that are on a Chef server. A regular expression can be used to limit the results to recipes that match a specific pattern. The regular expression must be within quotes and not be surrounded by forward slashes (/).</td>
125
- </tr>
126
- <tr class="row-even"><td><a class="reference internal" href="knife_role.html"><em>knife role</em></a></td>
127
- <td>The <strong>knife role</strong> subcommand is used to manage the roles that are associated with one or more nodes on a Chef server.</td>
128
- </tr>
129
- <tr class="row-odd"><td><a class="reference internal" href="knife_search.html"><em>knife search</em></a></td>
130
- <td>The <strong>knife search</strong> subcommand is used run a search query for information that is indexed on a Chef server.</td>
131
- </tr>
132
- <tr class="row-even"><td><a class="reference internal" href="knife_show.html"><em>knife show</em></a></td>
133
- <td>The <strong>knife show</strong> subcommand is used to view the details of one (or more) objects on the Chef server. This subcommand works similar to <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">cookbook</span> <span class="pre">show</span></tt>, <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">data</span> <span class="pre">bag</span> <span class="pre">show</span></tt>, <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">environment</span> <span class="pre">show</span></tt>, <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">node</span> <span class="pre">show</span></tt>, and <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">role</span> <span class="pre">show</span></tt>, but with a single verb (and a single action).</td>
134
- </tr>
135
- <tr class="row-odd"><td><a class="reference internal" href="knife_ssh.html"><em>knife ssh</em></a></td>
136
- <td>The <strong>knife ssh</strong> subcommand is used to invoke SSH commands (in parallel) on a subset of nodes within an organization, based on the results of a <a class="reference external" href="http://docs.opscode.com/essentials_search.html">search query</a> made to the Chef server.</td>
137
- </tr>
138
- <tr class="row-even"><td><a class="reference internal" href="knife_status.html"><em>knife status</em></a></td>
139
- <td>The <strong>knife status</strong> subcommand is used to display a brief summary of the nodes on a Chef server, including the time of the most recent successful chef-client run.</td>
140
- </tr>
141
- <tr class="row-odd"><td><a class="reference internal" href="knife_tag.html"><em>knife tag</em></a></td>
142
- <td>The <strong>knife tag</strong> subcommand is used to apply tags to nodes on a Chef server.</td>
143
- </tr>
144
- <tr class="row-even"><td><a class="reference internal" href="knife_upload.html"><em>knife upload</em></a></td>
145
- <td>The <strong>knife upload</strong> subcommand is used to upload roles, cookbooks, environments, and data bags to the Chef server from the current working directory in the chef-repo. This subcommand is often used in conjunction with <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">diff</span></tt>, which can be used to see exactly what changes will be uploaded, and then <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">download</span></tt>, which does the opposite of <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">upload</span></tt>.</td>
146
- </tr>
147
- <tr class="row-odd"><td><a class="reference internal" href="knife_user.html"><em>knife user</em></a></td>
148
- <td>The <strong>knife user</strong> subcommand is used to manage the list of users and their associated RSA public key-pairs.</td>
149
- </tr>
150
- <tr class="row-even"><td><a class="reference internal" href="knife_xargs.html"><em>knife xargs</em></a></td>
151
- <td>The <strong>knife xargs</strong> subcommand is used to take patterns from standard input, download as JSON, run a command against the downloaded JSON, and then upload any changes.</td>
152
- </tr>
153
- </tbody>
154
- </table>
155
- </div>
156
-
157
-
158
- </div>
159
-
160
- </div>
161
-
162
-
163
- <div class="clearer"></div>
164
- </div>
165
-
166
-
167
-
168
-
169
- </body>
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>knife &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="knife">
43
+ <h1>knife<a class="headerlink" href="#knife" title="Permalink to this headline">¶</a></h1>
44
+ <p>knife is a command-line tool that provides an interface between a local chef-repo and the Chef server. knife helps users to manage:</p>
45
+ <ul class="simple">
46
+ <li>Nodes</li>
47
+ <li>Cookbooks and recipes</li>
48
+ <li>Roles</li>
49
+ <li>Stores of JSON data (data bags), including encrypted data</li>
50
+ <li>Environments</li>
51
+ <li>Cloud resources, including provisioning</li>
52
+ <li>The installation of the chef-client on management workstations</li>
53
+ <li>Searching of indexed data on the Chef server</li>
54
+ </ul>
55
+ <p>The following sections describe functionality common to all knife subcommands:</p>
56
+ <ul class="simple">
57
+ <li><a class="reference internal" href="knife_using.html"><em>Working with Knife</em></a></li>
58
+ <li><a class="reference internal" href="knife_common_options.html"><em>Common Options</em></a></li>
59
+ </ul>
60
+ <p>knife includes the following sub-commands:</p>
61
+ <table border="1" class="docutils">
62
+ <colgroup>
63
+ <col width="25%" />
64
+ <col width="75%" />
65
+ </colgroup>
66
+ <thead valign="bottom">
67
+ <tr class="row-odd"><th class="head">Sub-command</th>
68
+ <th class="head">Description</th>
69
+ </tr>
70
+ </thead>
71
+ <tbody valign="top">
72
+ <tr class="row-even"><td><a class="reference internal" href="knife_bootstrap.html"><em>knife bootstrap</em></a></td>
73
+ <td>The <strong>knife bootstrap</strong> subcommand is used to run a bootstrap operation that installs the chef-client on the target system. The bootstrap operation must specify the IP address or FQDN of the target system.</td>
74
+ </tr>
75
+ <tr class="row-odd"><td><a class="reference internal" href="knife_client.html"><em>knife client</em></a></td>
76
+ <td>The <strong>knife client</strong> subcommand is used to manage an API client list and their associated RSA public key-pairs. This allows authentication requests to be made to the Chef server by any entity that uses the Chef server API, such as the chef-client and knife.</td>
77
+ </tr>
78
+ <tr class="row-even"><td><a class="reference internal" href="knife_configure.html"><em>knife configure</em></a></td>
79
+ <td>The <strong>knife configure</strong> subcommand is used to create the knife.rb and client.rb files so that they can be distributed to workstations and nodes.</td>
80
+ </tr>
81
+ <tr class="row-odd"><td><a class="reference internal" href="knife_cookbook.html"><em>knife cookbook</em></a></td>
82
+ <td>The <strong>knife cookbook</strong> subcommand is used to interact with cookbooks that are located on the Chef server or the local chef-repo.</td>
83
+ </tr>
84
+ <tr class="row-even"><td><a class="reference internal" href="knife_cookbook_site.html"><em>knife cookbook site</em></a></td>
85
+ <td>The <strong>knife cookbook site</strong> subcommand is used to interact with cookbooks that are located at <a class="reference external" href="https://supermarket.getchef.com/cookbooks">https://supermarket.getchef.com/cookbooks</a>. A user account is required for any community actions that write data to this site. The following arguments do not require a user account: <tt class="docutils literal"><span class="pre">download</span></tt>, <tt class="docutils literal"><span class="pre">search</span></tt>, <tt class="docutils literal"><span class="pre">install</span></tt>, and <tt class="docutils literal"><span class="pre">list</span></tt>.</td>
86
+ </tr>
87
+ <tr class="row-odd"><td><a class="reference internal" href="knife_data_bag.html"><em>knife data bag</em></a></td>
88
+ <td>The <strong>knife data bag</strong> subcommand is used to manage arbitrary stores of globally available JSON data.</td>
89
+ </tr>
90
+ <tr class="row-even"><td><a class="reference internal" href="knife_delete.html"><em>knife delete</em></a></td>
91
+ <td>The <strong>knife delete</strong> subcommand is used to delete an object from a Chef server. This subcommand works similar to <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">cookbook</span> <span class="pre">delete</span></tt>, <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">data</span> <span class="pre">bag</span> <span class="pre">delete</span></tt>, <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">environment</span> <span class="pre">delete</span></tt>, <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">node</span> <span class="pre">delete</span></tt>, and <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">role</span> <span class="pre">delete</span></tt>, but with a single verb (and a single action).</td>
92
+ </tr>
93
+ <tr class="row-odd"><td><a class="reference internal" href="knife_deps.html"><em>knife deps</em></a></td>
94
+ <td>The <strong>knife deps</strong> subcommand is used to identify dependencies for a node, role, or cookbook.</td>
95
+ </tr>
96
+ <tr class="row-even"><td><a class="reference internal" href="knife_diff.html"><em>knife diff</em></a></td>
97
+ <td>The <strong>knife diff</strong> subcommand is used to compare the differences between files and directories on the Chef server and in the chef-repo. For example, to compare files on the Chef server prior to an uploading or downloading files using the <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">download</span></tt> and <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">upload</span></tt> subcommands, or to ensure that certain files in multiple production environments are the same. This subcommand is similar to the <tt class="docutils literal"><span class="pre">git</span> <span class="pre">diff</span></tt> command that can be used to diff what is in the chef-repo with what is synced to a git repository.</td>
98
+ </tr>
99
+ <tr class="row-odd"><td><a class="reference internal" href="knife_download.html"><em>knife download</em></a></td>
100
+ <td>The <strong>knife download</strong> subcommand is used to download roles, cookbooks, environments, nodes, and data bags from the Chef server to the current working directory. It can be used to back up data on the Chef server, inspect the state of one or more files, or to extract out-of-process changes users may have made to files on the Chef server, such as if a user made a change that bypassed version source control. This subcommand is often used in conjunction with <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">diff</span></tt>, which can be used to see exactly what changes will be downloaded, and then <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">upload</span></tt>, which does the opposite of <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">download</span></tt>.</td>
101
+ </tr>
102
+ <tr class="row-even"><td><a class="reference internal" href="knife_edit.html"><em>knife edit</em></a></td>
103
+ <td>The <strong>knife edit</strong> subcommand is used to edit objects on the Chef server. This subcommand works similar to <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">cookbook</span> <span class="pre">edit</span></tt>, <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">data</span> <span class="pre">bag</span> <span class="pre">edit</span></tt>, <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">environment</span> <span class="pre">edit</span></tt>, <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">node</span> <span class="pre">edit</span></tt>, and <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">role</span> <span class="pre">edit</span></tt>, but with a single verb (and a single action).</td>
104
+ </tr>
105
+ <tr class="row-odd"><td><a class="reference internal" href="knife_environment.html"><em>knife environment</em></a></td>
106
+ <td>The <strong>knife environment</strong> subcommand is used to manage environments within a single organization on the Chef server.</td>
107
+ </tr>
108
+ <tr class="row-even"><td><a class="reference internal" href="knife_exec.html"><em>knife exec</em></a></td>
109
+ <td>The <strong>knife exec</strong> subcommand uses the knife configuration file to execute Ruby scripts in the context of a fully configured chef-client. This subcommand is most often used to run scripts that will only access Chef server one time (or otherwise very infrequently). Use this subcommand any time that an operation does not warrant full usage of the knife subcommand library.</td>
110
+ </tr>
111
+ <tr class="row-odd"><td><a class="reference internal" href="knife_index_rebuild.html"><em>knife index rebuild</em></a></td>
112
+ <td>The <strong>knife index rebuild</strong> subcommand is used to rebuild the search indexes for the open source Chef server. This operation is destructive and may take some time.</td>
113
+ </tr>
114
+ <tr class="row-even"><td><a class="reference internal" href="knife_list.html"><em>knife list</em></a></td>
115
+ <td>The <strong>knife list</strong> subcommand is used to view a list of objects on the Chef server. This subcommand works similar to <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">cookbook</span> <span class="pre">list</span></tt>, <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">data</span> <span class="pre">bag</span> <span class="pre">list</span></tt>, <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">environment</span> <span class="pre">list</span></tt>, <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">node</span> <span class="pre">list</span></tt>, and <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">role</span> <span class="pre">list</span></tt>, but with a single verb (and a single action).</td>
116
+ </tr>
117
+ <tr class="row-odd"><td><a class="reference internal" href="knife_node.html"><em>knife node</em></a></td>
118
+ <td>The <strong>knife node</strong> subcommand is used to manage the nodes that exist on a Chef server.</td>
119
+ </tr>
120
+ <tr class="row-even"><td><a class="reference internal" href="knife_raw.html"><em>knife raw</em></a></td>
121
+ <td>The <strong>knife raw</strong> subcommand is used to send a REST request to an endpoint in the Chef server API.</td>
122
+ </tr>
123
+ <tr class="row-odd"><td><a class="reference internal" href="knife_recipe_list.html"><em>knife recipe list</em></a></td>
124
+ <td>The <strong>knife recipe list</strong> subcommand is used to view all of the recipes that are on a Chef server. A regular expression can be used to limit the results to recipes that match a specific pattern. The regular expression must be within quotes and not be surrounded by forward slashes (/).</td>
125
+ </tr>
126
+ <tr class="row-even"><td><a class="reference internal" href="knife_role.html"><em>knife role</em></a></td>
127
+ <td>The <strong>knife role</strong> subcommand is used to manage the roles that are associated with one or more nodes on a Chef server.</td>
128
+ </tr>
129
+ <tr class="row-odd"><td><a class="reference internal" href="knife_search.html"><em>knife search</em></a></td>
130
+ <td>The <strong>knife search</strong> subcommand is used run a search query for information that is indexed on a Chef server.</td>
131
+ </tr>
132
+ <tr class="row-even"><td><a class="reference internal" href="knife_show.html"><em>knife show</em></a></td>
133
+ <td>The <strong>knife show</strong> subcommand is used to view the details of one (or more) objects on the Chef server. This subcommand works similar to <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">cookbook</span> <span class="pre">show</span></tt>, <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">data</span> <span class="pre">bag</span> <span class="pre">show</span></tt>, <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">environment</span> <span class="pre">show</span></tt>, <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">node</span> <span class="pre">show</span></tt>, and <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">role</span> <span class="pre">show</span></tt>, but with a single verb (and a single action).</td>
134
+ </tr>
135
+ <tr class="row-odd"><td><a class="reference internal" href="knife_ssh.html"><em>knife ssh</em></a></td>
136
+ <td>The <strong>knife ssh</strong> subcommand is used to invoke SSH commands (in parallel) on a subset of nodes within an organization, based on the results of a <a class="reference external" href="http://docs.opscode.com/essentials_search.html">search query</a> made to the Chef server.</td>
137
+ </tr>
138
+ <tr class="row-even"><td><a class="reference internal" href="knife_status.html"><em>knife status</em></a></td>
139
+ <td>The <strong>knife status</strong> subcommand is used to display a brief summary of the nodes on a Chef server, including the time of the most recent successful chef-client run.</td>
140
+ </tr>
141
+ <tr class="row-odd"><td><a class="reference internal" href="knife_tag.html"><em>knife tag</em></a></td>
142
+ <td>The <strong>knife tag</strong> subcommand is used to apply tags to nodes on a Chef server.</td>
143
+ </tr>
144
+ <tr class="row-even"><td><a class="reference internal" href="knife_upload.html"><em>knife upload</em></a></td>
145
+ <td>The <strong>knife upload</strong> subcommand is used to upload roles, cookbooks, environments, and data bags to the Chef server from the current working directory in the chef-repo. This subcommand is often used in conjunction with <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">diff</span></tt>, which can be used to see exactly what changes will be uploaded, and then <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">download</span></tt>, which does the opposite of <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">upload</span></tt>.</td>
146
+ </tr>
147
+ <tr class="row-odd"><td><a class="reference internal" href="knife_user.html"><em>knife user</em></a></td>
148
+ <td>The <strong>knife user</strong> subcommand is used to manage the list of users and their associated RSA public key-pairs.</td>
149
+ </tr>
150
+ <tr class="row-even"><td><a class="reference internal" href="knife_xargs.html"><em>knife xargs</em></a></td>
151
+ <td>The <strong>knife xargs</strong> subcommand is used to take patterns from standard input, download as JSON, run a command against the downloaded JSON, and then upload any changes.</td>
152
+ </tr>
153
+ </tbody>
154
+ </table>
155
+ </div>
156
+
157
+
158
+ </div>
159
+
160
+ </div>
161
+
162
+
163
+ <div class="clearer"></div>
164
+ </div>
165
+
166
+
167
+
168
+
169
+ </body>
170
170
  </html>