chef 12.12.15-universal-mingw32 → 12.13.30-universal-mingw32

Sign up to get free protection for your applications and to get access to all the features.
Files changed (412) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +5 -0
  3. data/LICENSE +201 -201
  4. data/VERSION +1 -1
  5. data/acceptance/.gitignore +2 -0
  6. data/acceptance/.shared/kitchen_acceptance/.kitchen.ec2.yml +1 -12
  7. data/acceptance/.shared/kitchen_acceptance/libraries/kitchen.rb +29 -12
  8. data/acceptance/Gemfile +6 -3
  9. data/acceptance/Gemfile.lock +109 -67
  10. data/acceptance/top-cookbooks/.acceptance/acceptance-cookbook/libraries/top_cookbooks.rb +2 -2
  11. data/acceptance/trivial/.kitchen.yml +1 -1
  12. data/acceptance/windows-service/.acceptance/acceptance-cookbook/recipes/destroy.rb +1 -1
  13. data/acceptance/windows-service/.acceptance/acceptance-cookbook/recipes/provision.rb +1 -1
  14. data/acceptance/windows-service/.acceptance/acceptance-cookbook/recipes/verify.rb +1 -1
  15. data/acceptance/windows-service/test/integration/chef-windows-service/inspec/chef_windows_service_spec.rb +4 -4
  16. data/bin/chef-apply +0 -0
  17. data/bin/chef-client +0 -0
  18. data/bin/chef-service-manager +0 -0
  19. data/bin/chef-shell +0 -0
  20. data/bin/chef-solo +0 -0
  21. data/bin/chef-windows-service +0 -0
  22. data/bin/knife +0 -0
  23. data/chef.gemspec +4 -3
  24. data/distro/common/html/_sources/ctl_chef_client.txt +35 -35
  25. data/distro/common/html/_sources/ctl_chef_server.txt +341 -341
  26. data/distro/common/html/_sources/ctl_chef_shell.txt +15 -15
  27. data/distro/common/html/_sources/ctl_chef_solo.txt +25 -25
  28. data/distro/common/html/_sources/index.txt +135 -135
  29. data/distro/common/html/_sources/knife.txt +74 -74
  30. data/distro/common/html/_sources/knife_bootstrap.txt +56 -56
  31. data/distro/common/html/_sources/knife_client.txt +150 -150
  32. data/distro/common/html/_sources/knife_common_options.txt +6 -6
  33. data/distro/common/html/_sources/knife_configure.txt +29 -29
  34. data/distro/common/html/_sources/knife_cookbook.txt +236 -236
  35. data/distro/common/html/_sources/knife_cookbook_site.txt +157 -157
  36. data/distro/common/html/_sources/knife_data_bag.txt +159 -159
  37. data/distro/common/html/_sources/knife_delete.txt +26 -26
  38. data/distro/common/html/_sources/knife_deps.txt +61 -61
  39. data/distro/common/html/_sources/knife_diff.txt +34 -34
  40. data/distro/common/html/_sources/knife_download.txt +44 -44
  41. data/distro/common/html/_sources/knife_edit.txt +26 -26
  42. data/distro/common/html/_sources/knife_environment.txt +158 -158
  43. data/distro/common/html/_sources/knife_exec.txt +47 -47
  44. data/distro/common/html/_sources/knife_index_rebuild.txt +20 -20
  45. data/distro/common/html/_sources/knife_list.txt +33 -33
  46. data/distro/common/html/_sources/knife_node.txt +250 -250
  47. data/distro/common/html/_sources/knife_raw.txt +35 -35
  48. data/distro/common/html/_sources/knife_recipe_list.txt +23 -23
  49. data/distro/common/html/_sources/knife_role.txt +157 -157
  50. data/distro/common/html/_sources/knife_search.txt +53 -53
  51. data/distro/common/html/_sources/knife_serve.txt +18 -18
  52. data/distro/common/html/_sources/knife_show.txt +26 -26
  53. data/distro/common/html/_sources/knife_ssh.txt +43 -43
  54. data/distro/common/html/_sources/knife_ssl_check.txt +41 -41
  55. data/distro/common/html/_sources/knife_ssl_fetch.txt +41 -41
  56. data/distro/common/html/_sources/knife_status.txt +37 -37
  57. data/distro/common/html/_sources/knife_tag.txt +69 -69
  58. data/distro/common/html/_sources/knife_upload.txt +49 -49
  59. data/distro/common/html/_sources/knife_user.txt +127 -127
  60. data/distro/common/html/_sources/knife_using.txt +43 -43
  61. data/distro/common/html/_sources/knife_xargs.txt +30 -30
  62. data/distro/common/html/_static/guide.css +504 -504
  63. data/distro/common/html/_static/pygments.css +61 -61
  64. data/distro/common/html/_static/underscore.js +31 -31
  65. data/distro/common/html/ctl_chef_client.html +269 -269
  66. data/distro/common/html/ctl_chef_server.html +727 -727
  67. data/distro/common/html/ctl_chef_shell.html +162 -162
  68. data/distro/common/html/ctl_chef_solo.html +193 -193
  69. data/distro/common/html/index.html +201 -201
  70. data/distro/common/html/knife.html +169 -169
  71. data/distro/common/html/knife_bootstrap.html +284 -284
  72. data/distro/common/html/knife_client.html +284 -284
  73. data/distro/common/html/knife_common_options.html +95 -95
  74. data/distro/common/html/knife_configure.html +104 -104
  75. data/distro/common/html/knife_cookbook.html +486 -486
  76. data/distro/common/html/knife_data_bag.html +373 -373
  77. data/distro/common/html/knife_delete.html +92 -92
  78. data/distro/common/html/knife_deps.html +142 -142
  79. data/distro/common/html/knife_diff.html +122 -122
  80. data/distro/common/html/knife_download.html +144 -144
  81. data/distro/common/html/knife_edit.html +88 -88
  82. data/distro/common/html/knife_environment.html +325 -325
  83. data/distro/common/html/knife_exec.html +219 -219
  84. data/distro/common/html/knife_index_rebuild.html +82 -82
  85. data/distro/common/html/knife_list.html +113 -113
  86. data/distro/common/html/knife_node.html +457 -457
  87. data/distro/common/html/knife_raw.html +109 -109
  88. data/distro/common/html/knife_recipe_list.html +90 -90
  89. data/distro/common/html/knife_role.html +294 -294
  90. data/distro/common/html/knife_search.html +202 -202
  91. data/distro/common/html/knife_serve.html +78 -78
  92. data/distro/common/html/knife_show.html +103 -103
  93. data/distro/common/html/knife_ssh.html +176 -176
  94. data/distro/common/html/knife_ssl_check.html +150 -150
  95. data/distro/common/html/knife_ssl_fetch.html +150 -150
  96. data/distro/common/html/knife_status.html +143 -143
  97. data/distro/common/html/knife_tag.html +137 -137
  98. data/distro/common/html/knife_upload.html +152 -152
  99. data/distro/common/html/knife_user.html +241 -241
  100. data/distro/common/html/knife_using.html +209 -209
  101. data/distro/common/html/knife_xargs.html +121 -121
  102. data/distro/common/html/search.html +81 -81
  103. data/distro/common/man/man1/README.md +58 -58
  104. data/distro/common/man/man1/chef-shell.1 +194 -194
  105. data/distro/common/man/man1/knife-bootstrap.1 +215 -215
  106. data/distro/common/man/man1/knife-client.1 +443 -443
  107. data/distro/common/man/man1/knife-configure.1 +161 -161
  108. data/distro/common/man/man1/knife-cookbook.1 +770 -770
  109. data/distro/common/man/man1/knife-data-bag.1 +617 -617
  110. data/distro/common/man/man1/knife-delete.1 +127 -127
  111. data/distro/common/man/man1/knife-deps.1 +246 -246
  112. data/distro/common/man/man1/knife-diff.1 +226 -226
  113. data/distro/common/man/man1/knife-download.1 +258 -258
  114. data/distro/common/man/man1/knife-edit.1 +121 -121
  115. data/distro/common/man/man1/knife-environment.1 +508 -508
  116. data/distro/common/man/man1/knife-exec.1 +362 -362
  117. data/distro/common/man/man1/knife-index-rebuild.1 +63 -63
  118. data/distro/common/man/man1/knife-list.1 +174 -174
  119. data/distro/common/man/man1/knife-node.1 +716 -716
  120. data/distro/common/man/man1/knife-raw.1 +172 -172
  121. data/distro/common/man/man1/knife-recipe-list.1 +85 -85
  122. data/distro/common/man/man1/knife-role.1 +426 -426
  123. data/distro/common/man/man1/knife-search.1 +359 -359
  124. data/distro/common/man/man1/knife-serve.1 +109 -109
  125. data/distro/common/man/man1/knife-show.1 +160 -160
  126. data/distro/common/man/man1/knife-ssh.1 +284 -284
  127. data/distro/common/man/man1/knife-ssl-check.1 +207 -207
  128. data/distro/common/man/man1/knife-ssl-fetch.1 +207 -207
  129. data/distro/common/man/man1/knife-status.1 +234 -234
  130. data/distro/common/man/man1/knife-tag.1 +189 -189
  131. data/distro/common/man/man1/knife-upload.1 +280 -280
  132. data/distro/common/man/man1/knife-user.1 +356 -356
  133. data/distro/common/man/man1/knife-xargs.1 +189 -189
  134. data/distro/common/man/man1/knife.1 +332 -332
  135. data/distro/common/man/man8/chef-apply.8 +86 -86
  136. data/distro/common/man/man8/chef-client.8 +398 -398
  137. data/distro/common/man/man8/chef-solo.8 +260 -260
  138. data/distro/common/markdown/README +3 -3
  139. data/lib/chef/application.rb +23 -0
  140. data/lib/chef/application/client.rb +10 -2
  141. data/lib/chef/application/knife.rb +8 -0
  142. data/lib/chef/application/solo.rb +10 -2
  143. data/lib/chef/audit/audit_reporter.rb +5 -1
  144. data/lib/chef/audit/runner.rb +1 -1
  145. data/lib/chef/chef_fs/chef_fs_data_store.rb +1 -0
  146. data/lib/chef/chef_fs/file_system/repository/acls_dir.rb +4 -2
  147. data/lib/chef/chef_fs/file_system/repository/base_file.rb +3 -0
  148. data/lib/chef/chef_fs/file_system/repository/chef_repository_file_system_cookbook_entry.rb +1 -0
  149. data/lib/chef/chef_fs/file_system/repository/directory.rb +12 -1
  150. data/lib/chef/chef_fs/file_system_cache.rb +80 -0
  151. data/lib/chef/data_collector.rb +18 -1
  152. data/lib/chef/data_collector/resource_report.rb +1 -0
  153. data/lib/chef/decorator/unchain.rb +16 -0
  154. data/lib/chef/dsl/cheffish.rb +1 -0
  155. data/lib/chef/dsl/declare_resource.rb +9 -1
  156. data/lib/chef/file_access_control/windows.rb +3 -3
  157. data/lib/chef/knife/bootstrap.rb +9 -0
  158. data/lib/chef/knife/cookbook_site_install.rb +2 -11
  159. data/lib/chef/knife/cookbook_site_share.rb +7 -13
  160. data/lib/chef/knife/core/bootstrap_context.rb +10 -0
  161. data/lib/chef/knife/help_topics.rb +4 -4
  162. data/lib/chef/nil_argument.rb +3 -3
  163. data/lib/chef/node/attribute.rb +2 -2
  164. data/lib/chef/provider/apt_repository.rb +1 -1
  165. data/lib/chef/provider/apt_update.rb +12 -3
  166. data/lib/chef/provider/cron.rb +1 -1
  167. data/lib/chef/provider/package/aix.rb +5 -1
  168. data/lib/chef/provider/package/zypper.rb +7 -7
  169. data/lib/chef/provider/resource_update.rb +52 -52
  170. data/lib/chef/reserved_names.rb +9 -9
  171. data/lib/chef/resource.rb +13 -1
  172. data/lib/chef/resource/freebsd_package.rb +1 -1
  173. data/lib/chef/run_context.rb +15 -42
  174. data/lib/chef/sandbox.rb +20 -20
  175. data/lib/chef/version.rb +1 -1
  176. data/lib/chef/version_class.rb +7 -2
  177. data/lib/chef/win32/file.rb +4 -4
  178. data/lib/chef/win32/system.rb +0 -0
  179. data/spec/data/apt/chef-integration-test-1.0/debian/changelog +5 -5
  180. data/spec/data/apt/chef-integration-test-1.0/debian/compat +1 -1
  181. data/spec/data/apt/chef-integration-test-1.0/debian/control +13 -13
  182. data/spec/data/apt/chef-integration-test-1.0/debian/files +1 -1
  183. data/spec/data/apt/chef-integration-test-1.0/debian/rules +13 -13
  184. data/spec/data/apt/chef-integration-test-1.0/debian/source/format +1 -1
  185. data/spec/data/apt/chef-integration-test-1.1/debian/changelog +11 -11
  186. data/spec/data/apt/chef-integration-test-1.1/debian/compat +1 -1
  187. data/spec/data/apt/chef-integration-test-1.1/debian/control +13 -13
  188. data/spec/data/apt/chef-integration-test-1.1/debian/files +1 -1
  189. data/spec/data/apt/chef-integration-test-1.1/debian/rules +13 -13
  190. data/spec/data/apt/chef-integration-test-1.1/debian/source/format +1 -1
  191. data/spec/data/apt/chef-integration-test2-1.0/debian/rules +0 -0
  192. data/spec/data/apt/chef-integration-test_1.0-1_amd64.changes +22 -22
  193. data/spec/data/apt/chef-integration-test_1.1-1_amd64.changes +22 -22
  194. data/spec/data/apt/var/www/apt/conf/distributions +7 -7
  195. data/spec/data/apt/var/www/apt/conf/incoming +4 -4
  196. data/spec/data/apt/var/www/apt/conf/pulls +3 -3
  197. data/spec/data/apt/var/www/apt/db/version +4 -4
  198. data/spec/data/apt/var/www/apt/dists/sid/Release +19 -19
  199. data/spec/data/apt/var/www/apt/dists/sid/main/binary-amd64/Packages +16 -16
  200. data/spec/data/apt/var/www/apt/dists/sid/main/binary-amd64/Release +5 -5
  201. data/spec/data/bootstrap/encrypted_data_bag_secret +1 -1
  202. data/spec/data/bootstrap/no_proxy.erb +2 -2
  203. data/spec/data/bootstrap/secret.erb +9 -9
  204. data/spec/data/bootstrap/test-hints.erb +12 -12
  205. data/spec/data/bootstrap/test.erb +1 -1
  206. data/spec/data/cb_version_cookbooks/tatft/README.rdoc +2 -2
  207. data/spec/data/cb_version_cookbooks/tatft/attributes/default.rb +1 -1
  208. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-600hhz-0 +1 -1
  209. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-ahd2gq-0 +1 -1
  210. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-api8ux-0 +1 -1
  211. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-b0r1m1-0 +1 -1
  212. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-bfygsi-0 +1 -1
  213. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-el14l6-0 +1 -1
  214. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-ivrl3y-0 +1 -1
  215. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-kkbs85-0 +1 -1
  216. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-ory1ux-0 +1 -1
  217. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-pgsq76-0 +1 -1
  218. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-ra8uim-0 +1 -1
  219. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-t7k1g-0 +1 -1
  220. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-t8g0sv-0 +1 -1
  221. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-ufy6g3-0 +1 -1
  222. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-x2d6j9-0 +1 -1
  223. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-xi0l6h-0 +1 -1
  224. data/spec/data/config.rb +6 -6
  225. data/spec/data/cookbooks/angrybash/metadata.rb +2 -2
  226. data/spec/data/cookbooks/angrybash/recipes/default.rb +8 -8
  227. data/spec/data/cookbooks/apache2/files/default/apache2_module_conf_generate.pl +2 -2
  228. data/spec/data/cookbooks/apache2/metadata.rb +2 -2
  229. data/spec/data/cookbooks/apache2/recipes/default.rb +2 -2
  230. data/spec/data/cookbooks/borken/metadata.rb +2 -2
  231. data/spec/data/cookbooks/borken/recipes/default.rb +1 -1
  232. data/spec/data/cookbooks/borken/templates/default/borken.erb +1 -1
  233. data/spec/data/cookbooks/chefignore +8 -8
  234. data/spec/data/cookbooks/ignorken/files/default/not_me.rb +2 -2
  235. data/spec/data/cookbooks/ignorken/metadata.rb +2 -2
  236. data/spec/data/cookbooks/ignorken/recipes/ignoreme.rb +1 -1
  237. data/spec/data/cookbooks/ignorken/templates/ubuntu-12.10/not_me.rb +2 -2
  238. data/spec/data/cookbooks/java/files/default/java.response +1 -1
  239. data/spec/data/cookbooks/java/metadata.rb +2 -2
  240. data/spec/data/cookbooks/name-mismatch-versionnumber/README.md +4 -4
  241. data/spec/data/cookbooks/name-mismatch-versionnumber/metadata.rb +8 -8
  242. data/spec/data/cookbooks/openldap/attributes/default.rb +16 -16
  243. data/spec/data/cookbooks/openldap/attributes/smokey.rb +1 -1
  244. data/spec/data/cookbooks/openldap/definitions/client.rb +5 -5
  245. data/spec/data/cookbooks/openldap/definitions/server.rb +5 -5
  246. data/spec/data/cookbooks/openldap/files/default/.dotfile +1 -1
  247. data/spec/data/cookbooks/openldap/files/default/remotedir/.a_dotdir/.a_dotfile_in_a_dotdir +1 -1
  248. data/spec/data/cookbooks/openldap/files/default/remotedir/not_a_template.erb +2 -2
  249. data/spec/data/cookbooks/openldap/files/default/remotedir/remote_dir_file1.txt +2 -2
  250. data/spec/data/cookbooks/openldap/files/default/remotedir/remote_dir_file2.txt +2 -2
  251. data/spec/data/cookbooks/openldap/files/default/remotedir/remotesubdir/.a_dotfile +1 -1
  252. data/spec/data/cookbooks/openldap/files/default/remotedir/remotesubdir/remote_subdir_file1.txt +2 -2
  253. data/spec/data/cookbooks/openldap/files/default/remotedir/remotesubdir/remote_subdir_file2.txt +2 -2
  254. data/spec/data/cookbooks/openldap/files/default/remotedir/subdir_with_no_file_just_a_subsubdir/the_subsubdir/some_file.txt +3 -3
  255. data/spec/data/cookbooks/openldap/libraries/openldap.rb +4 -4
  256. data/spec/data/cookbooks/openldap/libraries/openldap/version.rb +3 -3
  257. data/spec/data/cookbooks/openldap/metadata.rb +8 -8
  258. data/spec/data/cookbooks/openldap/recipes/default.rb +4 -4
  259. data/spec/data/cookbooks/openldap/recipes/gigantor.rb +3 -3
  260. data/spec/data/cookbooks/openldap/recipes/one.rb +15 -15
  261. data/spec/data/cookbooks/openldap/recipes/return.rb +2 -2
  262. data/spec/data/cookbooks/openldap/templates/default/helper_test.erb +1 -1
  263. data/spec/data/cookbooks/openldap/templates/default/helpers_via_partial_test.erb +1 -1
  264. data/spec/data/cookbooks/openldap/templates/default/no_windows_line_endings.erb +4 -4
  265. data/spec/data/cookbooks/openldap/templates/default/openldap_variable_stuff.conf.erb +1 -1
  266. data/spec/data/cookbooks/openldap/templates/default/test.erb +1 -1
  267. data/spec/data/cookbooks/preseed/files/default/preseed-file.seed +1 -1
  268. data/spec/data/cookbooks/preseed/files/default/preseed-template.seed +4 -4
  269. data/spec/data/cookbooks/preseed/metadata.rb +2 -2
  270. data/spec/data/cookbooks/preseed/templates/default/preseed-template-variables.seed +1 -1
  271. data/spec/data/cookbooks/preseed/templates/default/preseed-template.seed +1 -1
  272. data/spec/data/definitions/test.rb +4 -4
  273. data/spec/data/environment-config.rb +4 -4
  274. data/spec/data/file-providers-method-snapshot-chef-11-4.json +127 -127
  275. data/spec/data/fileedit/hosts +4 -4
  276. data/spec/data/incomplete-metadata-chef-repo/incomplete-metadata/README.md +4 -4
  277. data/spec/data/incomplete-metadata-chef-repo/incomplete-metadata/metadata.rb +13 -13
  278. data/spec/data/invalid-metadata-chef-repo/invalid-metadata/README.md +4 -4
  279. data/spec/data/kitchen/chefignore +6 -6
  280. data/spec/data/kitchen/openldap/attributes/default.rb +3 -3
  281. data/spec/data/kitchen/openldap/attributes/robinson.rb +2 -2
  282. data/spec/data/kitchen/openldap/definitions/client.rb +3 -3
  283. data/spec/data/kitchen/openldap/definitions/drewbarrymore.rb +2 -2
  284. data/spec/data/kitchen/openldap/recipes/gigantor.rb +2 -2
  285. data/spec/data/kitchen/openldap/recipes/ignoreme.rb +2 -2
  286. data/spec/data/kitchen/openldap/recipes/woot.rb +3 -3
  287. data/spec/data/knife_subcommand/test_explicit_category.rb +6 -6
  288. data/spec/data/knife_subcommand/test_name_mapping.rb +4 -4
  289. data/spec/data/knife_subcommand/test_yourself.rb +21 -21
  290. data/spec/data/lwrp/providers/inline_compiler.rb +26 -26
  291. data/spec/data/lwrp/providers/monkey_name_printer.rb +5 -5
  292. data/spec/data/lwrp/providers/paint_drying_watcher.rb +7 -7
  293. data/spec/data/lwrp/providers/thumb_twiddler.rb +7 -7
  294. data/spec/data/lwrp/resources/foo.rb +4 -4
  295. data/spec/data/lwrp/resources_with_default_attributes/nodeattr.rb +1 -1
  296. data/spec/data/lwrp_override/providers/buck_passer.rb +5 -5
  297. data/spec/data/mac_users/10.7-8.plist.xml +559 -559
  298. data/spec/data/mac_users/10.7-8.shadow.xml +11 -11
  299. data/spec/data/mac_users/10.7.plist.xml +559 -559
  300. data/spec/data/mac_users/10.7.shadow.xml +11 -11
  301. data/spec/data/mac_users/10.8.plist.xml +559 -559
  302. data/spec/data/mac_users/10.8.shadow.xml +21 -21
  303. data/spec/data/mac_users/10.9.plist.xml +560 -560
  304. data/spec/data/mac_users/10.9.shadow.xml +21 -21
  305. data/spec/data/metadata/quick_start/metadata.rb +19 -19
  306. data/spec/data/nodes/default.rb +15 -15
  307. data/spec/data/nodes/test.example.com.rb +17 -17
  308. data/spec/data/nodes/test.rb +15 -15
  309. data/spec/data/null_config.rb +1 -1
  310. data/spec/data/object_loader/environments/test.json +7 -7
  311. data/spec/data/object_loader/environments/test.rb +2 -2
  312. data/spec/data/object_loader/environments/test_json_class.json +8 -8
  313. data/spec/data/object_loader/nodes/test.json +7 -7
  314. data/spec/data/object_loader/nodes/test.rb +2 -2
  315. data/spec/data/object_loader/nodes/test_json_class.json +8 -8
  316. data/spec/data/object_loader/roles/test.json +7 -7
  317. data/spec/data/object_loader/roles/test.rb +2 -2
  318. data/spec/data/object_loader/roles/test_json_class.json +8 -8
  319. data/spec/data/partial_one.erb +1 -1
  320. data/spec/data/recipes/test.rb +7 -7
  321. data/spec/data/run_context/cookbooks/circular-dep1/definitions/circular_dep1_res.rb +1 -1
  322. data/spec/data/run_context/cookbooks/circular-dep1/libraries/lib.rb +2 -2
  323. data/spec/data/run_context/cookbooks/circular-dep1/metadata.rb +2 -2
  324. data/spec/data/run_context/cookbooks/circular-dep1/providers/provider.rb +1 -1
  325. data/spec/data/run_context/cookbooks/circular-dep1/resources/resource.rb +1 -1
  326. data/spec/data/run_context/cookbooks/circular-dep2/definitions/circular_dep2_res.rb +1 -1
  327. data/spec/data/run_context/cookbooks/circular-dep2/libraries/lib.rb +2 -2
  328. data/spec/data/run_context/cookbooks/circular-dep2/metadata.rb +2 -2
  329. data/spec/data/run_context/cookbooks/circular-dep2/providers/provider.rb +1 -1
  330. data/spec/data/run_context/cookbooks/circular-dep2/resources/resource.rb +1 -1
  331. data/spec/data/run_context/cookbooks/dependency1/definitions/dependency1_res.rb +1 -1
  332. data/spec/data/run_context/cookbooks/dependency1/libraries/lib.rb +2 -2
  333. data/spec/data/run_context/cookbooks/dependency1/providers/provider.rb +1 -1
  334. data/spec/data/run_context/cookbooks/dependency1/resources/resource.rb +1 -1
  335. data/spec/data/run_context/cookbooks/dependency2/definitions/dependency2_res.rb +1 -1
  336. data/spec/data/run_context/cookbooks/dependency2/libraries/lib.rb +2 -2
  337. data/spec/data/run_context/cookbooks/dependency2/providers/provider.rb +1 -1
  338. data/spec/data/run_context/cookbooks/dependency2/resources/resource.rb +1 -1
  339. data/spec/data/run_context/cookbooks/no-default-attr/definitions/no_default-attr_res.rb +1 -1
  340. data/spec/data/run_context/cookbooks/no-default-attr/providers/provider.rb +1 -1
  341. data/spec/data/run_context/cookbooks/no-default-attr/resources/resource.rb +1 -1
  342. data/spec/data/run_context/cookbooks/test-with-circular-deps/definitions/test_with-circular-deps_res.rb +1 -1
  343. data/spec/data/run_context/cookbooks/test-with-circular-deps/libraries/lib.rb +2 -2
  344. data/spec/data/run_context/cookbooks/test-with-circular-deps/metadata.rb +2 -2
  345. data/spec/data/run_context/cookbooks/test-with-circular-deps/providers/provider.rb +1 -1
  346. data/spec/data/run_context/cookbooks/test-with-circular-deps/resources/resource.rb +1 -1
  347. data/spec/data/run_context/cookbooks/test-with-deps/definitions/test_with-deps_res.rb +1 -1
  348. data/spec/data/run_context/cookbooks/test-with-deps/libraries/lib.rb +1 -1
  349. data/spec/data/run_context/cookbooks/test-with-deps/metadata.rb +3 -3
  350. data/spec/data/run_context/cookbooks/test-with-deps/providers/provider.rb +1 -1
  351. data/spec/data/run_context/cookbooks/test-with-deps/resources/resource.rb +1 -1
  352. data/spec/data/run_context/cookbooks/test/attributes/george.rb +1 -1
  353. data/spec/data/run_context/cookbooks/test/definitions/new_animals.rb +9 -9
  354. data/spec/data/run_context/cookbooks/test/definitions/new_cat.rb +5 -5
  355. data/spec/data/run_context/cookbooks/test/definitions/test_res.rb +1 -1
  356. data/spec/data/run_context/cookbooks/test/providers/provider.rb +1 -1
  357. data/spec/data/run_context/cookbooks/test/recipes/default.rb +5 -5
  358. data/spec/data/run_context/cookbooks/test/recipes/one.rb +7 -7
  359. data/spec/data/run_context/cookbooks/test/recipes/two.rb +7 -7
  360. data/spec/data/run_context/cookbooks/test/resources/resource.rb +1 -1
  361. data/spec/data/run_context/nodes/run_context.rb +5 -5
  362. data/spec/data/search_queries_to_transform.txt +98 -98
  363. data/spec/data/shef-config.rb +10 -10
  364. data/spec/data/ssl/5e707473.0 +18 -18
  365. data/spec/data/ssl/chef-rspec.cert +27 -27
  366. data/spec/data/ssl/chef-rspec.key +27 -27
  367. data/spec/data/ssl/key.pem +15 -15
  368. data/spec/data/ssl/private_key.pem +27 -27
  369. data/spec/data/ssl/private_key_with_whitespace.pem +32 -32
  370. data/spec/data/standalone_cookbook/chefignore +9 -9
  371. data/spec/data/standalone_cookbook/recipes/default.rb +2 -2
  372. data/spec/data/trusted_certs/example.crt +22 -22
  373. data/spec/data/trusted_certs/intermediate.pem +27 -27
  374. data/spec/data/trusted_certs/root.pem +22 -22
  375. data/spec/functional/assets/chefinittest +34 -34
  376. data/spec/functional/assets/testchefsubsys +10 -10
  377. data/spec/functional/mixin/powershell_out_spec.rb +2 -2
  378. data/spec/functional/provider/remote_file/cache_control_data_spec.rb +0 -0
  379. data/spec/functional/resource/aix_service_spec.rb +0 -0
  380. data/spec/functional/resource/aixinit_service_spec.rb +0 -0
  381. data/spec/functional/resource/cron_spec.rb +8 -1
  382. data/spec/functional/resource/env_spec.rb +0 -0
  383. data/spec/functional/resource/link_spec.rb +1 -6
  384. data/spec/functional/run_lock_spec.rb +17 -10
  385. data/spec/integration/knife/diff_spec.rb +2 -2
  386. data/spec/integration/knife/download_spec.rb +4 -4
  387. data/spec/integration/knife/raw_spec.rb +2 -0
  388. data/spec/integration/knife/upload_spec.rb +3 -3
  389. data/spec/rcov.opts +2 -2
  390. data/spec/spec_helper.rb +11 -1
  391. data/spec/support/shared/integration/knife_support.rb +4 -0
  392. data/spec/unit/application/client_spec.rb +35 -0
  393. data/spec/unit/application/solo_spec.rb +6 -6
  394. data/spec/unit/chef_fs/file_system/repository/directory_spec.rb +1 -0
  395. data/spec/unit/data_collector_spec.rb +41 -1
  396. data/spec/unit/dsl/declare_resource_spec.rb +30 -0
  397. data/spec/unit/knife/cookbook_site_install_spec.rb +2 -0
  398. data/spec/unit/knife/cookbook_site_share_spec.rb +4 -4
  399. data/spec/unit/node_spec.rb +6 -0
  400. data/spec/unit/provider/cron_spec.rb +16 -16
  401. data/spec/unit/provider/package/aix_spec.rb +13 -0
  402. data/spec/unit/provider/package/zypper_spec.rb +18 -2
  403. data/spec/unit/resource/apt_repository_spec.rb +14 -2
  404. data/spec/unit/resource/apt_update_spec.rb +14 -2
  405. data/spec/unit/resource_builder_spec.rb +1 -1
  406. data/tasks/bin/bundle-platform +0 -0
  407. data/tasks/bin/bundle-platform.bat +0 -0
  408. data/tasks/bin/create-override-gemfile +0 -0
  409. data/tasks/bin/run_external_test +0 -0
  410. data/tasks/bundle.rb +2 -2
  411. metadata +29 -15
  412. data/acceptance/data-collector/Berksfile.lock +0 -6
