chef 12.10.24 → 12.11.18

Sign up to get free protection for your applications and to get access to all the features.
Files changed (523) hide show
  1. checksums.yaml +4 -4
  2. data/CONTRIBUTING.md +3 -38
  3. data/Gemfile +6 -11
  4. data/LICENSE +201 -201
  5. data/README.md +11 -1
  6. data/VERSION +1 -1
  7. data/acceptance/.bundle/config +2 -0
  8. data/acceptance/Gemfile.lock +27 -26
  9. data/acceptance/basics/.kitchen/logs/chef-current-install-ubuntu-1404.log +2 -0
  10. data/acceptance/basics/.kitchen/logs/kitchen.log +3 -0
  11. data/acceptance/data-collector/.acceptance/acceptance-cookbook/.gitignore +2 -0
  12. data/acceptance/data-collector/.acceptance/acceptance-cookbook/metadata.rb +3 -0
  13. data/acceptance/data-collector/.acceptance/acceptance-cookbook/recipes/destroy.rb +2 -0
  14. data/acceptance/data-collector/.acceptance/acceptance-cookbook/recipes/provision.rb +2 -0
  15. data/acceptance/data-collector/.acceptance/acceptance-cookbook/recipes/verify.rb +2 -0
  16. data/acceptance/data-collector/.acceptance/data-collector-test/.gitignore +16 -0
  17. data/acceptance/data-collector/.acceptance/data-collector-test/Berksfile +3 -0
  18. data/acceptance/data-collector/.acceptance/data-collector-test/files/default/api.rb +85 -0
  19. data/acceptance/data-collector/.acceptance/data-collector-test/files/default/apigemfile +3 -0
  20. data/acceptance/data-collector/.acceptance/data-collector-test/files/default/client-rb-both-mode.rb +4 -0
  21. data/acceptance/data-collector/.acceptance/data-collector-test/files/default/client-rb-client-mode.rb +4 -0
  22. data/acceptance/data-collector/.acceptance/data-collector-test/files/default/client-rb-no-endpoint.rb +2 -0
  23. data/acceptance/data-collector/.acceptance/data-collector-test/files/default/client-rb-solo-mode.rb +4 -0
  24. data/acceptance/data-collector/.acceptance/data-collector-test/files/default/config.ru +2 -0
  25. data/acceptance/data-collector/.acceptance/data-collector-test/metadata.rb +7 -0
  26. data/acceptance/data-collector/.acceptance/data-collector-test/recipes/default.rb +38 -0
  27. data/acceptance/data-collector/.kitchen.yml +9 -0
  28. data/acceptance/data-collector/Berksfile +3 -0
  29. data/acceptance/data-collector/Berksfile.lock +6 -0
  30. data/acceptance/data-collector/test/integration/default/serverspec/default_spec.rb +251 -0
  31. data/acceptance/fips/.kitchen/logs/fips-integration-centos-6.log +3 -0
  32. data/acceptance/fips/.kitchen/logs/fips-integration-windows-2012r2.log +3 -0
  33. data/acceptance/fips/.kitchen/logs/fips-unit-functional-centos-6.log +3 -0
  34. data/acceptance/fips/.kitchen/logs/fips-unit-functional-windows-2012r2.log +3 -0
  35. data/acceptance/fips/.kitchen/logs/kitchen.log +6 -0
  36. data/acceptance/fips/test/integration/fips-integration/serverspec/fips-integration_spec.rb +2 -1
  37. data/acceptance/top-cookbooks/.kitchen.docker.yml +1 -4
  38. data/acceptance/trivial/.kitchen/logs/chef-current-install-windows-2012r2.log +2 -0
  39. data/acceptance/trivial/.kitchen/logs/kitchen.log +3 -0
  40. data/acceptance/windows-service/.kitchen/logs/chef-windows-service-windows-2012r2.log +2 -0
  41. data/acceptance/windows-service/.kitchen/logs/kitchen.log +3 -0
  42. data/bin/chef-apply +0 -0
  43. data/bin/chef-client +0 -0
  44. data/bin/chef-shell +0 -0
  45. data/bin/chef-solo +0 -0
  46. data/bin/knife +0 -0
  47. data/chef.gemspec +1 -0
  48. data/distro/common/html/_sources/ctl_chef_client.txt +35 -35
  49. data/distro/common/html/_sources/ctl_chef_server.txt +341 -341
  50. data/distro/common/html/_sources/ctl_chef_shell.txt +15 -15
  51. data/distro/common/html/_sources/ctl_chef_solo.txt +25 -25
  52. data/distro/common/html/_sources/index.txt +135 -135
  53. data/distro/common/html/_sources/knife.txt +74 -74
  54. data/distro/common/html/_sources/knife_bootstrap.txt +56 -56
  55. data/distro/common/html/_sources/knife_client.txt +150 -150
  56. data/distro/common/html/_sources/knife_common_options.txt +6 -6
  57. data/distro/common/html/_sources/knife_configure.txt +29 -29
  58. data/distro/common/html/_sources/knife_cookbook.txt +236 -236
  59. data/distro/common/html/_sources/knife_cookbook_site.txt +157 -157
  60. data/distro/common/html/_sources/knife_data_bag.txt +159 -159
  61. data/distro/common/html/_sources/knife_delete.txt +26 -26
  62. data/distro/common/html/_sources/knife_deps.txt +61 -61
  63. data/distro/common/html/_sources/knife_diff.txt +34 -34
  64. data/distro/common/html/_sources/knife_download.txt +44 -44
  65. data/distro/common/html/_sources/knife_edit.txt +26 -26
  66. data/distro/common/html/_sources/knife_environment.txt +158 -158
  67. data/distro/common/html/_sources/knife_exec.txt +47 -47
  68. data/distro/common/html/_sources/knife_index_rebuild.txt +20 -20
  69. data/distro/common/html/_sources/knife_list.txt +33 -33
  70. data/distro/common/html/_sources/knife_node.txt +250 -250
  71. data/distro/common/html/_sources/knife_raw.txt +35 -35
  72. data/distro/common/html/_sources/knife_recipe_list.txt +23 -23
  73. data/distro/common/html/_sources/knife_role.txt +157 -157
  74. data/distro/common/html/_sources/knife_search.txt +53 -53
  75. data/distro/common/html/_sources/knife_serve.txt +18 -18
  76. data/distro/common/html/_sources/knife_show.txt +26 -26
  77. data/distro/common/html/_sources/knife_ssh.txt +43 -43
  78. data/distro/common/html/_sources/knife_ssl_check.txt +41 -41
  79. data/distro/common/html/_sources/knife_ssl_fetch.txt +41 -41
  80. data/distro/common/html/_sources/knife_status.txt +37 -37
  81. data/distro/common/html/_sources/knife_tag.txt +69 -69
  82. data/distro/common/html/_sources/knife_upload.txt +49 -49
  83. data/distro/common/html/_sources/knife_user.txt +127 -127
  84. data/distro/common/html/_sources/knife_using.txt +43 -43
  85. data/distro/common/html/_sources/knife_xargs.txt +30 -30
  86. data/distro/common/html/_static/guide.css +504 -504
  87. data/distro/common/html/_static/pygments.css +61 -61
  88. data/distro/common/html/_static/underscore.js +31 -31
  89. data/distro/common/html/ctl_chef_client.html +269 -269
  90. data/distro/common/html/ctl_chef_server.html +727 -727
  91. data/distro/common/html/ctl_chef_shell.html +162 -162
  92. data/distro/common/html/ctl_chef_solo.html +193 -193
  93. data/distro/common/html/index.html +201 -201
  94. data/distro/common/html/knife.html +169 -169
  95. data/distro/common/html/knife_bootstrap.html +284 -284
  96. data/distro/common/html/knife_client.html +284 -284
  97. data/distro/common/html/knife_common_options.html +95 -95
  98. data/distro/common/html/knife_configure.html +104 -104
  99. data/distro/common/html/knife_cookbook.html +486 -486
  100. data/distro/common/html/knife_data_bag.html +373 -373
  101. data/distro/common/html/knife_delete.html +92 -92
  102. data/distro/common/html/knife_deps.html +142 -142
  103. data/distro/common/html/knife_diff.html +122 -122
  104. data/distro/common/html/knife_download.html +144 -144
  105. data/distro/common/html/knife_edit.html +88 -88
  106. data/distro/common/html/knife_environment.html +325 -325
  107. data/distro/common/html/knife_exec.html +219 -219
  108. data/distro/common/html/knife_index_rebuild.html +82 -82
  109. data/distro/common/html/knife_list.html +113 -113
  110. data/distro/common/html/knife_node.html +457 -457
  111. data/distro/common/html/knife_raw.html +109 -109
  112. data/distro/common/html/knife_recipe_list.html +90 -90
  113. data/distro/common/html/knife_role.html +294 -294
  114. data/distro/common/html/knife_search.html +202 -202
  115. data/distro/common/html/knife_serve.html +78 -78
  116. data/distro/common/html/knife_show.html +103 -103
  117. data/distro/common/html/knife_ssh.html +176 -176
  118. data/distro/common/html/knife_ssl_check.html +150 -150
  119. data/distro/common/html/knife_ssl_fetch.html +150 -150
  120. data/distro/common/html/knife_status.html +143 -143
  121. data/distro/common/html/knife_tag.html +137 -137
  122. data/distro/common/html/knife_upload.html +152 -152
  123. data/distro/common/html/knife_user.html +241 -241
  124. data/distro/common/html/knife_using.html +209 -209
  125. data/distro/common/html/knife_xargs.html +121 -121
  126. data/distro/common/html/search.html +81 -81
  127. data/distro/common/man/man1/README.md +58 -58
  128. data/distro/common/man/man1/chef-shell.1 +194 -194
  129. data/distro/common/man/man1/knife-bootstrap.1 +215 -215
  130. data/distro/common/man/man1/knife-client.1 +443 -443
  131. data/distro/common/man/man1/knife-configure.1 +161 -161
  132. data/distro/common/man/man1/knife-cookbook.1 +770 -770
  133. data/distro/common/man/man1/knife-data-bag.1 +617 -617
  134. data/distro/common/man/man1/knife-delete.1 +127 -127
  135. data/distro/common/man/man1/knife-deps.1 +246 -246
  136. data/distro/common/man/man1/knife-diff.1 +226 -226
  137. data/distro/common/man/man1/knife-download.1 +258 -258
  138. data/distro/common/man/man1/knife-edit.1 +121 -121
  139. data/distro/common/man/man1/knife-environment.1 +508 -508
  140. data/distro/common/man/man1/knife-exec.1 +362 -362
  141. data/distro/common/man/man1/knife-index-rebuild.1 +63 -63
  142. data/distro/common/man/man1/knife-list.1 +174 -174
  143. data/distro/common/man/man1/knife-node.1 +716 -716
  144. data/distro/common/man/man1/knife-raw.1 +172 -172
  145. data/distro/common/man/man1/knife-recipe-list.1 +85 -85
  146. data/distro/common/man/man1/knife-role.1 +426 -426
  147. data/distro/common/man/man1/knife-search.1 +359 -359
  148. data/distro/common/man/man1/knife-serve.1 +109 -109
  149. data/distro/common/man/man1/knife-show.1 +160 -160
  150. data/distro/common/man/man1/knife-ssh.1 +284 -284
  151. data/distro/common/man/man1/knife-ssl-check.1 +207 -207
  152. data/distro/common/man/man1/knife-ssl-fetch.1 +207 -207
  153. data/distro/common/man/man1/knife-status.1 +234 -234
  154. data/distro/common/man/man1/knife-tag.1 +189 -189
  155. data/distro/common/man/man1/knife-upload.1 +280 -280
  156. data/distro/common/man/man1/knife-user.1 +356 -356
  157. data/distro/common/man/man1/knife-xargs.1 +189 -189
  158. data/distro/common/man/man1/knife.1 +332 -332
  159. data/distro/common/man/man8/chef-apply.8 +86 -86
  160. data/distro/common/man/man8/chef-client.8 +398 -398
  161. data/distro/common/man/man8/chef-solo.8 +260 -260
  162. data/distro/common/markdown/README +3 -3
  163. data/lib/chef/application.rb +14 -9
  164. data/lib/chef/application/apply.rb +5 -5
  165. data/lib/chef/application/client.rb +3 -3
  166. data/lib/chef/application/exit_code.rb +226 -0
  167. data/lib/chef/application/solo.rb +37 -7
  168. data/lib/chef/application/windows_service.rb +3 -3
  169. data/lib/chef/chef_fs/command_line.rb +7 -0
  170. data/lib/chef/chef_fs/config.rb +1 -1
  171. data/lib/chef/chef_fs/data_handler/data_handler_base.rb +11 -10
  172. data/lib/chef/chef_fs/data_handler/environment_data_handler.rb +1 -1
  173. data/lib/chef/chef_fs/data_handler/role_data_handler.rb +1 -1
  174. data/lib/chef/chef_fs/file_system.rb +15 -13
  175. data/lib/chef/chef_fs/file_system/base_fs_object.rb +4 -0
  176. data/lib/chef/chef_fs/file_system/chef_server/acl_dir.rb +1 -1
  177. data/lib/chef/chef_fs/file_system/chef_server/acl_entry.rb +9 -0
  178. data/lib/chef/chef_fs/file_system/chef_server/data_bag_dir.rb +6 -0
  179. data/lib/chef/chef_fs/file_system/chef_server/data_bag_entry.rb +19 -0
  180. data/lib/chef/chef_fs/file_system/chef_server/environments_dir.rb +1 -1
  181. data/lib/chef/chef_fs/file_system/chef_server/nodes_dir.rb +1 -1
  182. data/lib/chef/chef_fs/file_system/chef_server/org_entry.rb +4 -0
  183. data/lib/chef/chef_fs/file_system/chef_server/organization_invites_entry.rb +4 -0
  184. data/lib/chef/chef_fs/file_system/chef_server/organization_members_entry.rb +4 -0
  185. data/lib/chef/chef_fs/file_system/chef_server/policy_revision_entry.rb +4 -0
  186. data/lib/chef/chef_fs/file_system/chef_server/rest_list_dir.rb +3 -3
  187. data/lib/chef/chef_fs/file_system/chef_server/rest_list_entry.rb +15 -4
  188. data/lib/chef/chef_fs/file_system/exceptions.rb +7 -0
  189. data/lib/chef/chef_fs/file_system/multiplexed_dir.rb +2 -2
  190. data/lib/chef/chef_fs/file_system/nonexistent_fs_object.rb +0 -4
  191. data/lib/chef/chef_fs/file_system/repository/acl.rb +7 -0
  192. data/lib/chef/chef_fs/file_system/repository/acls_sub_dir.rb +0 -4
  193. data/lib/chef/chef_fs/file_system/repository/base_file.rb +36 -4
  194. data/lib/chef/chef_fs/file_system/repository/chef_repository_file_system_cookbook_entry.rb +4 -0
  195. data/lib/chef/chef_fs/file_system/repository/client_keys_sub_dir.rb +0 -4
  196. data/lib/chef/chef_fs/file_system/repository/clients_dir.rb +0 -3
  197. data/lib/chef/chef_fs/file_system/repository/containers_dir.rb +0 -4
  198. data/lib/chef/chef_fs/file_system/repository/directory.rb +4 -0
  199. data/lib/chef/chef_fs/file_system/repository/environments_dir.rb +0 -4
  200. data/lib/chef/chef_fs/file_system/repository/groups_dir.rb +0 -4
  201. data/lib/chef/chef_fs/file_system/repository/nodes_dir.rb +0 -4
  202. data/lib/chef/chef_fs/file_system/repository/policy_groups_dir.rb +0 -4
  203. data/lib/chef/chef_fs/file_system/repository/roles_dir.rb +0 -4
  204. data/lib/chef/chef_fs/file_system/repository/users_dir.rb +0 -4
  205. data/lib/chef/client.rb +11 -3
  206. data/lib/chef/config_fetcher.rb +4 -4
  207. data/lib/chef/cookbook/gem_installer.rb +1 -0
  208. data/lib/chef/cookbook/synchronizer.rb +1 -1
  209. data/lib/chef/data_bag.rb +2 -2
  210. data/lib/chef/data_bag_item.rb +1 -1
  211. data/lib/chef/data_collector.rb +345 -0
  212. data/lib/chef/data_collector/messages.rb +125 -0
  213. data/lib/chef/data_collector/messages/helpers.rb +161 -0
  214. data/lib/chef/data_collector/resource_report.rb +84 -0
  215. data/lib/chef/decorator.rb +81 -0
  216. data/lib/chef/decorator/lazy.rb +60 -0
  217. data/lib/chef/decorator/lazy_array.rb +59 -0
  218. data/lib/chef/deprecation/provider/remote_file.rb +1 -1
  219. data/lib/chef/dsl/core.rb +19 -11
  220. data/lib/chef/dsl/platform_introspection.rb +16 -0
  221. data/lib/chef/dsl/recipe.rb +15 -9
  222. data/lib/chef/dsl/universal.rb +50 -0
  223. data/lib/chef/environment.rb +2 -2
  224. data/lib/chef/exceptions.rb +19 -4
  225. data/lib/chef/handler.rb +33 -0
  226. data/lib/chef/knife/cookbook_show.rb +6 -10
  227. data/lib/chef/knife/cookbook_site_install.rb +7 -2
  228. data/lib/chef/knife/help_topics.rb +4 -4
  229. data/lib/chef/knife/list.rb +1 -2
  230. data/lib/chef/knife/ssl_check.rb +2 -1
  231. data/lib/chef/monkey_patches/win32/registry.rb +11 -0
  232. data/lib/chef/nil_argument.rb +3 -3
  233. data/lib/chef/node.rb +2 -2
  234. data/lib/chef/platform/rebooter.rb +13 -2
  235. data/lib/chef/policy_builder/dynamic.rb +1 -1
  236. data/lib/chef/policy_builder/expand_node_object.rb +3 -3
  237. data/lib/chef/policy_builder/policyfile.rb +1 -1
  238. data/lib/chef/provider/git.rb +43 -41
  239. data/lib/chef/provider/lwrp_base.rb +0 -1
  240. data/lib/chef/provider/osx_profile.rb +2 -3
  241. data/lib/chef/provider/package.rb +51 -13
  242. data/lib/chef/provider/package/apt.rb +97 -103
  243. data/lib/chef/provider/package/chocolatey.rb +9 -10
  244. data/lib/chef/provider/package/dpkg.rb +2 -2
  245. data/lib/chef/provider/package/portage.rb +1 -1
  246. data/lib/chef/provider/package/rubygems.rb +8 -12
  247. data/lib/chef/provider/package/yum.rb +4 -959
  248. data/lib/chef/provider/package/yum/rpm_utils.rb +642 -0
  249. data/lib/chef/provider/package/{yum-dump.py → yum/yum-dump.py} +0 -0
  250. data/lib/chef/provider/package/yum/yum_cache.rb +376 -0
  251. data/lib/chef/provider/resource_update.rb +52 -52
  252. data/lib/chef/provider/systemd_unit.rb +238 -0
  253. data/lib/chef/providers.rb +1 -0
  254. data/lib/chef/reserved_names.rb +9 -9
  255. data/lib/chef/resource.rb +2 -7
  256. data/lib/chef/resource/file.rb +6 -1
  257. data/lib/chef/resource/systemd_unit.rb +63 -0
  258. data/lib/chef/resources.rb +1 -0
  259. data/lib/chef/sandbox.rb +20 -20
  260. data/lib/chef/shell/shell_session.rb +3 -3
  261. data/lib/chef/version.rb +1 -1
  262. data/lib/chef/win32/system.rb +0 -0
  263. data/spec/data/apt/chef-integration-test-1.0/debian/changelog +5 -5
  264. data/spec/data/apt/chef-integration-test-1.0/debian/compat +1 -1
  265. data/spec/data/apt/chef-integration-test-1.0/debian/control +13 -13
  266. data/spec/data/apt/chef-integration-test-1.0/debian/files +1 -1
  267. data/spec/data/apt/chef-integration-test-1.0/debian/rules +13 -13
  268. data/spec/data/apt/chef-integration-test-1.0/debian/source/format +1 -1
  269. data/spec/data/apt/chef-integration-test-1.1/debian/changelog +11 -11
  270. data/spec/data/apt/chef-integration-test-1.1/debian/compat +1 -1
  271. data/spec/data/apt/chef-integration-test-1.1/debian/control +13 -13
  272. data/spec/data/apt/chef-integration-test-1.1/debian/files +1 -1
  273. data/spec/data/apt/chef-integration-test-1.1/debian/rules +13 -13
  274. data/spec/data/apt/chef-integration-test-1.1/debian/source/format +1 -1
  275. data/spec/data/apt/chef-integration-test2-1.0/debian/rules +0 -0
  276. data/spec/data/apt/chef-integration-test_1.0-1_amd64.changes +22 -22
  277. data/spec/data/apt/chef-integration-test_1.1-1_amd64.changes +22 -22
  278. data/spec/data/apt/var/www/apt/conf/distributions +7 -7
  279. data/spec/data/apt/var/www/apt/conf/incoming +4 -4
  280. data/spec/data/apt/var/www/apt/conf/pulls +3 -3
  281. data/spec/data/apt/var/www/apt/db/version +4 -4
  282. data/spec/data/apt/var/www/apt/dists/sid/Release +19 -19
  283. data/spec/data/apt/var/www/apt/dists/sid/main/binary-amd64/Packages +16 -16
  284. data/spec/data/apt/var/www/apt/dists/sid/main/binary-amd64/Release +5 -5
  285. data/spec/data/bootstrap/encrypted_data_bag_secret +1 -1
  286. data/spec/data/bootstrap/no_proxy.erb +2 -2
  287. data/spec/data/bootstrap/secret.erb +9 -9
  288. data/spec/data/bootstrap/test-hints.erb +12 -12
  289. data/spec/data/bootstrap/test.erb +1 -1
  290. data/spec/data/cb_version_cookbooks/tatft/README.rdoc +2 -2
  291. data/spec/data/cb_version_cookbooks/tatft/attributes/default.rb +1 -1
  292. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-600hhz-0 +1 -1
  293. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-ahd2gq-0 +1 -1
  294. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-api8ux-0 +1 -1
  295. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-b0r1m1-0 +1 -1
  296. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-bfygsi-0 +1 -1
  297. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-el14l6-0 +1 -1
  298. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-ivrl3y-0 +1 -1
  299. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-kkbs85-0 +1 -1
  300. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-ory1ux-0 +1 -1
  301. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-pgsq76-0 +1 -1
  302. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-ra8uim-0 +1 -1
  303. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-t7k1g-0 +1 -1
  304. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-t8g0sv-0 +1 -1
  305. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-ufy6g3-0 +1 -1
  306. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-x2d6j9-0 +1 -1
  307. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-xi0l6h-0 +1 -1
  308. data/spec/data/config.rb +6 -6
  309. data/spec/data/cookbooks/angrybash/metadata.rb +2 -2
  310. data/spec/data/cookbooks/angrybash/recipes/default.rb +8 -8
  311. data/spec/data/cookbooks/apache2/files/default/apache2_module_conf_generate.pl +2 -2
  312. data/spec/data/cookbooks/apache2/metadata.rb +2 -2
  313. data/spec/data/cookbooks/apache2/recipes/default.rb +2 -2
  314. data/spec/data/cookbooks/borken/metadata.rb +2 -2
  315. data/spec/data/cookbooks/borken/recipes/default.rb +1 -1
  316. data/spec/data/cookbooks/borken/templates/default/borken.erb +1 -1
  317. data/spec/data/cookbooks/chefignore +8 -8
  318. data/spec/data/cookbooks/ignorken/files/default/not_me.rb +2 -2
  319. data/spec/data/cookbooks/ignorken/metadata.rb +2 -2
  320. data/spec/data/cookbooks/ignorken/recipes/ignoreme.rb +1 -1
  321. data/spec/data/cookbooks/ignorken/templates/ubuntu-12.10/not_me.rb +2 -2
  322. data/spec/data/cookbooks/java/files/default/java.response +1 -1
  323. data/spec/data/cookbooks/java/metadata.rb +2 -2
  324. data/spec/data/cookbooks/name-mismatch-versionnumber/README.md +4 -4
  325. data/spec/data/cookbooks/name-mismatch-versionnumber/metadata.rb +8 -8
  326. data/spec/data/cookbooks/openldap/attributes/default.rb +16 -16
  327. data/spec/data/cookbooks/openldap/attributes/smokey.rb +1 -1
  328. data/spec/data/cookbooks/openldap/definitions/client.rb +5 -5
  329. data/spec/data/cookbooks/openldap/definitions/server.rb +5 -5
  330. data/spec/data/cookbooks/openldap/files/default/.dotfile +1 -1
  331. data/spec/data/cookbooks/openldap/files/default/remotedir/.a_dotdir/.a_dotfile_in_a_dotdir +1 -1
  332. data/spec/data/cookbooks/openldap/files/default/remotedir/not_a_template.erb +2 -2
  333. data/spec/data/cookbooks/openldap/files/default/remotedir/remote_dir_file1.txt +2 -2
  334. data/spec/data/cookbooks/openldap/files/default/remotedir/remote_dir_file2.txt +2 -2
  335. data/spec/data/cookbooks/openldap/files/default/remotedir/remotesubdir/.a_dotfile +1 -1
  336. data/spec/data/cookbooks/openldap/files/default/remotedir/remotesubdir/remote_subdir_file1.txt +2 -2
  337. data/spec/data/cookbooks/openldap/files/default/remotedir/remotesubdir/remote_subdir_file2.txt +2 -2
  338. data/spec/data/cookbooks/openldap/files/default/remotedir/subdir_with_no_file_just_a_subsubdir/the_subsubdir/some_file.txt +3 -3
  339. data/spec/data/cookbooks/openldap/libraries/openldap.rb +4 -4
  340. data/spec/data/cookbooks/openldap/libraries/openldap/version.rb +3 -3
  341. data/spec/data/cookbooks/openldap/metadata.rb +8 -8
  342. data/spec/data/cookbooks/openldap/recipes/default.rb +4 -4
  343. data/spec/data/cookbooks/openldap/recipes/gigantor.rb +3 -3
  344. data/spec/data/cookbooks/openldap/recipes/one.rb +15 -15
  345. data/spec/data/cookbooks/openldap/recipes/return.rb +2 -2
  346. data/spec/data/cookbooks/openldap/templates/default/helper_test.erb +1 -1
  347. data/spec/data/cookbooks/openldap/templates/default/helpers_via_partial_test.erb +1 -1
  348. data/spec/data/cookbooks/openldap/templates/default/no_windows_line_endings.erb +4 -4
  349. data/spec/data/cookbooks/openldap/templates/default/openldap_variable_stuff.conf.erb +1 -1
  350. data/spec/data/cookbooks/openldap/templates/default/test.erb +1 -1
  351. data/spec/data/cookbooks/preseed/files/default/preseed-file.seed +1 -1
  352. data/spec/data/cookbooks/preseed/files/default/preseed-template.seed +4 -4
  353. data/spec/data/cookbooks/preseed/metadata.rb +2 -2
  354. data/spec/data/cookbooks/preseed/templates/default/preseed-template-variables.seed +1 -1
  355. data/spec/data/cookbooks/preseed/templates/default/preseed-template.seed +1 -1
  356. data/spec/data/definitions/test.rb +4 -4
  357. data/spec/data/environment-config.rb +4 -4
  358. data/spec/data/file-providers-method-snapshot-chef-11-4.json +127 -127
  359. data/spec/data/fileedit/hosts +4 -4
  360. data/spec/data/incomplete-metadata-chef-repo/incomplete-metadata/README.md +4 -4
  361. data/spec/data/incomplete-metadata-chef-repo/incomplete-metadata/metadata.rb +13 -13
  362. data/spec/data/invalid-metadata-chef-repo/invalid-metadata/README.md +4 -4
  363. data/spec/data/kitchen/chefignore +6 -6
  364. data/spec/data/kitchen/openldap/attributes/default.rb +3 -3
  365. data/spec/data/kitchen/openldap/attributes/robinson.rb +2 -2
  366. data/spec/data/kitchen/openldap/definitions/client.rb +3 -3
  367. data/spec/data/kitchen/openldap/definitions/drewbarrymore.rb +2 -2
  368. data/spec/data/kitchen/openldap/recipes/gigantor.rb +2 -2
  369. data/spec/data/kitchen/openldap/recipes/ignoreme.rb +2 -2
  370. data/spec/data/kitchen/openldap/recipes/woot.rb +3 -3
  371. data/spec/data/knife_subcommand/test_explicit_category.rb +6 -6
  372. data/spec/data/knife_subcommand/test_name_mapping.rb +4 -4
  373. data/spec/data/knife_subcommand/test_yourself.rb +21 -21
  374. data/spec/data/lwrp/providers/inline_compiler.rb +26 -26
  375. data/spec/data/lwrp/providers/monkey_name_printer.rb +5 -5
  376. data/spec/data/lwrp/providers/paint_drying_watcher.rb +7 -7
  377. data/spec/data/lwrp/providers/thumb_twiddler.rb +7 -7
  378. data/spec/data/lwrp/resources/foo.rb +4 -4
  379. data/spec/data/lwrp/resources_with_default_attributes/nodeattr.rb +1 -1
  380. data/spec/data/lwrp_override/providers/buck_passer.rb +5 -5
  381. data/spec/data/mac_users/10.7-8.plist.xml +559 -559
  382. data/spec/data/mac_users/10.7-8.shadow.xml +11 -11
  383. data/spec/data/mac_users/10.7.plist.xml +559 -559
  384. data/spec/data/mac_users/10.7.shadow.xml +11 -11
  385. data/spec/data/mac_users/10.8.plist.xml +559 -559
  386. data/spec/data/mac_users/10.8.shadow.xml +21 -21
  387. data/spec/data/mac_users/10.9.plist.xml +560 -560
  388. data/spec/data/mac_users/10.9.shadow.xml +21 -21
  389. data/spec/data/metadata/quick_start/metadata.rb +19 -19
  390. data/spec/data/nodes/default.rb +15 -15
  391. data/spec/data/nodes/test.example.com.rb +17 -17
  392. data/spec/data/nodes/test.rb +15 -15
  393. data/spec/data/null_config.rb +1 -1
  394. data/spec/data/object_loader/environments/test.json +7 -7
  395. data/spec/data/object_loader/environments/test.rb +2 -2
  396. data/spec/data/object_loader/environments/test_json_class.json +8 -8
  397. data/spec/data/object_loader/nodes/test.json +7 -7
  398. data/spec/data/object_loader/nodes/test.rb +2 -2
  399. data/spec/data/object_loader/nodes/test_json_class.json +8 -8
  400. data/spec/data/object_loader/roles/test.json +7 -7
  401. data/spec/data/object_loader/roles/test.rb +2 -2
  402. data/spec/data/object_loader/roles/test_json_class.json +8 -8
  403. data/spec/data/partial_one.erb +1 -1
  404. data/spec/data/recipes/test.rb +7 -7
  405. data/spec/data/run_context/cookbooks/circular-dep1/attributes/default.rb +4 -4
  406. data/spec/data/run_context/cookbooks/circular-dep1/definitions/circular_dep1_res.rb +1 -1
  407. data/spec/data/run_context/cookbooks/circular-dep1/libraries/lib.rb +2 -2
  408. data/spec/data/run_context/cookbooks/circular-dep1/metadata.rb +2 -2
  409. data/spec/data/run_context/cookbooks/circular-dep1/providers/provider.rb +1 -1
  410. data/spec/data/run_context/cookbooks/circular-dep1/resources/resource.rb +1 -1
  411. data/spec/data/run_context/cookbooks/circular-dep2/attributes/default.rb +3 -3
  412. data/spec/data/run_context/cookbooks/circular-dep2/definitions/circular_dep2_res.rb +1 -1
  413. data/spec/data/run_context/cookbooks/circular-dep2/libraries/lib.rb +2 -2
  414. data/spec/data/run_context/cookbooks/circular-dep2/metadata.rb +2 -2
  415. data/spec/data/run_context/cookbooks/circular-dep2/providers/provider.rb +1 -1
  416. data/spec/data/run_context/cookbooks/circular-dep2/resources/resource.rb +1 -1
  417. data/spec/data/run_context/cookbooks/dependency1/attributes/aa_first.rb +2 -2
  418. data/spec/data/run_context/cookbooks/dependency1/attributes/default.rb +2 -2
  419. data/spec/data/run_context/cookbooks/dependency1/attributes/zz_last.rb +3 -3
  420. data/spec/data/run_context/cookbooks/dependency1/definitions/dependency1_res.rb +1 -1
  421. data/spec/data/run_context/cookbooks/dependency1/libraries/lib.rb +2 -2
  422. data/spec/data/run_context/cookbooks/dependency1/providers/provider.rb +1 -1
  423. data/spec/data/run_context/cookbooks/dependency1/resources/resource.rb +1 -1
  424. data/spec/data/run_context/cookbooks/dependency2/attributes/default.rb +3 -3
  425. data/spec/data/run_context/cookbooks/dependency2/definitions/dependency2_res.rb +1 -1
  426. data/spec/data/run_context/cookbooks/dependency2/libraries/lib.rb +2 -2
  427. data/spec/data/run_context/cookbooks/dependency2/providers/provider.rb +1 -1
  428. data/spec/data/run_context/cookbooks/dependency2/resources/resource.rb +1 -1
  429. data/spec/data/run_context/cookbooks/no-default-attr/attributes/server.rb +3 -3
  430. data/spec/data/run_context/cookbooks/no-default-attr/definitions/no_default-attr_res.rb +1 -1
  431. data/spec/data/run_context/cookbooks/no-default-attr/providers/provider.rb +1 -1
  432. data/spec/data/run_context/cookbooks/no-default-attr/resources/resource.rb +1 -1
  433. data/spec/data/run_context/cookbooks/test-with-circular-deps/attributes/default.rb +3 -3
  434. data/spec/data/run_context/cookbooks/test-with-circular-deps/definitions/test_with-circular-deps_res.rb +1 -1
  435. data/spec/data/run_context/cookbooks/test-with-circular-deps/libraries/lib.rb +2 -2
  436. data/spec/data/run_context/cookbooks/test-with-circular-deps/metadata.rb +2 -2
  437. data/spec/data/run_context/cookbooks/test-with-circular-deps/providers/provider.rb +1 -1
  438. data/spec/data/run_context/cookbooks/test-with-circular-deps/resources/resource.rb +1 -1
  439. data/spec/data/run_context/cookbooks/test-with-deps/attributes/default.rb +3 -3
  440. data/spec/data/run_context/cookbooks/test-with-deps/definitions/test_with-deps_res.rb +1 -1
  441. data/spec/data/run_context/cookbooks/test-with-deps/libraries/lib.rb +1 -1
  442. data/spec/data/run_context/cookbooks/test-with-deps/metadata.rb +3 -3
  443. data/spec/data/run_context/cookbooks/test-with-deps/providers/provider.rb +1 -1
  444. data/spec/data/run_context/cookbooks/test-with-deps/resources/resource.rb +1 -1
  445. data/spec/data/run_context/cookbooks/test/attributes/george.rb +1 -1
  446. data/spec/data/run_context/cookbooks/test/definitions/new_animals.rb +9 -9
  447. data/spec/data/run_context/cookbooks/test/definitions/new_cat.rb +5 -5
  448. data/spec/data/run_context/cookbooks/test/definitions/test_res.rb +1 -1
  449. data/spec/data/run_context/cookbooks/test/providers/provider.rb +1 -1
  450. data/spec/data/run_context/cookbooks/test/recipes/default.rb +5 -5
  451. data/spec/data/run_context/cookbooks/test/recipes/one.rb +7 -7
  452. data/spec/data/run_context/cookbooks/test/recipes/two.rb +7 -7
  453. data/spec/data/run_context/cookbooks/test/resources/resource.rb +1 -1
  454. data/spec/data/run_context/nodes/run_context.rb +5 -5
  455. data/spec/data/search_queries_to_transform.txt +98 -98
  456. data/spec/data/shef-config.rb +10 -10
  457. data/spec/data/ssl/5e707473.0 +18 -18
  458. data/spec/data/ssl/chef-rspec.cert +27 -27
  459. data/spec/data/ssl/chef-rspec.key +27 -27
  460. data/spec/data/ssl/key.pem +15 -15
  461. data/spec/data/ssl/private_key.pem +27 -27
  462. data/spec/data/ssl/private_key_with_whitespace.pem +32 -32
  463. data/spec/data/standalone_cookbook/chefignore +9 -9
  464. data/spec/data/standalone_cookbook/recipes/default.rb +2 -2
  465. data/spec/data/trusted_certs/example.crt +22 -22
  466. data/spec/data/trusted_certs/intermediate.pem +27 -27
  467. data/spec/data/trusted_certs/root.pem +22 -22
  468. data/spec/functional/assets/chefinittest +34 -34
  469. data/spec/functional/assets/testchefsubsys +10 -10
  470. data/spec/functional/provider/remote_file/cache_control_data_spec.rb +0 -0
  471. data/spec/functional/resource/aix_service_spec.rb +0 -0
  472. data/spec/functional/resource/aixinit_service_spec.rb +0 -0
  473. data/spec/functional/resource/chocolatey_package_spec.rb +0 -5
  474. data/spec/functional/resource/env_spec.rb +0 -0
  475. data/spec/functional/win32/registry_spec.rb +1 -0
  476. data/spec/integration/client/exit_code_spec.rb +245 -0
  477. data/spec/integration/knife/deps_spec.rb +7 -7
  478. data/spec/integration/knife/download_spec.rb +19 -0
  479. data/spec/integration/knife/list_spec.rb +0 -8
  480. data/spec/integration/knife/upload_spec.rb +21 -2
  481. data/spec/integration/solo/solo_spec.rb +1 -1
  482. data/spec/rcov.opts +2 -2
  483. data/spec/unit/application/apply_spec.rb +6 -4
  484. data/spec/unit/application/exit_code_spec.rb +231 -0
  485. data/spec/unit/application/solo_spec.rb +143 -88
  486. data/spec/unit/chef_fs/config_spec.rb +129 -0
  487. data/spec/unit/chef_fs/file_system/repository/base_file_spec.rb +8 -10
  488. data/spec/unit/client_spec.rb +1 -1
  489. data/spec/unit/config_fetcher_spec.rb +2 -2
  490. data/spec/unit/cookbook/synchronizer_spec.rb +1 -1
  491. data/spec/unit/data_bag_item_spec.rb +2 -2
  492. data/spec/unit/data_bag_spec.rb +2 -2
  493. data/spec/unit/data_collector/messages/helpers_spec.rb +190 -0
  494. data/spec/unit/data_collector/messages_spec.rb +207 -0
  495. data/spec/unit/data_collector_spec.rb +525 -0
  496. data/spec/unit/decorator/lazy_array_spec.rb +58 -0
  497. data/spec/unit/decorator/lazy_spec.rb +39 -0
  498. data/spec/unit/decorator_spec.rb +142 -0
  499. data/spec/unit/environment_spec.rb +4 -4
  500. data/spec/unit/handler_spec.rb +87 -0
  501. data/spec/unit/knife/cookbook_show_spec.rb +89 -90
  502. data/spec/unit/knife/ssl_check_spec.rb +16 -0
  503. data/spec/unit/policy_builder/dynamic_spec.rb +1 -1
  504. data/spec/unit/policy_builder/policyfile_spec.rb +1 -1
  505. data/spec/unit/provider/git_spec.rb +77 -18
  506. data/spec/unit/provider/package/apt_spec.rb +97 -34
  507. data/spec/unit/provider/package/chocolatey_spec.rb +3 -15
  508. data/spec/unit/provider/package/portage_spec.rb +6 -0
  509. data/spec/unit/provider/package/rubygems_spec.rb +38 -4
  510. data/spec/unit/provider/package/yum/yum_cache_spec.rb +27 -0
  511. data/spec/unit/provider/package_spec.rb +20 -7
  512. data/spec/unit/provider/systemd_unit_spec.rb +885 -0
  513. data/spec/unit/resource/systemd_unit_spec.rb +133 -0
  514. data/spec/unit/resource_builder_spec.rb +1 -1
  515. data/tasks/bin/bundle-platform +6 -2
  516. data/tasks/bin/bundle-platform.bat +0 -0
  517. data/tasks/bin/create-override-gemfile +0 -0
  518. data/tasks/bin/run_external_test +0 -0
  519. data/tasks/bundle_util.rb +18 -2
  520. data/tasks/changelog.rb +1 -0
  521. data/tasks/dependencies.rb +47 -57
  522. metadata +847 -7
  523. data/tasks/bin/run_chef_tests +0 -17