@@ -1,220 +1,220 @@
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 exec &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-exec">
43
- <h1>knife exec<a class="headerlink" href="#knife-exec" title="Permalink to this headline">¶</a></h1>
44
- <p>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.</p>
45
- <div class="section" id="authenticated-api-requests">
46
- <h2>Authenticated API Requests<a class="headerlink" href="#authenticated-api-requests" title="Permalink to this headline">¶</a></h2>
47
- <p>The <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">exec</span></tt> subcommand can be used to make authenticated API requests to the Chef server using the following methods:</p>
48
- <table border="1" class="docutils">
49
- <colgroup>
50
- <col width="13%" />
51
- <col width="88%" />
52
- </colgroup>
53
- <thead valign="bottom">
54
- <tr class="row-odd"><th class="head">Method</th>
55
- <th class="head">Description</th>
56
- </tr>
57
- </thead>
58
- <tbody valign="top">
59
- <tr class="row-even"><td><tt class="docutils literal"><span class="pre">api.delete</span></tt></td>
60
- <td>Use to delete an object from the Chef server.</td>
61
- </tr>
62
- <tr class="row-odd"><td><tt class="docutils literal"><span class="pre">api.get</span></tt></td>
63
- <td>Use to get the details of an object on the Chef server.</td>
64
- </tr>
65
- <tr class="row-even"><td><tt class="docutils literal"><span class="pre">api.post</span></tt></td>
66
- <td>Use to add an object to the Chef server.</td>
67
- </tr>
68
- <tr class="row-odd"><td><tt class="docutils literal"><span class="pre">api.put</span></tt></td>
69
- <td>Use to update an object on the Chef server.</td>
70
- </tr>
71
- </tbody>
72
- </table>
73
- <p>These methods are used with the <tt class="docutils literal"><span class="pre">-E</span></tt> option, which executes that string locally on the workstation using chef-shell. These methods have the following syntax:</p>
74
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>knife <span class="nb">exec</span> -E <span class="s1">&#39;api.method(/endpoint)&#39;</span>
75
- </pre></div>
76
- </div>
77
- <p>where:</p>
78
- <ul class="simple">
79
- <li><tt class="docutils literal"><span class="pre">api.method</span></tt> is the corresponding authentication method &#8212; <tt class="docutils literal"><span class="pre">api.delete</span></tt>, <tt class="docutils literal"><span class="pre">api.get</span></tt>, <tt class="docutils literal"><span class="pre">api.post</span></tt>, or <tt class="docutils literal"><span class="pre">api.put</span></tt></li>
80
- <li><tt class="docutils literal"><span class="pre">/endpoint</span></tt> is an endpoint in the Chef server API</li>
81
- </ul>
82
- <p>For example, to get the data for a node named &#8220;Example_Node&#8221;:</p>
83
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>knife <span class="nb">exec</span> -E <span class="s1">&#39;puts api.get(&quot;/nodes/Example_Node&quot;)&#39;</span>
84
- </pre></div>
85
- </div>
86
- <p>and to ensure that the output is visible in the console, add the <tt class="docutils literal"><span class="pre">puts</span></tt> in front of the API authorization request:</p>
87
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>knife <span class="nb">exec</span> -E <span class="s1">&#39;puts api.get(&quot;/nodes/Example_Node&quot;)&#39;</span>
88
- </pre></div>
89
- </div>
90
- <p>where <tt class="docutils literal"><span class="pre">puts</span></tt> is the shorter version of the <tt class="docutils literal"><span class="pre">$stdout.puts</span></tt> predefined variable in Ruby.</p>
91
- <p>The following example shows how to add a client named &#8220;IBM305RAMAC&#8221; and the <tt class="docutils literal"><span class="pre">/clients</span></tt> endpoint, and then return the private key for that user in the console:</p>
92
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ client_desc</span> <span class="o">=</span> <span class="o">{</span>
93
- <span class="s2">&quot;name&quot;</span> <span class="o">=</span>&gt; <span class="s2">&quot;IBM305RAMAC&quot;</span>,
94
- <span class="s2">&quot;admin&quot;</span> <span class="o">=</span>&gt; <span class="nb">false</span>
95
- <span class="o">}</span>
96
-
97
- <span class="nv">new_client</span> <span class="o">=</span> api.post<span class="o">(</span><span class="s2">&quot;/clients&quot;</span>, client_desc<span class="o">)</span>
98
- puts new_client<span class="o">[</span><span class="s2">&quot;private_key&quot;</span><span class="o">]</span>
99
- </pre></div>
100
- </div>
101
- </div>
102
- <div class="section" id="ruby-scripts">
103
- <h2>Ruby Scripts<a class="headerlink" href="#ruby-scripts" title="Permalink to this headline">¶</a></h2>
104
- <p>For Ruby scripts that will be run using the <tt class="docutils literal"><span class="pre">exec</span></tt> subcommand, note the following:</p>
105
- <blockquote>
106
- <div><ul class="simple">
107
- <li>The Ruby script must be located on the system from which knife is run (and not be located on any of the systems that knife will be managing).</li>
108
- <li>Shell commands will be run from a management workstation. For example, something like <tt class="docutils literal"><span class="pre">%x[ls</span> <span class="pre">-lash</span> <span class="pre">/opt/only-on-a-node]</span></tt> would give you the directory listing for the &#8220;opt/only-on-a-node&#8221; directory or a &#8220;No such file or directory&#8221; error if the file does not already exist locally.</li>
109
- <li>When the chef-shell DSL is available, the chef-client DSL will not be (unless the management workstation is also a chef-client). Without the chef-client DSL, a bash block cannot be used to run bash commands.</li>
110
- </ul>
111
- </div></blockquote>
112
- </div>
113
- <div class="section" id="syntax">
114
- <h2>Syntax<a class="headerlink" href="#syntax" title="Permalink to this headline">¶</a></h2>
115
- <p>This subcommand has the following syntax:</p>
116
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>knife <span class="nb">exec </span>SCRIPT <span class="o">(</span>options<span class="o">)</span>
117
- </pre></div>
118
- </div>
119
- </div>
120
- <div class="section" id="options">
121
- <h2>Options<a class="headerlink" href="#options" title="Permalink to this headline">¶</a></h2>
122
- <div class="admonition note">
123
- <p class="first admonition-title">Note</p>
124
- <p class="last">Review the list of <a class="reference internal" href="knife_common_options.html"><em>common options</em></a> available to this (and all) knife subcommands and plugins.</p>
125
- </div>
126
- <p>This subcommand has the following options:</p>
127
- <dl class="docutils">
128
- <dt><tt class="docutils literal"><span class="pre">-E</span> <span class="pre">CODE</span></tt>, <tt class="docutils literal"><span class="pre">--exec</span> <span class="pre">CODE</span></tt></dt>
129
- <dd>A string of code that will be executed.</dd>
130
- <dt><tt class="docutils literal"><span class="pre">-p</span> <span class="pre">PATH:PATH</span></tt>, <tt class="docutils literal"><span class="pre">--script-path</span> <span class="pre">PATH:PATH</span></tt></dt>
131
- <dd>A colon-separated path at which Ruby scripts are located. Use to override the default location for scripts. When this option is not specified, knife will look for scripts located in <tt class="docutils literal"><span class="pre">chef-repo/.chef/scripts</span></tt> directory.</dd>
132
- </dl>
133
- </div>
134
- <div class="section" id="examples">
135
- <h2>Examples<a class="headerlink" href="#examples" title="Permalink to this headline">¶</a></h2>
136
- <p>The following examples show how to use this knife subcommand:</p>
137
- <p><strong>Run Ruby scripts</strong></p>
138
- <p>There are three ways to use <strong>knife exec</strong> to run Ruby script files. For example:</p>
139
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>knife <span class="nb">exec</span> /path/to/script_file
140
- </pre></div>
141
- </div>
142
- <p>or:</p>
143
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>knife <span class="nb">exec</span> -E <span class="s1">&#39;RUBY CODE&#39;</span>
144
- </pre></div>
145
- </div>
146
- <p>or:</p>
147
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>knife <span class="nb">exec</span>
148
- RUBY CODE
149
- ^D
150
- </pre></div>
151
- </div>
152
- <p><strong>Chef Knife status</strong></p>
153
- <p>To check the status of knife using a Ruby script named <tt class="docutils literal"><span class="pre">status.rb</span></tt> (which looks like):</p>
154
- <div class="highlight-ruby"><div class="highlight"><pre><span class="nb">printf</span> <span class="s2">&quot;%-5s %-12s %-8s %s</span><span class="se">\n</span><span class="s2">&quot;</span><span class="p">,</span> <span class="s2">&quot;Check In&quot;</span><span class="p">,</span> <span class="s2">&quot;Name&quot;</span><span class="p">,</span> <span class="s2">&quot;Ruby&quot;</span><span class="p">,</span> <span class="s2">&quot;Recipes&quot;</span>
155
- <span class="n">nodes</span><span class="o">.</span><span class="n">all</span> <span class="k">do</span> <span class="o">|</span><span class="n">n</span><span class="o">|</span>
156
- <span class="n">checkin</span> <span class="o">=</span> <span class="no">Time</span><span class="o">.</span><span class="n">at</span><span class="p">(</span><span class="n">n</span><span class="o">[</span><span class="s1">&#39;ohai_time&#39;</span><span class="o">]</span><span class="p">)</span><span class="o">.</span><span class="n">strftime</span><span class="p">(</span><span class="s2">&quot;%F %R&quot;</span><span class="p">)</span>
157
- <span class="n">rubyver</span> <span class="o">=</span> <span class="n">n</span><span class="o">[</span><span class="s1">&#39;languages&#39;</span><span class="o">][</span><span class="s1">&#39;ruby&#39;</span><span class="o">][</span><span class="s1">&#39;version&#39;</span><span class="o">]</span>
158
- <span class="n">recipes</span> <span class="o">=</span> <span class="n">n</span><span class="o">.</span><span class="n">run_list</span><span class="o">.</span><span class="n">expand</span><span class="p">(</span><span class="n">_default</span><span class="p">)</span><span class="o">.</span><span class="n">recipes</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="s2">&quot;, &quot;</span><span class="p">)</span>
159
- <span class="nb">printf</span> <span class="s2">&quot;%-20s %-12s %-8s %s</span><span class="se">\n</span><span class="s2">&quot;</span><span class="p">,</span> <span class="n">checkin</span><span class="p">,</span> <span class="n">n</span><span class="o">.</span><span class="n">name</span><span class="p">,</span> <span class="n">rubyver</span><span class="p">,</span> <span class="n">recipes</span>
160
- <span class="k">end</span>
161
- </pre></div>
162
- </div>
163
- <p>and is located in a directory named <tt class="docutils literal"><span class="pre">scripts/</span></tt>, enter:</p>
164
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>knife <span class="nb">exec </span>scripts/status.rb
165
- </pre></div>
166
- </div>
167
- <p><strong>List available free memory</strong></p>
168
- <p>To show the available free memory for all nodes, enter:</p>
169
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>knife <span class="nb">exec</span> -E <span class="s1">&#39;nodes.all {|n| puts &quot;#{n.name} has #{n.memory.total} free memory&quot;}&#39;</span>
170
- </pre></div>
171
- </div>
172
- <p><strong>List available search indexes</strong></p>
173
- <p>To list all of the available search indexes, enter:</p>
174
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>knife <span class="nb">exec</span> -E <span class="s1">&#39;puts api.get(&quot;search&quot;).keys&#39;</span>
175
- </pre></div>
176
- </div>
177
- <p><strong>Query for multiple attributes</strong></p>
178
- <p>To query a node for multiple attributes using a Ruby script named <tt class="docutils literal"><span class="pre">search_attributes.rb</span></tt> (which looks like):</p>
179
- <div class="highlight-ruby"><div class="highlight"><pre><span class="sx">% cat </span><span class="n">scripts</span><span class="o">/</span><span class="n">search_attributes</span><span class="o">.</span><span class="n">rb</span>
180
- <span class="n">query</span> <span class="o">=</span> <span class="no">ARGV</span><span class="o">[</span><span class="mi">2</span><span class="o">]</span>
181
- <span class="n">attributes</span> <span class="o">=</span> <span class="no">ARGV</span><span class="o">[</span><span class="mi">3</span><span class="o">].</span><span class="n">split</span><span class="p">(</span><span class="s2">&quot;,&quot;</span><span class="p">)</span>
182
- <span class="nb">puts</span> <span class="s2">&quot;Your query: </span><span class="si">#{</span><span class="n">query</span><span class="si">}</span><span class="s2">&quot;</span>
183
- <span class="nb">puts</span> <span class="s2">&quot;Your attributes: </span><span class="si">#{</span><span class="n">attributes</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="s2">&quot; &quot;</span><span class="p">)</span><span class="si">}</span><span class="s2">&quot;</span>
184
- <span class="n">results</span> <span class="o">=</span> <span class="p">{}</span>
185
- <span class="n">search</span><span class="p">(</span><span class="ss">:node</span><span class="p">,</span> <span class="n">query</span><span class="p">)</span> <span class="k">do</span> <span class="o">|</span><span class="n">n</span><span class="o">|</span>
186
- <span class="n">results</span><span class="o">[</span><span class="n">n</span><span class="o">.</span><span class="n">name</span><span class="o">]</span> <span class="o">=</span> <span class="p">{}</span>
187
- <span class="n">attributes</span><span class="o">.</span><span class="n">each</span> <span class="p">{</span><span class="o">|</span><span class="n">a</span><span class="o">|</span> <span class="n">results</span><span class="o">[</span><span class="n">n</span><span class="o">.</span><span class="n">name</span><span class="o">][</span><span class="n">a</span><span class="o">]</span> <span class="o">=</span> <span class="n">n</span><span class="o">[</span><span class="n">a</span><span class="o">]</span><span class="p">}</span>
188
- <span class="k">end</span>
189
-
190
- <span class="nb">puts</span> <span class="n">results</span>
191
- <span class="nb">exit</span> <span class="mi">0</span>
192
- </pre></div>
193
- </div>
194
- <p>enter:</p>
195
- <div class="highlight-bash"><div class="highlight"><pre>% knife <span class="nb">exec </span>scripts/search_attributes.rb <span class="s2">&quot;hostname:test_system&quot;</span> ipaddress,fqdn
196
- </pre></div>
197
- </div>
198
- <p>to return something like:</p>
199
- <div class="highlight-bash"><div class="highlight"><pre>Your query: hostname:test_system
200
- Your attributes: ipaddress fqdn
201
- <span class="o">{</span><span class="s2">&quot;test_system.example.com&quot;</span><span class="o">=</span>&gt;<span class="o">{</span><span class="s2">&quot;ipaddress&quot;</span><span class="o">=</span>&gt;<span class="s2">&quot;10.1.1.200&quot;</span>, <span class="s2">&quot;fqdn&quot;</span><span class="o">=</span>&gt;<span class="s2">&quot;test_system.example.com&quot;</span><span class="o">}}</span>
202
- </pre></div>
203
- </div>
204
- </div>
205
- </div>
206
-
207
-
208
- </div>
209
-
210
- </div>
211
-
212
-
213
- <div class="clearer"></div>
214
- </div>
215
-
216
-
217
-
218
-
219
- </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 exec &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-exec">
43
+ <h1>knife exec<a class="headerlink" href="#knife-exec" title="Permalink to this headline">¶</a></h1>
44
+ <p>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.</p>
45
+ <div class="section" id="authenticated-api-requests">
46
+ <h2>Authenticated API Requests<a class="headerlink" href="#authenticated-api-requests" title="Permalink to this headline">¶</a></h2>
47
+ <p>The <tt class="docutils literal"><span class="pre">knife</span> <span class="pre">exec</span></tt> subcommand can be used to make authenticated API requests to the Chef server using the following methods:</p>
48
+ <table border="1" class="docutils">
49
+ <colgroup>
50
+ <col width="13%" />
51
+ <col width="88%" />
52
+ </colgroup>
53
+ <thead valign="bottom">
54
+ <tr class="row-odd"><th class="head">Method</th>
55
+ <th class="head">Description</th>
56
+ </tr>
57
+ </thead>
58
+ <tbody valign="top">
59
+ <tr class="row-even"><td><tt class="docutils literal"><span class="pre">api.delete</span></tt></td>
60
+ <td>Use to delete an object from the Chef server.</td>
61
+ </tr>
62
+ <tr class="row-odd"><td><tt class="docutils literal"><span class="pre">api.get</span></tt></td>
63
+ <td>Use to get the details of an object on the Chef server.</td>
64
+ </tr>
65
+ <tr class="row-even"><td><tt class="docutils literal"><span class="pre">api.post</span></tt></td>
66
+ <td>Use to add an object to the Chef server.</td>
67
+ </tr>
68
+ <tr class="row-odd"><td><tt class="docutils literal"><span class="pre">api.put</span></tt></td>
69
+ <td>Use to update an object on the Chef server.</td>
70
+ </tr>
71
+ </tbody>
72
+ </table>
73
+ <p>These methods are used with the <tt class="docutils literal"><span class="pre">-E</span></tt> option, which executes that string locally on the workstation using chef-shell. These methods have the following syntax:</p>
74
+ <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>knife <span class="nb">exec</span> -E <span class="s1">&#39;api.method(/endpoint)&#39;</span>
75
+ </pre></div>
76
+ </div>
77
+ <p>where:</p>
78
+ <ul class="simple">
79
+ <li><tt class="docutils literal"><span class="pre">api.method</span></tt> is the corresponding authentication method &#8212; <tt class="docutils literal"><span class="pre">api.delete</span></tt>, <tt class="docutils literal"><span class="pre">api.get</span></tt>, <tt class="docutils literal"><span class="pre">api.post</span></tt>, or <tt class="docutils literal"><span class="pre">api.put</span></tt></li>
80
+ <li><tt class="docutils literal"><span class="pre">/endpoint</span></tt> is an endpoint in the Chef server API</li>
81
+ </ul>
82
+ <p>For example, to get the data for a node named &#8220;Example_Node&#8221;:</p>
83
+ <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>knife <span class="nb">exec</span> -E <span class="s1">&#39;puts api.get(&quot;/nodes/Example_Node&quot;)&#39;</span>
84
+ </pre></div>
85
+ </div>
86
+ <p>and to ensure that the output is visible in the console, add the <tt class="docutils literal"><span class="pre">puts</span></tt> in front of the API authorization request:</p>
87
+ <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>knife <span class="nb">exec</span> -E <span class="s1">&#39;puts api.get(&quot;/nodes/Example_Node&quot;)&#39;</span>
88
+ </pre></div>
89
+ </div>
90
+ <p>where <tt class="docutils literal"><span class="pre">puts</span></tt> is the shorter version of the <tt class="docutils literal"><span class="pre">$stdout.puts</span></tt> predefined variable in Ruby.</p>
91
+ <p>The following example shows how to add a client named &#8220;IBM305RAMAC&#8221; and the <tt class="docutils literal"><span class="pre">/clients</span></tt> endpoint, and then return the private key for that user in the console:</p>
92
+ <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ client_desc</span> <span class="o">=</span> <span class="o">{</span>
93
+ <span class="s2">&quot;name&quot;</span> <span class="o">=</span>&gt; <span class="s2">&quot;IBM305RAMAC&quot;</span>,
94
+ <span class="s2">&quot;admin&quot;</span> <span class="o">=</span>&gt; <span class="nb">false</span>
95
+ <span class="o">}</span>
96
+
97
+ <span class="nv">new_client</span> <span class="o">=</span> api.post<span class="o">(</span><span class="s2">&quot;/clients&quot;</span>, client_desc<span class="o">)</span>
98
+ puts new_client<span class="o">[</span><span class="s2">&quot;private_key&quot;</span><span class="o">]</span>
99
+ </pre></div>
100
+ </div>
101
+ </div>
102
+ <div class="section" id="ruby-scripts">
103
+ <h2>Ruby Scripts<a class="headerlink" href="#ruby-scripts" title="Permalink to this headline">¶</a></h2>
104
+ <p>For Ruby scripts that will be run using the <tt class="docutils literal"><span class="pre">exec</span></tt> subcommand, note the following:</p>
105
+ <blockquote>
106
+ <div><ul class="simple">
107
+ <li>The Ruby script must be located on the system from which knife is run (and not be located on any of the systems that knife will be managing).</li>
108
+ <li>Shell commands will be run from a management workstation. For example, something like <tt class="docutils literal"><span class="pre">%x[ls</span> <span class="pre">-lash</span> <span class="pre">/opt/only-on-a-node]</span></tt> would give you the directory listing for the &#8220;opt/only-on-a-node&#8221; directory or a &#8220;No such file or directory&#8221; error if the file does not already exist locally.</li>
109
+ <li>When the chef-shell DSL is available, the chef-client DSL will not be (unless the management workstation is also a chef-client). Without the chef-client DSL, a bash block cannot be used to run bash commands.</li>
110
+ </ul>
111
+ </div></blockquote>
112
+ </div>
113
+ <div class="section" id="syntax">
114
+ <h2>Syntax<a class="headerlink" href="#syntax" title="Permalink to this headline">¶</a></h2>
115
+ <p>This subcommand has the following syntax:</p>
116
+ <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>knife <span class="nb">exec </span>SCRIPT <span class="o">(</span>options<span class="o">)</span>
117
+ </pre></div>
118
+ </div>
119
+ </div>
120
+ <div class="section" id="options">
121
+ <h2>Options<a class="headerlink" href="#options" title="Permalink to this headline">¶</a></h2>
122
+ <div class="admonition note">
123
+ <p class="first admonition-title">Note</p>
124
+ <p class="last">Review the list of <a class="reference internal" href="knife_common_options.html"><em>common options</em></a> available to this (and all) knife subcommands and plugins.</p>
125
+ </div>
126
+ <p>This subcommand has the following options:</p>
127
+ <dl class="docutils">
128
+ <dt><tt class="docutils literal"><span class="pre">-E</span> <span class="pre">CODE</span></tt>, <tt class="docutils literal"><span class="pre">--exec</span> <span class="pre">CODE</span></tt></dt>
129
+ <dd>A string of code that will be executed.</dd>
130
+ <dt><tt class="docutils literal"><span class="pre">-p</span> <span class="pre">PATH:PATH</span></tt>, <tt class="docutils literal"><span class="pre">--script-path</span> <span class="pre">PATH:PATH</span></tt></dt>
131
+ <dd>A colon-separated path at which Ruby scripts are located. Use to override the default location for scripts. When this option is not specified, knife will look for scripts located in <tt class="docutils literal"><span class="pre">chef-repo/.chef/scripts</span></tt> directory.</dd>
132
+ </dl>
133
+ </div>
134
+ <div class="section" id="examples">
135
+ <h2>Examples<a class="headerlink" href="#examples" title="Permalink to this headline">¶</a></h2>
136
+ <p>The following examples show how to use this knife subcommand:</p>
137
+ <p><strong>Run Ruby scripts</strong></p>
138
+ <p>There are three ways to use <strong>knife exec</strong> to run Ruby script files. For example:</p>
139
+ <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>knife <span class="nb">exec</span> /path/to/script_file
140
+ </pre></div>
141
+ </div>
142
+ <p>or:</p>
143
+ <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>knife <span class="nb">exec</span> -E <span class="s1">&#39;RUBY CODE&#39;</span>
144
+ </pre></div>
145
+ </div>
146
+ <p>or:</p>
147
+ <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>knife <span class="nb">exec</span>
148
+ RUBY CODE
149
+ ^D
150
+ </pre></div>
151
+ </div>
152
+ <p><strong>Chef Knife status</strong></p>
153
+ <p>To check the status of knife using a Ruby script named <tt class="docutils literal"><span class="pre">status.rb</span></tt> (which looks like):</p>
154
+ <div class="highlight-ruby"><div class="highlight"><pre><span class="nb">printf</span> <span class="s2">&quot;%-5s %-12s %-8s %s</span><span class="se">\n</span><span class="s2">&quot;</span><span class="p">,</span> <span class="s2">&quot;Check In&quot;</span><span class="p">,</span> <span class="s2">&quot;Name&quot;</span><span class="p">,</span> <span class="s2">&quot;Ruby&quot;</span><span class="p">,</span> <span class="s2">&quot;Recipes&quot;</span>
155
+ <span class="n">nodes</span><span class="o">.</span><span class="n">all</span> <span class="k">do</span> <span class="o">|</span><span class="n">n</span><span class="o">|</span>
156
+ <span class="n">checkin</span> <span class="o">=</span> <span class="no">Time</span><span class="o">.</span><span class="n">at</span><span class="p">(</span><span class="n">n</span><span class="o">[</span><span class="s1">&#39;ohai_time&#39;</span><span class="o">]</span><span class="p">)</span><span class="o">.</span><span class="n">strftime</span><span class="p">(</span><span class="s2">&quot;%F %R&quot;</span><span class="p">)</span>
157
+ <span class="n">rubyver</span> <span class="o">=</span> <span class="n">n</span><span class="o">[</span><span class="s1">&#39;languages&#39;</span><span class="o">][</span><span class="s1">&#39;ruby&#39;</span><span class="o">][</span><span class="s1">&#39;version&#39;</span><span class="o">]</span>
158
+ <span class="n">recipes</span> <span class="o">=</span> <span class="n">n</span><span class="o">.</span><span class="n">run_list</span><span class="o">.</span><span class="n">expand</span><span class="p">(</span><span class="n">_default</span><span class="p">)</span><span class="o">.</span><span class="n">recipes</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="s2">&quot;, &quot;</span><span class="p">)</span>
159
+ <span class="nb">printf</span> <span class="s2">&quot;%-20s %-12s %-8s %s</span><span class="se">\n</span><span class="s2">&quot;</span><span class="p">,</span> <span class="n">checkin</span><span class="p">,</span> <span class="n">n</span><span class="o">.</span><span class="n">name</span><span class="p">,</span> <span class="n">rubyver</span><span class="p">,</span> <span class="n">recipes</span>
160
+ <span class="k">end</span>
161
+ </pre></div>
162
+ </div>
163
+ <p>and is located in a directory named <tt class="docutils literal"><span class="pre">scripts/</span></tt>, enter:</p>
164
+ <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>knife <span class="nb">exec </span>scripts/status.rb
165
+ </pre></div>
166
+ </div>
167
+ <p><strong>List available free memory</strong></p>
168
+ <p>To show the available free memory for all nodes, enter:</p>
169
+ <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>knife <span class="nb">exec</span> -E <span class="s1">&#39;nodes.all {|n| puts &quot;#{n.name} has #{n.memory.total} free memory&quot;}&#39;</span>
170
+ </pre></div>
171
+ </div>
172
+ <p><strong>List available search indexes</strong></p>
173
+ <p>To list all of the available search indexes, enter:</p>
174
+ <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>knife <span class="nb">exec</span> -E <span class="s1">&#39;puts api.get(&quot;search&quot;).keys&#39;</span>
175
+ </pre></div>
176
+ </div>
177
+ <p><strong>Query for multiple attributes</strong></p>
178
+ <p>To query a node for multiple attributes using a Ruby script named <tt class="docutils literal"><span class="pre">search_attributes.rb</span></tt> (which looks like):</p>
179
+ <div class="highlight-ruby"><div class="highlight"><pre><span class="sx">% cat </span><span class="n">scripts</span><span class="o">/</span><span class="n">search_attributes</span><span class="o">.</span><span class="n">rb</span>
180
+ <span class="n">query</span> <span class="o">=</span> <span class="no">ARGV</span><span class="o">[</span><span class="mi">2</span><span class="o">]</span>
181
+ <span class="n">attributes</span> <span class="o">=</span> <span class="no">ARGV</span><span class="o">[</span><span class="mi">3</span><span class="o">].</span><span class="n">split</span><span class="p">(</span><span class="s2">&quot;,&quot;</span><span class="p">)</span>
182
+ <span class="nb">puts</span> <span class="s2">&quot;Your query: </span><span class="si">#{</span><span class="n">query</span><span class="si">}</span><span class="s2">&quot;</span>
183
+ <span class="nb">puts</span> <span class="s2">&quot;Your attributes: </span><span class="si">#{</span><span class="n">attributes</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="s2">&quot; &quot;</span><span class="p">)</span><span class="si">}</span><span class="s2">&quot;</span>
184
+ <span class="n">results</span> <span class="o">=</span> <span class="p">{}</span>
185
+ <span class="n">search</span><span class="p">(</span><span class="ss">:node</span><span class="p">,</span> <span class="n">query</span><span class="p">)</span> <span class="k">do</span> <span class="o">|</span><span class="n">n</span><span class="o">|</span>
186
+ <span class="n">results</span><span class="o">[</span><span class="n">n</span><span class="o">.</span><span class="n">name</span><span class="o">]</span> <span class="o">=</span> <span class="p">{}</span>
187
+ <span class="n">attributes</span><span class="o">.</span><span class="n">each</span> <span class="p">{</span><span class="o">|</span><span class="n">a</span><span class="o">|</span> <span class="n">results</span><span class="o">[</span><span class="n">n</span><span class="o">.</span><span class="n">name</span><span class="o">][</span><span class="n">a</span><span class="o">]</span> <span class="o">=</span> <span class="n">n</span><span class="o">[</span><span class="n">a</span><span class="o">]</span><span class="p">}</span>
188
+ <span class="k">end</span>
189
+
190
+ <span class="nb">puts</span> <span class="n">results</span>
191
+ <span class="nb">exit</span> <span class="mi">0</span>
192
+ </pre></div>
193
+ </div>
194
+ <p>enter:</p>
195
+ <div class="highlight-bash"><div class="highlight"><pre>% knife <span class="nb">exec </span>scripts/search_attributes.rb <span class="s2">&quot;hostname:test_system&quot;</span> ipaddress,fqdn
196
+ </pre></div>
197
+ </div>
198
+ <p>to return something like:</p>
199
+ <div class="highlight-bash"><div class="highlight"><pre>Your query: hostname:test_system
200
+ Your attributes: ipaddress fqdn
201
+ <span class="o">{</span><span class="s2">&quot;test_system.example.com&quot;</span><span class="o">=</span>&gt;<span class="o">{</span><span class="s2">&quot;ipaddress&quot;</span><span class="o">=</span>&gt;<span class="s2">&quot;10.1.1.200&quot;</span>, <span class="s2">&quot;fqdn&quot;</span><span class="o">=</span>&gt;<span class="s2">&quot;test_system.example.com&quot;</span><span class="o">}}</span>
202
+ </pre></div>
203
+ </div>
204
+ </div>
205
+ </div>
206
+
207
+
208
+ </div>
209
+
210
+ </div>
211
+
212
+
213
+ <div class="clearer"></div>
214
+ </div>
215
+
216
+
217
+
218
+
219
+ </body>
220
220
  </html>
@@ -1,83 +1,83 @@
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 index rebuild &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-index-rebuild">
43
- <h1>knife index rebuild<a class="headerlink" href="#knife-index-rebuild" title="Permalink to this headline">¶</a></h1>
44
- <p>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.</p>
45
- <div class="admonition note">
46
- <p class="first admonition-title">Note</p>
47
- <p class="last">This subcommand ONLY works when run against the open source Chef server version 10.x. This subcommand will NOT run against open source Chef server 11, Enterprise Chef (including hosted Enterprise Chef), or Private Chef.</p>
48
- </div>
49
- <div class="section" id="syntax">
50
- <h2>Syntax<a class="headerlink" href="#syntax" title="Permalink to this headline">¶</a></h2>
51
- <p>This subcommand has the following syntax:</p>
52
- <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>knife index rebuild
53
- </pre></div>
54
- </div>
55
- </div>
56
- <div class="section" id="options">
57
- <h2>Options<a class="headerlink" href="#options" title="Permalink to this headline">¶</a></h2>
58
- <div class="admonition note">
59
- <p class="first admonition-title">Note</p>
60
- <p class="last">Review the list of <a class="reference internal" href="knife_common_options.html"><em>common options</em></a> available to this (and all) knife subcommands and plugins.</p>
61
- </div>
62
- <p>This command does not have any specific options.</p>
63
- </div>
64
- <div class="section" id="examples">
65
- <h2>Examples<a class="headerlink" href="#examples" title="Permalink to this headline">¶</a></h2>
66
- <p>None.</p>
67
- </div>
68
- </div>
69
-
70
-
71
- </div>
72
-
73
- </div>
74
-
75
-
76
- <div class="clearer"></div>
77
- </div>
78
-
79
-
80
-
81
-
82
- </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 index rebuild &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-index-rebuild">
43
+ <h1>knife index rebuild<a class="headerlink" href="#knife-index-rebuild" title="Permalink to this headline">¶</a></h1>
44
+ <p>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.</p>
45
+ <div class="admonition note">
46
+ <p class="first admonition-title">Note</p>
47
+ <p class="last">This subcommand ONLY works when run against the open source Chef server version 10.x. This subcommand will NOT run against open source Chef server 11, Enterprise Chef (including hosted Enterprise Chef), or Private Chef.</p>
48
+ </div>
49
+ <div class="section" id="syntax">
50
+ <h2>Syntax<a class="headerlink" href="#syntax" title="Permalink to this headline">¶</a></h2>
51
+ <p>This subcommand has the following syntax:</p>
52
+ <div class="highlight-bash"><div class="highlight"><pre><span class="nv">$ </span>knife index rebuild
53
+ </pre></div>
54
+ </div>
55
+ </div>
56
+ <div class="section" id="options">
57
+ <h2>Options<a class="headerlink" href="#options" title="Permalink to this headline">¶</a></h2>
58
+ <div class="admonition note">
59
+ <p class="first admonition-title">Note</p>
60
+ <p class="last">Review the list of <a class="reference internal" href="knife_common_options.html"><em>common options</em></a> available to this (and all) knife subcommands and plugins.</p>
61
+ </div>
62
+ <p>This command does not have any specific options.</p>
63
+ </div>
64
+ <div class="section" id="examples">
65
+ <h2>Examples<a class="headerlink" href="#examples" title="Permalink to this headline">¶</a></h2>
66
+ <p>None.</p>
67
+ </div>
68
+ </div>
69
+
70
+
71
+ </div>
72
+
73
+ </div>
74
+
75
+
76
+ <div class="clearer"></div>
77
+ </div>
78
+
79
+
80
+
81
+
82
+ </body>
83
83
  </html>