@@ -1,215 +1,215 @@
1
- .\" Man page generated from reStructuredText.
2
- .
3
- .TH "KNIFE-BOOTSTRAP" "1" "Chef 12.0" "" "knife bootstrap"
4
- .SH NAME
5
- knife-bootstrap \- The man page for the knife bootstrap subcommand.
6
- .
7
- .nr rst2man-indent-level 0
8
- .
9
- .de1 rstReportMargin
10
- \\$1 \\n[an-margin]
11
- level \\n[rst2man-indent-level]
12
- level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
13
- -
14
- \\n[rst2man-indent0]
15
- \\n[rst2man-indent1]
16
- \\n[rst2man-indent2]
17
- ..
18
- .de1 INDENT
19
- .\" .rstReportMargin pre:
20
- . RS \\$1
21
- . nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin]
22
- . nr rst2man-indent-level +1
23
- .\" .rstReportMargin post:
24
- ..
25
- .de UNINDENT
26
- . RE
27
- .\" indent \\n[an-margin]
28
- .\" old: \\n[rst2man-indent\\n[rst2man-indent-level]]
29
- .nr rst2man-indent-level -1
30
- .\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
31
- .in \\n[rst2man-indent\\n[rst2man-indent-level]]u
32
- ..
33
- .sp
34
- A bootstrap is a process that installs the chef\-client on a target system so that it can run as a chef\-client and communicate with a Chef server\&.
35
- .sp
36
- The \fBknife bootstrap\fP 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.
37
- .sp
38
- \fBSyntax\fP
39
- .sp
40
- This subcommand has the following syntax:
41
- .INDENT 0.0
42
- .INDENT 3.5
43
- .sp
44
- .nf
45
- .ft C
46
- $ knife bootstrap FQDN_or_IP_ADDRESS (options)
47
- .ft P
48
- .fi
49
- .UNINDENT
50
- .UNINDENT
51
- .sp
52
- \fBOptions\fP
53
- .sp
54
- This subcommand has the following options:
55
- .INDENT 0.0
56
- .TP
57
- .B \fB\-A\fP, \fB\-\-forward\-agent\fP
58
- Use to enable SSH agent forwarding.
59
- .TP
60
- .B \fB\-\-bootstrap\-curl\-options OPTIONS\fP
61
- Use to specify arbitrary options to be added to the bootstrap command when using cURL\&. This option may not be used in the same command with \fB\-\-bootstrap\-install\-command\fP\&.
62
- .TP
63
- .B \fB\-\-bootstrap\-install\-command COMMAND\fP
64
- Use to execute a custom installation command sequence for the chef\-client\&. This option may not be used in the same command with \fB\-\-bootstrap\-curl\-options\fP, \fB\-\-bootstrap\-install\-sh\fP, or \fB\-\-bootstrap\-wget\-options\fP\&.
65
- .TP
66
- .B \fB\-\-bootstrap\-install\-sh URL\fP
67
- Use to fetch and execute an installation script at the specified URL. This option may not be used in the same command with \fB\-\-bootstrap\-install\-command\fP\&.
68
- .TP
69
- .B \fB\-\-bootstrap\-no\-proxy NO_PROXY_URL_or_IP\fP
70
- A URL or IP address that specifies a location that should not be proxied.
71
- .sp
72
- \fBNOTE:\fP
73
- .INDENT 7.0
74
- .INDENT 3.5
75
- This option is used internally by Chef to help verify bootstrap operations during testing and should never be used during an actual bootstrap operation.
76
- .UNINDENT
77
- .UNINDENT
78
- .TP
79
- .B \fB\-\-bootstrap\-proxy PROXY_URL\fP
80
- The proxy server for the node that is the target of a bootstrap operation.
81
- .TP
82
- .B \fB\-\-bootstrap\-version VERSION\fP
83
- The version of the chef\-client to install.
84
- .TP
85
- .B \fB\-\-bootstrap\-wget\-options OPTIONS\fP
86
- Use to specify arbitrary options to be added to the bootstrap command when using GNU Wget\&. This option may not be used in the same command with \fB\-\-bootstrap\-install\-command\fP\&.
87
- .TP
88
- .B \fB\-E ENVIRONMENT\fP, \fB\-\-environment ENVIRONMENT\fP
89
- The name of the environment. When this option is added to a command, the command will run only against the named environment.
90
- .TP
91
- .B \fB\-G GATEWAY\fP, \fB\-\-ssh\-gateway GATEWAY\fP
92
- The SSH tunnel or gateway that is used to run a bootstrap action on a machine that is not accessible from the workstation.
93
- .TP
94
- .B \fB\-\-hint HINT_NAME[=HINT_FILE]\fP
95
- Use to specify an Ohai hint to be set on the target node.
96
- .sp
97
- Ohai hints are used to tell Ohai something about the system that it is running on that it would not be able to discover itself. An Ohai hint exists if a JSON file exists in the hint directory with the same name as the hint. For example, calling \fBhint?(\(aqantartica\(aq)\fP in an Ohai plugin would return an empty hash if the file \fBantartica.json\fP existed in the hints directory, and return nil if the file does not exist.
98
- .sp
99
- If the hint file contains JSON content, it will be returned as a hash from the call to \fBhint?\fP\&.
100
- .INDENT 7.0
101
- .INDENT 3.5
102
- .sp
103
- .nf
104
- .ft C
105
- {
106
- "snow": true,
107
- "penguins": "many"
108
- }
109
- .ft P
110
- .fi
111
- .UNINDENT
112
- .UNINDENT
113
- .INDENT 7.0
114
- .INDENT 3.5
115
- .sp
116
- .nf
117
- .ft C
118
- arctic_hint = hint?(\(aqantartica\(aq)
119
- if arctic_hint[\(aqsnow\(aq]
120
- "There are #{arctic_hint[\(aqpenguins\(aq]} penguins here."
121
- else
122
- "There is no snow here, and penguins like snow."
123
- end
124
- .ft P
125
- .fi
126
- .UNINDENT
127
- .UNINDENT
128
- .sp
129
- The default directory in which hint files are located is \fB/etc/chef/ohai/hints/\fP\&. Use the \fBOhai::Config[:hints_path]\fP setting in the client.rb file to customize this location.
130
- .sp
131
- \fBHINT_FILE\fP is the name of the JSON file. \fBHINT_NAME\fP is the name of a hint in a JSON file. Use multiple \fB\-\-hint\fP options to specify multiple hints.
132
- .TP
133
- .B \fB\-i IDENTITY_FILE\fP, \fB\-\-identity\-file IDENTITY_FILE\fP
134
- The SSH identity file used for authentication. Key\-based authentication is recommended.
135
- .TP
136
- .B \fB\-j JSON_ATTRIBS\fP, \fB\-\-json\-attributes JSON_ATTRIBS\fP
137
- A JSON string that is added to the first run of a chef\-client\&.
138
- .TP
139
- .B \fB\-N NAME\fP, \fB\-\-node\-name NAME\fP
140
- The name of the node.
141
- .TP
142
- .B \fB\-\-[no\-]host\-key\-verify\fP
143
- Use \fB\-\-no\-host\-key\-verify\fP to disable host key verification. Default setting: \fB\-\-host\-key\-verify\fP\&.
144
- .TP
145
- .B \fB\-\-[no\-]node\-verify\-api\-cert\fP
146
- Use \fBverify_api_cert\fP to only do SSL validation of the Chef server connection; may be needed if the chef\-client needs to talk to other services that have broken SSL certificates. If this option is not specified, the setting for \fBverify_api_cert\fP in the configuration file is applied.
147
- .TP
148
- .B \fB\-\-node\-ssl\-verify\-mode PEER_OR_NONE\fP
149
- The verify mode for HTTPS requests.
150
- .sp
151
- Use \fB:verify_none\fP to do no validation of SSL certificates.
152
- .sp
153
- Use \fB:verify_peer\fP to do validation of all SSL certificates, including the Chef server connections, S3 connections, and any HTTPS \fBremote_file\fP resource URLs used in the chef\-client run. This is the recommended setting.
154
- .sp
155
- If this option is not specified, the setting for \fBssl_verify_mode\fP in the configuration file is applied.
156
- .TP
157
- .B \fB\-p PORT\fP, \fB\-\-ssh\-port PORT\fP
158
- The SSH port.
159
- .TP
160
- .B \fB\-P PASSWORD\fP, \fB\-\-ssh\-password PASSWORD\fP
161
- The SSH password. This can be used to pass the password directly on the command line. If this option is not specified (and a password is required) knife will prompt for the password.
162
- .TP
163
- .B \fB\-\-prerelease\fP
164
- Use to install pre\-release gems.
165
- .TP
166
- .B \fB\-r RUN_LIST\fP, \fB\-\-run\-list RUN_LIST\fP
167
- A comma\-separated list of roles and/or recipes to be applied.
168
- .TP
169
- .B \fB\-\-secret SECRET\fP
170
- The encryption key that is used for values contained within a data bag item.
171
- .TP
172
- .B \fB\-\-secret\-file FILE\fP
173
- The path to the file that contains the encryption key.
174
- .TP
175
- .B \fB\-\-sudo\fP
176
- Use to execute a bootstrap operation with sudo\&.
177
- .TP
178
- .B \fB\-t TEMPLATE\fP, \fB\-\-bootstrap\-template TEMPLATE\fP
179
- Use to specify the bootstrap template to use. This may specify the name of a bootstrap template\-\-\-\fBchef\-full\fP, for example\-\-\-or it may specify the full path to an Embedded Ruby (ERB) template that defines a custom bootstrap. Default value: \fBchef\-full\fP, which installs the chef\-client using the omnibus installer on all supported platforms.
180
- .TP
181
- .B \fB\-\-use\-sudo\-password\fP
182
- Use to perform a bootstrap operation with sudo; specify the password with the \fB\-P\fP (or \fB\-\-ssh\-password\fP) option.
183
- .TP
184
- .B \fB\-V \-V\fP
185
- Use to run the initial chef\-client run at the \fBdebug\fP log\-level (e.g. \fBchef\-client \-l debug\fP).
186
- .TP
187
- .B \fB\-x USERNAME\fP, \fB\-\-ssh\-user USERNAME\fP
188
- The SSH user name.
189
- .UNINDENT
190
- .sp
191
- \fBExamples\fP
192
- .INDENT 0.0
193
- .INDENT 3.5
194
- .sp
195
- .nf
196
- .ft C
197
- $ knife bootstrap 192.168.1.1 \-x username \-P PASSWORD \-\-sudo
198
- .ft P
199
- .fi
200
- .UNINDENT
201
- .UNINDENT
202
- .INDENT 0.0
203
- .INDENT 3.5
204
- .sp
205
- .nf
206
- .ft C
207
- $ knife bootstrap 192.168.1.1 \-x username \-i ~/.ssh/id_rsa \-\-sudo
208
- .ft P
209
- .fi
210
- .UNINDENT
211
- .UNINDENT
212
- .SH AUTHOR
213
- Chef
214
- .\" Generated by docutils manpage writer.
215
- .
1
+ .\" Man page generated from reStructuredText.
2
+ .
3
+ .TH "KNIFE-BOOTSTRAP" "1" "Chef 12.0" "" "knife bootstrap"
4
+ .SH NAME
5
+ knife-bootstrap \- The man page for the knife bootstrap subcommand.
6
+ .
7
+ .nr rst2man-indent-level 0
8
+ .
9
+ .de1 rstReportMargin
10
+ \\$1 \\n[an-margin]
11
+ level \\n[rst2man-indent-level]
12
+ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
13
+ -
14
+ \\n[rst2man-indent0]
15
+ \\n[rst2man-indent1]
16
+ \\n[rst2man-indent2]
17
+ ..
18
+ .de1 INDENT
19
+ .\" .rstReportMargin pre:
20
+ . RS \\$1
21
+ . nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin]
22
+ . nr rst2man-indent-level +1
23
+ .\" .rstReportMargin post:
24
+ ..
25
+ .de UNINDENT
26
+ . RE
27
+ .\" indent \\n[an-margin]
28
+ .\" old: \\n[rst2man-indent\\n[rst2man-indent-level]]
29
+ .nr rst2man-indent-level -1
30
+ .\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
31
+ .in \\n[rst2man-indent\\n[rst2man-indent-level]]u
32
+ ..
33
+ .sp
34
+ A bootstrap is a process that installs the chef\-client on a target system so that it can run as a chef\-client and communicate with a Chef server\&.
35
+ .sp
36
+ The \fBknife bootstrap\fP 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.
37
+ .sp
38
+ \fBSyntax\fP
39
+ .sp
40
+ This subcommand has the following syntax:
41
+ .INDENT 0.0
42
+ .INDENT 3.5
43
+ .sp
44
+ .nf
45
+ .ft C
46
+ $ knife bootstrap FQDN_or_IP_ADDRESS (options)
47
+ .ft P
48
+ .fi
49
+ .UNINDENT
50
+ .UNINDENT
51
+ .sp
52
+ \fBOptions\fP
53
+ .sp
54
+ This subcommand has the following options:
55
+ .INDENT 0.0
56
+ .TP
57
+ .B \fB\-A\fP, \fB\-\-forward\-agent\fP
58
+ Use to enable SSH agent forwarding.
59
+ .TP
60
+ .B \fB\-\-bootstrap\-curl\-options OPTIONS\fP
61
+ Use to specify arbitrary options to be added to the bootstrap command when using cURL\&. This option may not be used in the same command with \fB\-\-bootstrap\-install\-command\fP\&.
62
+ .TP
63
+ .B \fB\-\-bootstrap\-install\-command COMMAND\fP
64
+ Use to execute a custom installation command sequence for the chef\-client\&. This option may not be used in the same command with \fB\-\-bootstrap\-curl\-options\fP, \fB\-\-bootstrap\-install\-sh\fP, or \fB\-\-bootstrap\-wget\-options\fP\&.
65
+ .TP
66
+ .B \fB\-\-bootstrap\-install\-sh URL\fP
67
+ Use to fetch and execute an installation script at the specified URL. This option may not be used in the same command with \fB\-\-bootstrap\-install\-command\fP\&.
68
+ .TP
69
+ .B \fB\-\-bootstrap\-no\-proxy NO_PROXY_URL_or_IP\fP
70
+ A URL or IP address that specifies a location that should not be proxied.
71
+ .sp
72
+ \fBNOTE:\fP
73
+ .INDENT 7.0
74
+ .INDENT 3.5
75
+ This option is used internally by Chef to help verify bootstrap operations during testing and should never be used during an actual bootstrap operation.
76
+ .UNINDENT
77
+ .UNINDENT
78
+ .TP
79
+ .B \fB\-\-bootstrap\-proxy PROXY_URL\fP
80
+ The proxy server for the node that is the target of a bootstrap operation.
81
+ .TP
82
+ .B \fB\-\-bootstrap\-version VERSION\fP
83
+ The version of the chef\-client to install.
84
+ .TP
85
+ .B \fB\-\-bootstrap\-wget\-options OPTIONS\fP
86
+ Use to specify arbitrary options to be added to the bootstrap command when using GNU Wget\&. This option may not be used in the same command with \fB\-\-bootstrap\-install\-command\fP\&.
87
+ .TP
88
+ .B \fB\-E ENVIRONMENT\fP, \fB\-\-environment ENVIRONMENT\fP
89
+ The name of the environment. When this option is added to a command, the command will run only against the named environment.
90
+ .TP
91
+ .B \fB\-G GATEWAY\fP, \fB\-\-ssh\-gateway GATEWAY\fP
92
+ The SSH tunnel or gateway that is used to run a bootstrap action on a machine that is not accessible from the workstation.
93
+ .TP
94
+ .B \fB\-\-hint HINT_NAME[=HINT_FILE]\fP
95
+ Use to specify an Ohai hint to be set on the target node.
96
+ .sp
97
+ Ohai hints are used to tell Ohai something about the system that it is running on that it would not be able to discover itself. An Ohai hint exists if a JSON file exists in the hint directory with the same name as the hint. For example, calling \fBhint?(\(aqantartica\(aq)\fP in an Ohai plugin would return an empty hash if the file \fBantartica.json\fP existed in the hints directory, and return nil if the file does not exist.
98
+ .sp
99
+ If the hint file contains JSON content, it will be returned as a hash from the call to \fBhint?\fP\&.
100
+ .INDENT 7.0
101
+ .INDENT 3.5
102
+ .sp
103
+ .nf
104
+ .ft C
105
+ {
106
+ "snow": true,
107
+ "penguins": "many"
108
+ }
109
+ .ft P
110
+ .fi
111
+ .UNINDENT
112
+ .UNINDENT
113
+ .INDENT 7.0
114
+ .INDENT 3.5
115
+ .sp
116
+ .nf
117
+ .ft C
118
+ arctic_hint = hint?(\(aqantartica\(aq)
119
+ if arctic_hint[\(aqsnow\(aq]
120
+ "There are #{arctic_hint[\(aqpenguins\(aq]} penguins here."
121
+ else
122
+ "There is no snow here, and penguins like snow."
123
+ end
124
+ .ft P
125
+ .fi
126
+ .UNINDENT
127
+ .UNINDENT
128
+ .sp
129
+ The default directory in which hint files are located is \fB/etc/chef/ohai/hints/\fP\&. Use the \fBOhai::Config[:hints_path]\fP setting in the client.rb file to customize this location.
130
+ .sp
131
+ \fBHINT_FILE\fP is the name of the JSON file. \fBHINT_NAME\fP is the name of a hint in a JSON file. Use multiple \fB\-\-hint\fP options to specify multiple hints.
132
+ .TP
133
+ .B \fB\-i IDENTITY_FILE\fP, \fB\-\-identity\-file IDENTITY_FILE\fP
134
+ The SSH identity file used for authentication. Key\-based authentication is recommended.
135
+ .TP
136
+ .B \fB\-j JSON_ATTRIBS\fP, \fB\-\-json\-attributes JSON_ATTRIBS\fP
137
+ A JSON string that is added to the first run of a chef\-client\&.
138
+ .TP
139
+ .B \fB\-N NAME\fP, \fB\-\-node\-name NAME\fP
140
+ The name of the node.
141
+ .TP
142
+ .B \fB\-\-[no\-]host\-key\-verify\fP
143
+ Use \fB\-\-no\-host\-key\-verify\fP to disable host key verification. Default setting: \fB\-\-host\-key\-verify\fP\&.
144
+ .TP
145
+ .B \fB\-\-[no\-]node\-verify\-api\-cert\fP
146
+ Use \fBverify_api_cert\fP to only do SSL validation of the Chef server connection; may be needed if the chef\-client needs to talk to other services that have broken SSL certificates. If this option is not specified, the setting for \fBverify_api_cert\fP in the configuration file is applied.
147
+ .TP
148
+ .B \fB\-\-node\-ssl\-verify\-mode PEER_OR_NONE\fP
149
+ The verify mode for HTTPS requests.
150
+ .sp
151
+ Use \fB:verify_none\fP to do no validation of SSL certificates.
152
+ .sp
153
+ Use \fB:verify_peer\fP to do validation of all SSL certificates, including the Chef server connections, S3 connections, and any HTTPS \fBremote_file\fP resource URLs used in the chef\-client run. This is the recommended setting.
154
+ .sp
155
+ If this option is not specified, the setting for \fBssl_verify_mode\fP in the configuration file is applied.
156
+ .TP
157
+ .B \fB\-p PORT\fP, \fB\-\-ssh\-port PORT\fP
158
+ The SSH port.
159
+ .TP
160
+ .B \fB\-P PASSWORD\fP, \fB\-\-ssh\-password PASSWORD\fP
161
+ The SSH password. This can be used to pass the password directly on the command line. If this option is not specified (and a password is required) knife will prompt for the password.
162
+ .TP
163
+ .B \fB\-\-prerelease\fP
164
+ Use to install pre\-release gems.
165
+ .TP
166
+ .B \fB\-r RUN_LIST\fP, \fB\-\-run\-list RUN_LIST\fP
167
+ A comma\-separated list of roles and/or recipes to be applied.
168
+ .TP
169
+ .B \fB\-\-secret SECRET\fP
170
+ The encryption key that is used for values contained within a data bag item.
171
+ .TP
172
+ .B \fB\-\-secret\-file FILE\fP
173
+ The path to the file that contains the encryption key.
174
+ .TP
175
+ .B \fB\-\-sudo\fP
176
+ Use to execute a bootstrap operation with sudo\&.
177
+ .TP
178
+ .B \fB\-t TEMPLATE\fP, \fB\-\-bootstrap\-template TEMPLATE\fP
179
+ Use to specify the bootstrap template to use. This may specify the name of a bootstrap template\-\-\-\fBchef\-full\fP, for example\-\-\-or it may specify the full path to an Embedded Ruby (ERB) template that defines a custom bootstrap. Default value: \fBchef\-full\fP, which installs the chef\-client using the omnibus installer on all supported platforms.
180
+ .TP
181
+ .B \fB\-\-use\-sudo\-password\fP
182
+ Use to perform a bootstrap operation with sudo; specify the password with the \fB\-P\fP (or \fB\-\-ssh\-password\fP) option.
183
+ .TP
184
+ .B \fB\-V \-V\fP
185
+ Use to run the initial chef\-client run at the \fBdebug\fP log\-level (e.g. \fBchef\-client \-l debug\fP).
186
+ .TP
187
+ .B \fB\-x USERNAME\fP, \fB\-\-ssh\-user USERNAME\fP
188
+ The SSH user name.
189
+ .UNINDENT
190
+ .sp
191
+ \fBExamples\fP
192
+ .INDENT 0.0
193
+ .INDENT 3.5
194
+ .sp
195
+ .nf
196
+ .ft C
197
+ $ knife bootstrap 192.168.1.1 \-x username \-P PASSWORD \-\-sudo
198
+ .ft P
199
+ .fi
200
+ .UNINDENT
201
+ .UNINDENT
202
+ .INDENT 0.0
203
+ .INDENT 3.5
204
+ .sp
205
+ .nf
206
+ .ft C
207
+ $ knife bootstrap 192.168.1.1 \-x username \-i ~/.ssh/id_rsa \-\-sudo
208
+ .ft P
209
+ .fi
210
+ .UNINDENT
211
+ .UNINDENT
212
+ .SH AUTHOR
213
+ Chef
214
+ .\" Generated by docutils manpage writer.
215
+ .
@@ -1,443 +1,443 @@
1
- .\" Man page generated from reStructuredText.
2
- .
3
- .TH "KNIFE-CLIENT" "1" "Chef 12.0" "" "knife client"
4
- .SH NAME
5
- knife-client \- The man page for the knife client subcommand.
6
- .
7
- .nr rst2man-indent-level 0
8
- .
9
- .de1 rstReportMargin
10
- \\$1 \\n[an-margin]
11
- level \\n[rst2man-indent-level]
12
- level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
13
- -
14
- \\n[rst2man-indent0]
15
- \\n[rst2man-indent1]
16
- \\n[rst2man-indent2]
17
- ..
18
- .de1 INDENT
19
- .\" .rstReportMargin pre:
20
- . RS \\$1
21
- . nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin]
22
- . nr rst2man-indent-level +1
23
- .\" .rstReportMargin post:
24
- ..
25
- .de UNINDENT
26
- . RE
27
- .\" indent \\n[an-margin]
28
- .\" old: \\n[rst2man-indent\\n[rst2man-indent-level]]
29
- .nr rst2man-indent-level -1
30
- .\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
31
- .in \\n[rst2man-indent\\n[rst2man-indent-level]]u
32
- ..
33
- .sp
34
- Every request made by the chef\-client to the Chef server must be an authenticated request using the Chef server API and a private key. When the chef\-client makes a request to the Chef server, the chef\-client authenticates each request using a private key located in \fB/etc/chef/client.pem\fP\&.
35
- .sp
36
- However, during the first chef\-client run, this private key does not exist. Instead, the chef\-client will attempt to use the private key assigned to the chef\-validator, located in \fB/etc/chef/validation.pem\fP\&. (If, for any reason, the chef\-validator is unable to make an authenticated request to the Chef server, the initial chef\-client run will fail.)
37
- .sp
38
- During the initial chef\-client run, the chef\-client will register with the Chef server using the private key assigned to the chef\-validator, after which the chef\-client will obtain a \fBclient.pem\fP private key for all future authentication requests to the Chef server\&.
39
- .sp
40
- After the initial chef\-client run has completed successfully, the chef\-validator is no longer required and may be deleted from the node. Use the \fBdelete_validation\fP recipe found in the \fBchef\-client\fP cookbook (\fI\%https://github.com/opscode\-cookbooks/chef\-client\fP) to remove the chef\-validator\&.
41
- .sp
42
- The \fBknife client\fP 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\&.
43
- .SH COMMON OPTIONS
44
- .sp
45
- The following options may be used with any of the arguments available to the \fBknife client\fP subcommand:
46
- .INDENT 0.0
47
- .TP
48
- .B \fB\-\-chef\-zero\-port PORT\fP
49
- The port on which chef\-zero will listen.
50
- .TP
51
- .B \fB\-c CONFIG_FILE\fP, \fB\-\-config CONFIG_FILE\fP
52
- The configuration file to use.
53
- .TP
54
- .B \fB\-d\fP, \fB\-\-disable\-editing\fP
55
- Use to prevent the $EDITOR from being opened and to accept data as\-is.
56
- .TP
57
- .B \fB\-\-defaults\fP
58
- Use to have knife use the default value instead of asking a user to provide one.
59
- .TP
60
- .B \fB\-e EDITOR\fP, \fB\-\-editor EDITOR\fP
61
- The $EDITOR that is used for all interactive commands.
62
- .TP
63
- .B \fB\-E ENVIRONMENT\fP, \fB\-\-environment ENVIRONMENT\fP
64
- The name of the environment. When this option is added to a command, the command will run only against the named environment.
65
- .TP
66
- .B \fB\-F FORMAT\fP, \fB\-\-format FORMAT\fP
67
- The output format: \fBsummary\fP (default), \fBtext\fP, \fBjson\fP, \fByaml\fP, and \fBpp\fP\&.
68
- .TP
69
- .B \fB\-h\fP, \fB\-\-help\fP
70
- Shows help for the command.
71
- .TP
72
- .B \fB\-k KEY\fP, \fB\-\-key KEY\fP
73
- The private key that knife will use to sign requests made by the API client to the Chef server\&.
74
- .TP
75
- .B \fB\-\-[no\-]color\fP
76
- Use to view colored output.
77
- .TP
78
- .B \fB\-\-print\-after\fP
79
- Use to show data after a destructive operation.
80
- .TP
81
- .B \fB\-s URL\fP, \fB\-\-server\-url URL\fP
82
- The URL for the Chef server\&.
83
- .TP
84
- .B \fB\-u USER\fP, \fB\-\-user USER\fP
85
- The user name used by knife to sign requests made by the API client to the Chef server\&. Authentication will fail if the user name does not match the private key.
86
- .TP
87
- .B \fB\-V\fP, \fB\-\-verbose\fP
88
- Set for more verbose outputs. Use \fB\-VV\fP for maximum verbosity.
89
- .TP
90
- .B \fB\-v\fP, \fB\-\-version\fP
91
- The version of the chef\-client\&.
92
- .TP
93
- .B \fB\-y\fP, \fB\-\-yes\fP
94
- Use to respond to all confirmation prompts with "Yes". knife will not ask for confirmation.
95
- .TP
96
- .B \fB\-z\fP, \fB\-\-local\-mode\fP
97
- Use to run the chef\-client in local mode. This allows all commands that work against the Chef server to also work against the local chef\-repo\&.
98
- .UNINDENT
99
- .SH BULK DELETE
100
- .sp
101
- The \fBbulk delete\fP argument is used to delete any API client that matches a pattern defined by a regular expression. The regular expression must be within quotes and not be surrounded by forward slashes (\fB/\fP).
102
- .sp
103
- \fBSyntax\fP
104
- .sp
105
- This argument has the following syntax:
106
- .INDENT 0.0
107
- .INDENT 3.5
108
- .sp
109
- .nf
110
- .ft C
111
- $ knife client bulk delete REGEX
112
- .ft P
113
- .fi
114
- .UNINDENT
115
- .UNINDENT
116
- .sp
117
- \fBOptions\fP
118
- .sp
119
- This command does not have any specific options.
120
- .SH CREATE
121
- .sp
122
- The \fBcreate\fP argument is used to create a new API client\&. This process will generate an RSA key pair for the named API client\&. The public key will be stored on the Chef server and the private key will be displayed on \fBSTDOUT\fP or written to a named file.
123
- .INDENT 0.0
124
- .IP \(bu 2
125
- For the chef\-client, the private key should be copied to the system as \fB/etc/chef/client.pem\fP\&.
126
- .IP \(bu 2
127
- For knife, the private key is typically copied to \fB~/.chef/client_name.pem\fP and referenced in the knife.rb configuration file.
128
- .UNINDENT
129
- .sp
130
- \fBSyntax\fP
131
- .sp
132
- This argument has the following syntax:
133
- .INDENT 0.0
134
- .INDENT 3.5
135
- .sp
136
- .nf
137
- .ft C
138
- $ knife client create CLIENT_NAME (options)
139
- .ft P
140
- .fi
141
- .UNINDENT
142
- .UNINDENT
143
- .sp
144
- \fBOptions\fP
145
- .sp
146
- This argument has the following options:
147
- .INDENT 0.0
148
- .TP
149
- .B \fB\-a\fP, \fB\-\-admin\fP
150
- Use to create a client as an admin client. This is required for any user to access Open Source Chef as an administrator. This option only works when used with the open source Chef server and will have no effect when used with Enterprise Chef\&.
151
- .TP
152
- .B \fB\-f FILE\fP, \fB\-\-file FILE\fP
153
- Use to save a private key to the specified file name.
154
- .TP
155
- .B \fB\-\-validator\fP
156
- Use to create the client as the chef\-validator\&. Default value: \fBtrue\fP\&.
157
- .UNINDENT
158
- .sp
159
- \fBExamples\fP
160
- .sp
161
- To create a chef\-client that can access the Chef server API as an administrator\-\-\-sometimes referred to as an "API chef\-client"\-\-\-with the name "exampleorg" and save its private key to a file, enter:
162
- .INDENT 0.0
163
- .INDENT 3.5
164
- .sp
165
- .nf
166
- .ft C
167
- $ knife client create exampleorg \-a \-f "/etc/chef/client.pem"
168
- .ft P
169
- .fi
170
- .UNINDENT
171
- .UNINDENT
172
- .sp
173
- When running the \fBcreate\fP argument on Enterprise Chef, be sure to omit the \fB\-a\fP option:
174
- .INDENT 0.0
175
- .INDENT 3.5
176
- .sp
177
- .nf
178
- .ft C
179
- $ knife client create exampleorg \-f "/etc/chef/client.pem"
180
- .ft P
181
- .fi
182
- .UNINDENT
183
- .UNINDENT
184
- .SH DELETE
185
- .sp
186
- The \fBdelete\fP argument is used to delete a registered API client\&.
187
- .sp
188
- \fBSyntax\fP
189
- .sp
190
- This argument has the following syntax:
191
- .INDENT 0.0
192
- .INDENT 3.5
193
- .sp
194
- .nf
195
- .ft C
196
- $ knife client delete CLIENT_NAME
197
- .ft P
198
- .fi
199
- .UNINDENT
200
- .UNINDENT
201
- .sp
202
- \fBOptions\fP
203
- .sp
204
- This command does not have any specific options.
205
- .sp
206
- \fBExamples\fP
207
- .sp
208
- To delete a client with the name "client_foo", enter:
209
- .INDENT 0.0
210
- .INDENT 3.5
211
- .sp
212
- .nf
213
- .ft C
214
- $ knife client delete client_foo
215
- .ft P
216
- .fi
217
- .UNINDENT
218
- .UNINDENT
219
- .sp
220
- Type \fBY\fP to confirm a deletion.
221
- .SH EDIT
222
- .sp
223
- The \fBedit\fP argument is used to edit the details of a registered API client\&. When this argument is run, knife will open $EDITOR to enable editing of the \fBadmin\fP attribute. (None of the other attributes should be changed using this argument.) When finished, knife will update the Chef server with those changes.
224
- .sp
225
- \fBSyntax\fP
226
- .sp
227
- This argument has the following syntax:
228
- .INDENT 0.0
229
- .INDENT 3.5
230
- .sp
231
- .nf
232
- .ft C
233
- $ knife client edit CLIENT_NAME
234
- .ft P
235
- .fi
236
- .UNINDENT
237
- .UNINDENT
238
- .sp
239
- \fBOptions\fP
240
- .sp
241
- This command does not have any specific options.
242
- .sp
243
- \fBExamples\fP
244
- .sp
245
- To edit a client with the name "exampleorg", enter:
246
- .INDENT 0.0
247
- .INDENT 3.5
248
- .sp
249
- .nf
250
- .ft C
251
- $ knife client edit exampleorg
252
- .ft P
253
- .fi
254
- .UNINDENT
255
- .UNINDENT
256
- .SH LIST
257
- .sp
258
- The \fBlist\fP argument is used to view a list of registered API client\&.
259
- .sp
260
- \fBSyntax\fP
261
- .sp
262
- This argument has the following syntax:
263
- .INDENT 0.0
264
- .INDENT 3.5
265
- .sp
266
- .nf
267
- .ft C
268
- $ knife client list (options)
269
- .ft P
270
- .fi
271
- .UNINDENT
272
- .UNINDENT
273
- .sp
274
- \fBOptions\fP
275
- .sp
276
- This argument has the following options:
277
- .INDENT 0.0
278
- .TP
279
- .B \fB\-w\fP, \fB\-\-with\-uri\fP
280
- Use to show the corresponding URIs.
281
- .UNINDENT
282
- .sp
283
- \fBExamples\fP
284
- .sp
285
- To verify the API client list for the Chef server, enter:
286
- .INDENT 0.0
287
- .INDENT 3.5
288
- .sp
289
- .nf
290
- .ft C
291
- $ knife client list
292
- .ft P
293
- .fi
294
- .UNINDENT
295
- .UNINDENT
296
- .sp
297
- to return something similar to:
298
- .INDENT 0.0
299
- .INDENT 3.5
300
- .sp
301
- .nf
302
- .ft C
303
- exampleorg
304
- i\-12345678
305
- rs\-123456
306
- .ft P
307
- .fi
308
- .UNINDENT
309
- .UNINDENT
310
- .sp
311
- To verify that an API client can authenticate to the
312
- Chef server correctly, try getting a list of clients using \fB\-u\fP and \fB\-k\fP options to specify its name and private key:
313
- .INDENT 0.0
314
- .INDENT 3.5
315
- .sp
316
- .nf
317
- .ft C
318
- $ knife client list \-u ORGNAME \-k .chef/ORGNAME.pem
319
- .ft P
320
- .fi
321
- .UNINDENT
322
- .UNINDENT
323
- .SH REREGISTER
324
- .sp
325
- The \fBreregister\fP argument is used to regenerate an RSA key pair for an API client\&. The public key will be stored on the Chef server and the private key will be displayed on \fBSTDOUT\fP or written to a named file.
326
- .sp
327
- \fBNOTE:\fP
328
- .INDENT 0.0
329
- .INDENT 3.5
330
- Running this argument will invalidate the previous RSA key pair, making it unusable during authentication to the Chef server\&.
331
- .UNINDENT
332
- .UNINDENT
333
- .sp
334
- \fBSyntax\fP
335
- .sp
336
- This argument has the following syntax:
337
- .INDENT 0.0
338
- .INDENT 3.5
339
- .sp
340
- .nf
341
- .ft C
342
- $ knife client reregister CLIENT_NAME (options)
343
- .ft P
344
- .fi
345
- .UNINDENT
346
- .UNINDENT
347
- .sp
348
- \fBOptions\fP
349
- .sp
350
- This argument has the following options:
351
- .INDENT 0.0
352
- .TP
353
- .B \fB\-f FILE_NAME\fP, \fB\-\-file FILE_NAME\fP
354
- Use to save a private key to the specified file name.
355
- .UNINDENT
356
- .sp
357
- \fBExamples\fP
358
- .sp
359
- To regenerate the RSA key pair for a client named "testclient" and save it to a file named "rsa_key", enter:
360
- .INDENT 0.0
361
- .INDENT 3.5
362
- .sp
363
- .nf
364
- .ft C
365
- $ knife client regenerate testclient \-f rsa_key
366
- .ft P
367
- .fi
368
- .UNINDENT
369
- .UNINDENT
370
- .SH SHOW
371
- .sp
372
- The \fBshow\fP argument is used to show the details of an API client\&.
373
- .sp
374
- \fBSyntax\fP
375
- .sp
376
- This argument has the following syntax:
377
- .INDENT 0.0
378
- .INDENT 3.5
379
- .sp
380
- .nf
381
- .ft C
382
- $ knife client show CLIENT_NAME (options)
383
- .ft P
384
- .fi
385
- .UNINDENT
386
- .UNINDENT
387
- .sp
388
- \fBOptions\fP
389
- .sp
390
- This argument has the following options:
391
- .INDENT 0.0
392
- .TP
393
- .B \fB\-a ATTR\fP, \fB\-\-attribute ATTR\fP
394
- The attribute (or attributes) to show.
395
- .UNINDENT
396
- .sp
397
- \fBExamples\fP
398
- .sp
399
- To view a client named "testclient", enter:
400
- .INDENT 0.0
401
- .INDENT 3.5
402
- .sp
403
- .nf
404
- .ft C
405
- $ knife client show testclient
406
- .ft P
407
- .fi
408
- .UNINDENT
409
- .UNINDENT
410
- .sp
411
- to return something like:
412
- .INDENT 0.0
413
- .INDENT 3.5
414
- .sp
415
- .nf
416
- .ft C
417
- admin: false
418
- chef_type: client
419
- json_class: Chef::ApiClient
420
- name: testclient
421
- public_key:
422
- .ft P
423
- .fi
424
- .UNINDENT
425
- .UNINDENT
426
- .sp
427
- To view information in JSON format, use the \fB\-F\fP common option as part of the command like this:
428
- .INDENT 0.0
429
- .INDENT 3.5
430
- .sp
431
- .nf
432
- .ft C
433
- $ knife role show devops \-F json
434
- .ft P
435
- .fi
436
- .UNINDENT
437
- .UNINDENT
438
- .sp
439
- Other formats available include \fBtext\fP, \fByaml\fP, and \fBpp\fP\&.
440
- .SH AUTHOR
441
- Chef
442
- .\" Generated by docutils manpage writer.
443
- .
1
+ .\" Man page generated from reStructuredText.
2
+ .
3
+ .TH "KNIFE-CLIENT" "1" "Chef 12.0" "" "knife client"
4
+ .SH NAME
5
+ knife-client \- The man page for the knife client subcommand.
6
+ .
7
+ .nr rst2man-indent-level 0
8
+ .
9
+ .de1 rstReportMargin
10
+ \\$1 \\n[an-margin]
11
+ level \\n[rst2man-indent-level]
12
+ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
13
+ -
14
+ \\n[rst2man-indent0]
15
+ \\n[rst2man-indent1]
16
+ \\n[rst2man-indent2]
17
+ ..
18
+ .de1 INDENT
19
+ .\" .rstReportMargin pre:
20
+ . RS \\$1
21
+ . nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin]
22
+ . nr rst2man-indent-level +1
23
+ .\" .rstReportMargin post:
24
+ ..
25
+ .de UNINDENT
26
+ . RE
27
+ .\" indent \\n[an-margin]
28
+ .\" old: \\n[rst2man-indent\\n[rst2man-indent-level]]
29
+ .nr rst2man-indent-level -1
30
+ .\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
31
+ .in \\n[rst2man-indent\\n[rst2man-indent-level]]u
32
+ ..
33
+ .sp
34
+ Every request made by the chef\-client to the Chef server must be an authenticated request using the Chef server API and a private key. When the chef\-client makes a request to the Chef server, the chef\-client authenticates each request using a private key located in \fB/etc/chef/client.pem\fP\&.
35
+ .sp
36
+ However, during the first chef\-client run, this private key does not exist. Instead, the chef\-client will attempt to use the private key assigned to the chef\-validator, located in \fB/etc/chef/validation.pem\fP\&. (If, for any reason, the chef\-validator is unable to make an authenticated request to the Chef server, the initial chef\-client run will fail.)
37
+ .sp
38
+ During the initial chef\-client run, the chef\-client will register with the Chef server using the private key assigned to the chef\-validator, after which the chef\-client will obtain a \fBclient.pem\fP private key for all future authentication requests to the Chef server\&.
39
+ .sp
40
+ After the initial chef\-client run has completed successfully, the chef\-validator is no longer required and may be deleted from the node. Use the \fBdelete_validation\fP recipe found in the \fBchef\-client\fP cookbook (\fI\%https://github.com/opscode\-cookbooks/chef\-client\fP) to remove the chef\-validator\&.
41
+ .sp
42
+ The \fBknife client\fP 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\&.
43
+ .SH COMMON OPTIONS
44
+ .sp
45
+ The following options may be used with any of the arguments available to the \fBknife client\fP subcommand:
46
+ .INDENT 0.0
47
+ .TP
48
+ .B \fB\-\-chef\-zero\-port PORT\fP
49
+ The port on which chef\-zero will listen.
50
+ .TP
51
+ .B \fB\-c CONFIG_FILE\fP, \fB\-\-config CONFIG_FILE\fP
52
+ The configuration file to use.
53
+ .TP
54
+ .B \fB\-d\fP, \fB\-\-disable\-editing\fP
55
+ Use to prevent the $EDITOR from being opened and to accept data as\-is.
56
+ .TP
57
+ .B \fB\-\-defaults\fP
58
+ Use to have knife use the default value instead of asking a user to provide one.
59
+ .TP
60
+ .B \fB\-e EDITOR\fP, \fB\-\-editor EDITOR\fP
61
+ The $EDITOR that is used for all interactive commands.
62
+ .TP
63
+ .B \fB\-E ENVIRONMENT\fP, \fB\-\-environment ENVIRONMENT\fP
64
+ The name of the environment. When this option is added to a command, the command will run only against the named environment.
65
+ .TP
66
+ .B \fB\-F FORMAT\fP, \fB\-\-format FORMAT\fP
67
+ The output format: \fBsummary\fP (default), \fBtext\fP, \fBjson\fP, \fByaml\fP, and \fBpp\fP\&.
68
+ .TP
69
+ .B \fB\-h\fP, \fB\-\-help\fP
70
+ Shows help for the command.
71
+ .TP
72
+ .B \fB\-k KEY\fP, \fB\-\-key KEY\fP
73
+ The private key that knife will use to sign requests made by the API client to the Chef server\&.
74
+ .TP
75
+ .B \fB\-\-[no\-]color\fP
76
+ Use to view colored output.
77
+ .TP
78
+ .B \fB\-\-print\-after\fP
79
+ Use to show data after a destructive operation.
80
+ .TP
81
+ .B \fB\-s URL\fP, \fB\-\-server\-url URL\fP
82
+ The URL for the Chef server\&.
83
+ .TP
84
+ .B \fB\-u USER\fP, \fB\-\-user USER\fP
85
+ The user name used by knife to sign requests made by the API client to the Chef server\&. Authentication will fail if the user name does not match the private key.
86
+ .TP
87
+ .B \fB\-V\fP, \fB\-\-verbose\fP
88
+ Set for more verbose outputs. Use \fB\-VV\fP for maximum verbosity.
89
+ .TP
90
+ .B \fB\-v\fP, \fB\-\-version\fP
91
+ The version of the chef\-client\&.
92
+ .TP
93
+ .B \fB\-y\fP, \fB\-\-yes\fP
94
+ Use to respond to all confirmation prompts with "Yes". knife will not ask for confirmation.
95
+ .TP
96
+ .B \fB\-z\fP, \fB\-\-local\-mode\fP
97
+ Use to run the chef\-client in local mode. This allows all commands that work against the Chef server to also work against the local chef\-repo\&.
98
+ .UNINDENT
99
+ .SH BULK DELETE
100
+ .sp
101
+ The \fBbulk delete\fP argument is used to delete any API client that matches a pattern defined by a regular expression. The regular expression must be within quotes and not be surrounded by forward slashes (\fB/\fP).
102
+ .sp
103
+ \fBSyntax\fP
104
+ .sp
105
+ This argument has the following syntax:
106
+ .INDENT 0.0
107
+ .INDENT 3.5
108
+ .sp
109
+ .nf
110
+ .ft C
111
+ $ knife client bulk delete REGEX
112
+ .ft P
113
+ .fi
114
+ .UNINDENT
115
+ .UNINDENT
116
+ .sp
117
+ \fBOptions\fP
118
+ .sp
119
+ This command does not have any specific options.
120
+ .SH CREATE
121
+ .sp
122
+ The \fBcreate\fP argument is used to create a new API client\&. This process will generate an RSA key pair for the named API client\&. The public key will be stored on the Chef server and the private key will be displayed on \fBSTDOUT\fP or written to a named file.
123
+ .INDENT 0.0
124
+ .IP \(bu 2
125
+ For the chef\-client, the private key should be copied to the system as \fB/etc/chef/client.pem\fP\&.
126
+ .IP \(bu 2
127
+ For knife, the private key is typically copied to \fB~/.chef/client_name.pem\fP and referenced in the knife.rb configuration file.
128
+ .UNINDENT
129
+ .sp
130
+ \fBSyntax\fP
131
+ .sp
132
+ This argument has the following syntax:
133
+ .INDENT 0.0
134
+ .INDENT 3.5
135
+ .sp
136
+ .nf
137
+ .ft C
138
+ $ knife client create CLIENT_NAME (options)
139
+ .ft P
140
+ .fi
141
+ .UNINDENT
142
+ .UNINDENT
143
+ .sp
144
+ \fBOptions\fP
145
+ .sp
146
+ This argument has the following options:
147
+ .INDENT 0.0
148
+ .TP
149
+ .B \fB\-a\fP, \fB\-\-admin\fP
150
+ Use to create a client as an admin client. This is required for any user to access Open Source Chef as an administrator. This option only works when used with the open source Chef server and will have no effect when used with Enterprise Chef\&.
151
+ .TP
152
+ .B \fB\-f FILE\fP, \fB\-\-file FILE\fP
153
+ Use to save a private key to the specified file name.
154
+ .TP
155
+ .B \fB\-\-validator\fP
156
+ Use to create the client as the chef\-validator\&. Default value: \fBtrue\fP\&.
157
+ .UNINDENT
158
+ .sp
159
+ \fBExamples\fP
160
+ .sp
161
+ To create a chef\-client that can access the Chef server API as an administrator\-\-\-sometimes referred to as an "API chef\-client"\-\-\-with the name "exampleorg" and save its private key to a file, enter:
162
+ .INDENT 0.0
163
+ .INDENT 3.5
164
+ .sp
165
+ .nf
166
+ .ft C
167
+ $ knife client create exampleorg \-a \-f "/etc/chef/client.pem"
168
+ .ft P
169
+ .fi
170
+ .UNINDENT
171
+ .UNINDENT
172
+ .sp
173
+ When running the \fBcreate\fP argument on Enterprise Chef, be sure to omit the \fB\-a\fP option:
174
+ .INDENT 0.0
175
+ .INDENT 3.5
176
+ .sp
177
+ .nf
178
+ .ft C
179
+ $ knife client create exampleorg \-f "/etc/chef/client.pem"
180
+ .ft P
181
+ .fi
182
+ .UNINDENT
183
+ .UNINDENT
184
+ .SH DELETE
185
+ .sp
186
+ The \fBdelete\fP argument is used to delete a registered API client\&.
187
+ .sp
188
+ \fBSyntax\fP
189
+ .sp
190
+ This argument has the following syntax:
191
+ .INDENT 0.0
192
+ .INDENT 3.5
193
+ .sp
194
+ .nf
195
+ .ft C
196
+ $ knife client delete CLIENT_NAME
197
+ .ft P
198
+ .fi
199
+ .UNINDENT
200
+ .UNINDENT
201
+ .sp
202
+ \fBOptions\fP
203
+ .sp
204
+ This command does not have any specific options.
205
+ .sp
206
+ \fBExamples\fP
207
+ .sp
208
+ To delete a client with the name "client_foo", enter:
209
+ .INDENT 0.0
210
+ .INDENT 3.5
211
+ .sp
212
+ .nf
213
+ .ft C
214
+ $ knife client delete client_foo
215
+ .ft P
216
+ .fi
217
+ .UNINDENT
218
+ .UNINDENT
219
+ .sp
220
+ Type \fBY\fP to confirm a deletion.
221
+ .SH EDIT
222
+ .sp
223
+ The \fBedit\fP argument is used to edit the details of a registered API client\&. When this argument is run, knife will open $EDITOR to enable editing of the \fBadmin\fP attribute. (None of the other attributes should be changed using this argument.) When finished, knife will update the Chef server with those changes.
224
+ .sp
225
+ \fBSyntax\fP
226
+ .sp
227
+ This argument has the following syntax:
228
+ .INDENT 0.0
229
+ .INDENT 3.5
230
+ .sp
231
+ .nf
232
+ .ft C
233
+ $ knife client edit CLIENT_NAME
234
+ .ft P
235
+ .fi
236
+ .UNINDENT
237
+ .UNINDENT
238
+ .sp
239
+ \fBOptions\fP
240
+ .sp
241
+ This command does not have any specific options.
242
+ .sp
243
+ \fBExamples\fP
244
+ .sp
245
+ To edit a client with the name "exampleorg", enter:
246
+ .INDENT 0.0
247
+ .INDENT 3.5
248
+ .sp
249
+ .nf
250
+ .ft C
251
+ $ knife client edit exampleorg
252
+ .ft P
253
+ .fi
254
+ .UNINDENT
255
+ .UNINDENT
256
+ .SH LIST
257
+ .sp
258
+ The \fBlist\fP argument is used to view a list of registered API client\&.
259
+ .sp
260
+ \fBSyntax\fP
261
+ .sp
262
+ This argument has the following syntax:
263
+ .INDENT 0.0
264
+ .INDENT 3.5
265
+ .sp
266
+ .nf
267
+ .ft C
268
+ $ knife client list (options)
269
+ .ft P
270
+ .fi
271
+ .UNINDENT
272
+ .UNINDENT
273
+ .sp
274
+ \fBOptions\fP
275
+ .sp
276
+ This argument has the following options:
277
+ .INDENT 0.0
278
+ .TP
279
+ .B \fB\-w\fP, \fB\-\-with\-uri\fP
280
+ Use to show the corresponding URIs.
281
+ .UNINDENT
282
+ .sp
283
+ \fBExamples\fP
284
+ .sp
285
+ To verify the API client list for the Chef server, enter:
286
+ .INDENT 0.0
287
+ .INDENT 3.5
288
+ .sp
289
+ .nf
290
+ .ft C
291
+ $ knife client list
292
+ .ft P
293
+ .fi
294
+ .UNINDENT
295
+ .UNINDENT
296
+ .sp
297
+ to return something similar to:
298
+ .INDENT 0.0
299
+ .INDENT 3.5
300
+ .sp
301
+ .nf
302
+ .ft C
303
+ exampleorg
304
+ i\-12345678
305
+ rs\-123456
306
+ .ft P
307
+ .fi
308
+ .UNINDENT
309
+ .UNINDENT
310
+ .sp
311
+ To verify that an API client can authenticate to the
312
+ Chef server correctly, try getting a list of clients using \fB\-u\fP and \fB\-k\fP options to specify its name and private key:
313
+ .INDENT 0.0
314
+ .INDENT 3.5
315
+ .sp
316
+ .nf
317
+ .ft C
318
+ $ knife client list \-u ORGNAME \-k .chef/ORGNAME.pem
319
+ .ft P
320
+ .fi
321
+ .UNINDENT
322
+ .UNINDENT
323
+ .SH REREGISTER
324
+ .sp
325
+ The \fBreregister\fP argument is used to regenerate an RSA key pair for an API client\&. The public key will be stored on the Chef server and the private key will be displayed on \fBSTDOUT\fP or written to a named file.
326
+ .sp
327
+ \fBNOTE:\fP
328
+ .INDENT 0.0
329
+ .INDENT 3.5
330
+ Running this argument will invalidate the previous RSA key pair, making it unusable during authentication to the Chef server\&.
331
+ .UNINDENT
332
+ .UNINDENT
333
+ .sp
334
+ \fBSyntax\fP
335
+ .sp
336
+ This argument has the following syntax:
337
+ .INDENT 0.0
338
+ .INDENT 3.5
339
+ .sp
340
+ .nf
341
+ .ft C
342
+ $ knife client reregister CLIENT_NAME (options)
343
+ .ft P
344
+ .fi
345
+ .UNINDENT
346
+ .UNINDENT
347
+ .sp
348
+ \fBOptions\fP
349
+ .sp
350
+ This argument has the following options:
351
+ .INDENT 0.0
352
+ .TP
353
+ .B \fB\-f FILE_NAME\fP, \fB\-\-file FILE_NAME\fP
354
+ Use to save a private key to the specified file name.
355
+ .UNINDENT
356
+ .sp
357
+ \fBExamples\fP
358
+ .sp
359
+ To regenerate the RSA key pair for a client named "testclient" and save it to a file named "rsa_key", enter:
360
+ .INDENT 0.0
361
+ .INDENT 3.5
362
+ .sp
363
+ .nf
364
+ .ft C
365
+ $ knife client regenerate testclient \-f rsa_key
366
+ .ft P
367
+ .fi
368
+ .UNINDENT
369
+ .UNINDENT
370
+ .SH SHOW
371
+ .sp
372
+ The \fBshow\fP argument is used to show the details of an API client\&.
373
+ .sp
374
+ \fBSyntax\fP
375
+ .sp
376
+ This argument has the following syntax:
377
+ .INDENT 0.0
378
+ .INDENT 3.5
379
+ .sp
380
+ .nf
381
+ .ft C
382
+ $ knife client show CLIENT_NAME (options)
383
+ .ft P
384
+ .fi
385
+ .UNINDENT
386
+ .UNINDENT
387
+ .sp
388
+ \fBOptions\fP
389
+ .sp
390
+ This argument has the following options:
391
+ .INDENT 0.0
392
+ .TP
393
+ .B \fB\-a ATTR\fP, \fB\-\-attribute ATTR\fP
394
+ The attribute (or attributes) to show.
395
+ .UNINDENT
396
+ .sp
397
+ \fBExamples\fP
398
+ .sp
399
+ To view a client named "testclient", enter:
400
+ .INDENT 0.0
401
+ .INDENT 3.5
402
+ .sp
403
+ .nf
404
+ .ft C
405
+ $ knife client show testclient
406
+ .ft P
407
+ .fi
408
+ .UNINDENT
409
+ .UNINDENT
410
+ .sp
411
+ to return something like:
412
+ .INDENT 0.0
413
+ .INDENT 3.5
414
+ .sp
415
+ .nf
416
+ .ft C
417
+ admin: false
418
+ chef_type: client
419
+ json_class: Chef::ApiClient
420
+ name: testclient
421
+ public_key:
422
+ .ft P
423
+ .fi
424
+ .UNINDENT
425
+ .UNINDENT
426
+ .sp
427
+ To view information in JSON format, use the \fB\-F\fP common option as part of the command like this:
428
+ .INDENT 0.0
429
+ .INDENT 3.5
430
+ .sp
431
+ .nf
432
+ .ft C
433
+ $ knife role show devops \-F json
434
+ .ft P
435
+ .fi
436
+ .UNINDENT
437
+ .UNINDENT
438
+ .sp
439
+ Other formats available include \fBtext\fP, \fByaml\fP, and \fBpp\fP\&.
440
+ .SH AUTHOR
441
+ Chef
442
+ .\" Generated by docutils manpage writer.
443
+ .