chef 10.28.2-x86-mingw32

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (960) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +201 -0
  3. data/README.rdoc +177 -0
  4. data/Rakefile +128 -0
  5. data/bin/chef-client +26 -0
  6. data/bin/chef-solo +25 -0
  7. data/bin/knife +26 -0
  8. data/bin/shef +34 -0
  9. data/distro/README +2 -0
  10. data/distro/arch/etc/conf.d/chef-client.conf +5 -0
  11. data/distro/arch/etc/conf.d/chef-expander.conf +8 -0
  12. data/distro/arch/etc/conf.d/chef-server-webui.conf +10 -0
  13. data/distro/arch/etc/conf.d/chef-server.conf +10 -0
  14. data/distro/arch/etc/conf.d/chef-solr.conf +8 -0
  15. data/distro/arch/etc/rc.d/chef-client +90 -0
  16. data/distro/arch/etc/rc.d/chef-expander +78 -0
  17. data/distro/arch/etc/rc.d/chef-server +78 -0
  18. data/distro/arch/etc/rc.d/chef-server-webui +78 -0
  19. data/distro/arch/etc/rc.d/chef-solr +78 -0
  20. data/distro/common/html/chef-client.8.html +145 -0
  21. data/distro/common/html/chef-expander.8.html +164 -0
  22. data/distro/common/html/chef-expanderctl.8.html +146 -0
  23. data/distro/common/html/chef-server-webui.8.html +185 -0
  24. data/distro/common/html/chef-server.8.html +182 -0
  25. data/distro/common/html/chef-solo.8.html +185 -0
  26. data/distro/common/html/chef-solr.8.html +165 -0
  27. data/distro/common/html/knife-bootstrap.1.html +241 -0
  28. data/distro/common/html/knife-client.1.html +219 -0
  29. data/distro/common/html/knife-configure.1.html +170 -0
  30. data/distro/common/html/knife-cookbook-site.1.html +241 -0
  31. data/distro/common/html/knife-cookbook.1.html +381 -0
  32. data/distro/common/html/knife-data-bag.1.html +235 -0
  33. data/distro/common/html/knife-environment.1.html +265 -0
  34. data/distro/common/html/knife-exec.1.html +134 -0
  35. data/distro/common/html/knife-index.1.html +125 -0
  36. data/distro/common/html/knife-node.1.html +250 -0
  37. data/distro/common/html/knife-recipe.1.html +92 -0
  38. data/distro/common/html/knife-role.1.html +200 -0
  39. data/distro/common/html/knife-search.1.html +288 -0
  40. data/distro/common/html/knife-ssh.1.html +156 -0
  41. data/distro/common/html/knife-status.1.html +128 -0
  42. data/distro/common/html/knife-tag.1.html +137 -0
  43. data/distro/common/html/knife.1.html +320 -0
  44. data/distro/common/html/shef.1.html +283 -0
  45. data/distro/common/man/man1/knife-bootstrap.1 +201 -0
  46. data/distro/common/man/man1/knife-client.1 +99 -0
  47. data/distro/common/man/man1/knife-configure.1 +88 -0
  48. data/distro/common/man/man1/knife-cookbook-site.1 +145 -0
  49. data/distro/common/man/man1/knife-cookbook.1 +332 -0
  50. data/distro/common/man/man1/knife-data-bag.1 +123 -0
  51. data/distro/common/man/man1/knife-environment.1 +168 -0
  52. data/distro/common/man/man1/knife-exec.1 +46 -0
  53. data/distro/common/man/man1/knife-index.1 +29 -0
  54. data/distro/common/man/man1/knife-node.1 +134 -0
  55. data/distro/common/man/man1/knife-role.1 +88 -0
  56. data/distro/common/man/man1/knife-search.1 +280 -0
  57. data/distro/common/man/man1/knife-ssh.1 +79 -0
  58. data/distro/common/man/man1/knife-status.1 +29 -0
  59. data/distro/common/man/man1/knife-tag.1 +43 -0
  60. data/distro/common/man/man1/knife.1 +288 -0
  61. data/distro/common/man/man1/shef.1 +256 -0
  62. data/distro/common/man/man8/chef-client.8 +104 -0
  63. data/distro/common/man/man8/chef-expander.8 +97 -0
  64. data/distro/common/man/man8/chef-expanderctl.8 +62 -0
  65. data/distro/common/man/man8/chef-server-webui.8 +155 -0
  66. data/distro/common/man/man8/chef-server.8 +147 -0
  67. data/distro/common/man/man8/chef-solo.8 +126 -0
  68. data/distro/common/man/man8/chef-solr.8 +122 -0
  69. data/distro/common/markdown/README +3 -0
  70. data/distro/common/markdown/man1/knife-bootstrap.mkd +141 -0
  71. data/distro/common/markdown/man1/knife-client.mkd +103 -0
  72. data/distro/common/markdown/man1/knife-configure.mkd +70 -0
  73. data/distro/common/markdown/man1/knife-cookbook-site.mkd +123 -0
  74. data/distro/common/markdown/man1/knife-cookbook.mkd +263 -0
  75. data/distro/common/markdown/man1/knife-data-bag.mkd +121 -0
  76. data/distro/common/markdown/man1/knife-environment.mkd +151 -0
  77. data/distro/common/markdown/man1/knife-exec.mkd +37 -0
  78. data/distro/common/markdown/man1/knife-index.mkd +30 -0
  79. data/distro/common/markdown/man1/knife-node.mkd +130 -0
  80. data/distro/common/markdown/man1/knife-role.mkd +85 -0
  81. data/distro/common/markdown/man1/knife-search.mkd +180 -0
  82. data/distro/common/markdown/man1/knife-ssh.mkd +69 -0
  83. data/distro/common/markdown/man1/knife-status.mkd +36 -0
  84. data/distro/common/markdown/man1/knife-tag.mkd +39 -0
  85. data/distro/common/markdown/man1/knife.mkd +218 -0
  86. data/distro/common/markdown/man1/shef.mkd +189 -0
  87. data/distro/common/markdown/man8/chef-client.mkd +74 -0
  88. data/distro/common/markdown/man8/chef-expander.mkd +82 -0
  89. data/distro/common/markdown/man8/chef-expanderctl.mkd +58 -0
  90. data/distro/common/markdown/man8/chef-server-webui.mkd +121 -0
  91. data/distro/common/markdown/man8/chef-server.mkd +121 -0
  92. data/distro/common/markdown/man8/chef-solo.mkd +107 -0
  93. data/distro/common/markdown/man8/chef-solr.mkd +89 -0
  94. data/distro/debian/etc/default/chef-client +5 -0
  95. data/distro/debian/etc/default/chef-expander +8 -0
  96. data/distro/debian/etc/default/chef-server +9 -0
  97. data/distro/debian/etc/default/chef-server-webui +9 -0
  98. data/distro/debian/etc/default/chef-solr +8 -0
  99. data/distro/debian/etc/init.d/chef-client +210 -0
  100. data/distro/debian/etc/init.d/chef-expander +176 -0
  101. data/distro/debian/etc/init.d/chef-server +122 -0
  102. data/distro/debian/etc/init.d/chef-server-webui +123 -0
  103. data/distro/debian/etc/init.d/chef-solr +176 -0
  104. data/distro/debian/etc/init/chef-client.conf +17 -0
  105. data/distro/debian/etc/init/chef-expander.conf +17 -0
  106. data/distro/debian/etc/init/chef-server-webui.conf +17 -0
  107. data/distro/debian/etc/init/chef-server.conf +17 -0
  108. data/distro/debian/etc/init/chef-solr.conf +17 -0
  109. data/distro/redhat/etc/init.d/chef-client +121 -0
  110. data/distro/redhat/etc/init.d/chef-expander +104 -0
  111. data/distro/redhat/etc/init.d/chef-server +112 -0
  112. data/distro/redhat/etc/init.d/chef-server-webui +112 -0
  113. data/distro/redhat/etc/init.d/chef-solr +104 -0
  114. data/distro/redhat/etc/logrotate.d/chef-client +8 -0
  115. data/distro/redhat/etc/logrotate.d/chef-expander +8 -0
  116. data/distro/redhat/etc/logrotate.d/chef-server +8 -0
  117. data/distro/redhat/etc/logrotate.d/chef-server-webui +8 -0
  118. data/distro/redhat/etc/logrotate.d/chef-solr +8 -0
  119. data/distro/redhat/etc/sysconfig/chef-client +15 -0
  120. data/distro/redhat/etc/sysconfig/chef-expander +7 -0
  121. data/distro/redhat/etc/sysconfig/chef-server +14 -0
  122. data/distro/redhat/etc/sysconfig/chef-server-webui +14 -0
  123. data/distro/redhat/etc/sysconfig/chef-solr +8 -0
  124. data/distro/windows/service_manager.rb +164 -0
  125. data/lib/chef.rb +41 -0
  126. data/lib/chef/api_client.rb +293 -0
  127. data/lib/chef/application.rb +168 -0
  128. data/lib/chef/application/agent.rb +18 -0
  129. data/lib/chef/application/client.rb +322 -0
  130. data/lib/chef/application/knife.rb +183 -0
  131. data/lib/chef/application/solo.rb +248 -0
  132. data/lib/chef/application/windows_service.rb +227 -0
  133. data/lib/chef/applications.rb +4 -0
  134. data/lib/chef/certificate.rb +161 -0
  135. data/lib/chef/checksum.rb +167 -0
  136. data/lib/chef/checksum/storage.rb +18 -0
  137. data/lib/chef/checksum/storage/filesystem.rb +56 -0
  138. data/lib/chef/checksum_cache.rb +190 -0
  139. data/lib/chef/client.rb +499 -0
  140. data/lib/chef/config.rb +330 -0
  141. data/lib/chef/cookbook/chefignore.rb +66 -0
  142. data/lib/chef/cookbook/cookbook_collection.rb +45 -0
  143. data/lib/chef/cookbook/cookbook_version_loader.rb +171 -0
  144. data/lib/chef/cookbook/file_system_file_vendor.rb +56 -0
  145. data/lib/chef/cookbook/file_vendor.rb +48 -0
  146. data/lib/chef/cookbook/metadata.rb +629 -0
  147. data/lib/chef/cookbook/remote_file_vendor.rb +84 -0
  148. data/lib/chef/cookbook/synchronizer.rb +218 -0
  149. data/lib/chef/cookbook/syntax_check.rb +136 -0
  150. data/lib/chef/cookbook_loader.rb +121 -0
  151. data/lib/chef/cookbook_site_streaming_uploader.rb +244 -0
  152. data/lib/chef/cookbook_uploader.rb +173 -0
  153. data/lib/chef/cookbook_version.rb +1081 -0
  154. data/lib/chef/cookbook_version_selector.rb +168 -0
  155. data/lib/chef/couchdb.rb +246 -0
  156. data/lib/chef/daemon.rb +187 -0
  157. data/lib/chef/data_bag.rb +239 -0
  158. data/lib/chef/data_bag_item.rb +277 -0
  159. data/lib/chef/encrypted_data_bag_item.rb +268 -0
  160. data/lib/chef/environment.rb +458 -0
  161. data/lib/chef/event_dispatch/base.rb +311 -0
  162. data/lib/chef/event_dispatch/dispatcher.rb +42 -0
  163. data/lib/chef/exceptions.rb +192 -0
  164. data/lib/chef/file_access_control.rb +75 -0
  165. data/lib/chef/file_access_control/unix.rb +216 -0
  166. data/lib/chef/file_access_control/windows.rb +310 -0
  167. data/lib/chef/file_cache.rb +220 -0
  168. data/lib/chef/formatters/base.rb +247 -0
  169. data/lib/chef/formatters/doc.rb +236 -0
  170. data/lib/chef/formatters/error_descriptor.rb +66 -0
  171. data/lib/chef/formatters/error_inspectors.rb +19 -0
  172. data/lib/chef/formatters/error_inspectors/api_error_formatting.rb +111 -0
  173. data/lib/chef/formatters/error_inspectors/compile_error_inspector.rb +106 -0
  174. data/lib/chef/formatters/error_inspectors/cookbook_resolve_error_inspector.rb +146 -0
  175. data/lib/chef/formatters/error_inspectors/cookbook_sync_error_inspector.rb +80 -0
  176. data/lib/chef/formatters/error_inspectors/node_load_error_inspector.rb +125 -0
  177. data/lib/chef/formatters/error_inspectors/registration_error_inspector.rb +137 -0
  178. data/lib/chef/formatters/error_inspectors/resource_failure_inspector.rb +109 -0
  179. data/lib/chef/formatters/error_inspectors/run_list_expansion_error_inspector.rb +118 -0
  180. data/lib/chef/formatters/error_mapper.rb +85 -0
  181. data/lib/chef/formatters/minimal.rb +235 -0
  182. data/lib/chef/handler.rb +235 -0
  183. data/lib/chef/handler/error_report.rb +33 -0
  184. data/lib/chef/handler/json_file.rb +64 -0
  185. data/lib/chef/index_queue.rb +29 -0
  186. data/lib/chef/index_queue/amqp_client.rb +116 -0
  187. data/lib/chef/index_queue/consumer.rb +76 -0
  188. data/lib/chef/index_queue/indexable.rb +109 -0
  189. data/lib/chef/json_compat.rb +149 -0
  190. data/lib/chef/knife.rb +537 -0
  191. data/lib/chef/knife/bootstrap.rb +233 -0
  192. data/lib/chef/knife/bootstrap/archlinux-gems.erb +62 -0
  193. data/lib/chef/knife/bootstrap/centos5-gems.erb +62 -0
  194. data/lib/chef/knife/bootstrap/chef-full.erb +60 -0
  195. data/lib/chef/knife/bootstrap/fedora13-gems.erb +44 -0
  196. data/lib/chef/knife/bootstrap/ubuntu10.04-apt.erb +53 -0
  197. data/lib/chef/knife/bootstrap/ubuntu10.04-gems.erb +48 -0
  198. data/lib/chef/knife/bootstrap/ubuntu12.04-gems.erb +46 -0
  199. data/lib/chef/knife/bootstrap/ubuntu12.10-gems.erb +60 -0
  200. data/lib/chef/knife/client_bulk_delete.rb +65 -0
  201. data/lib/chef/knife/client_create.rb +80 -0
  202. data/lib/chef/knife/client_delete.rb +46 -0
  203. data/lib/chef/knife/client_edit.rb +45 -0
  204. data/lib/chef/knife/client_list.rb +42 -0
  205. data/lib/chef/knife/client_reregister.rb +59 -0
  206. data/lib/chef/knife/client_show.rb +52 -0
  207. data/lib/chef/knife/configure.rb +168 -0
  208. data/lib/chef/knife/configure_client.rb +50 -0
  209. data/lib/chef/knife/cookbook_bulk_delete.rb +72 -0
  210. data/lib/chef/knife/cookbook_create.rb +447 -0
  211. data/lib/chef/knife/cookbook_delete.rb +151 -0
  212. data/lib/chef/knife/cookbook_download.rb +137 -0
  213. data/lib/chef/knife/cookbook_list.rb +47 -0
  214. data/lib/chef/knife/cookbook_metadata.rb +107 -0
  215. data/lib/chef/knife/cookbook_metadata_from_file.rb +44 -0
  216. data/lib/chef/knife/cookbook_show.rb +102 -0
  217. data/lib/chef/knife/cookbook_site_download.rb +109 -0
  218. data/lib/chef/knife/cookbook_site_install.rb +164 -0
  219. data/lib/chef/knife/cookbook_site_list.rb +62 -0
  220. data/lib/chef/knife/cookbook_site_search.rb +51 -0
  221. data/lib/chef/knife/cookbook_site_share.rb +114 -0
  222. data/lib/chef/knife/cookbook_site_show.rb +60 -0
  223. data/lib/chef/knife/cookbook_site_unshare.rb +56 -0
  224. data/lib/chef/knife/cookbook_site_vendor.rb +46 -0
  225. data/lib/chef/knife/cookbook_test.rb +93 -0
  226. data/lib/chef/knife/cookbook_upload.rb +290 -0
  227. data/lib/chef/knife/core/bootstrap_context.rb +106 -0
  228. data/lib/chef/knife/core/cookbook_scm_repo.rb +160 -0
  229. data/lib/chef/knife/core/generic_presenter.rb +191 -0
  230. data/lib/chef/knife/core/node_editor.rb +130 -0
  231. data/lib/chef/knife/core/node_presenter.rb +137 -0
  232. data/lib/chef/knife/core/object_loader.rb +112 -0
  233. data/lib/chef/knife/core/subcommand_loader.rb +112 -0
  234. data/lib/chef/knife/core/text_formatter.rb +100 -0
  235. data/lib/chef/knife/core/ui.rb +217 -0
  236. data/lib/chef/knife/data_bag_create.rb +93 -0
  237. data/lib/chef/knife/data_bag_delete.rb +51 -0
  238. data/lib/chef/knife/data_bag_edit.rb +94 -0
  239. data/lib/chef/knife/data_bag_from_file.rb +136 -0
  240. data/lib/chef/knife/data_bag_list.rb +46 -0
  241. data/lib/chef/knife/data_bag_show.rb +81 -0
  242. data/lib/chef/knife/environment_create.rb +53 -0
  243. data/lib/chef/knife/environment_delete.rb +45 -0
  244. data/lib/chef/knife/environment_edit.rb +45 -0
  245. data/lib/chef/knife/environment_from_file.rb +83 -0
  246. data/lib/chef/knife/environment_list.rb +42 -0
  247. data/lib/chef/knife/environment_show.rb +46 -0
  248. data/lib/chef/knife/exec.rb +86 -0
  249. data/lib/chef/knife/help.rb +103 -0
  250. data/lib/chef/knife/help_topics.rb +4 -0
  251. data/lib/chef/knife/index_rebuild.rb +50 -0
  252. data/lib/chef/knife/node_bulk_delete.rb +80 -0
  253. data/lib/chef/knife/node_create.rb +50 -0
  254. data/lib/chef/knife/node_delete.rb +47 -0
  255. data/lib/chef/knife/node_edit.rb +72 -0
  256. data/lib/chef/knife/node_from_file.rb +50 -0
  257. data/lib/chef/knife/node_list.rb +46 -0
  258. data/lib/chef/knife/node_run_list_add.rb +75 -0
  259. data/lib/chef/knife/node_run_list_remove.rb +48 -0
  260. data/lib/chef/knife/node_show.rb +73 -0
  261. data/lib/chef/knife/recipe_list.rb +32 -0
  262. data/lib/chef/knife/role_bulk_delete.rb +70 -0
  263. data/lib/chef/knife/role_create.rb +55 -0
  264. data/lib/chef/knife/role_delete.rb +47 -0
  265. data/lib/chef/knife/role_edit.rb +48 -0
  266. data/lib/chef/knife/role_from_file.rb +56 -0
  267. data/lib/chef/knife/role_list.rb +43 -0
  268. data/lib/chef/knife/role_show.rb +54 -0
  269. data/lib/chef/knife/search.rb +141 -0
  270. data/lib/chef/knife/ssh.rb +459 -0
  271. data/lib/chef/knife/status.rb +119 -0
  272. data/lib/chef/knife/tag_create.rb +52 -0
  273. data/lib/chef/knife/tag_delete.rb +60 -0
  274. data/lib/chef/knife/tag_list.rb +47 -0
  275. data/lib/chef/log.rb +39 -0
  276. data/lib/chef/mash.rb +225 -0
  277. data/lib/chef/mixin/check_helper.rb +31 -0
  278. data/lib/chef/mixin/checksum.rb +32 -0
  279. data/lib/chef/mixin/command.rb +164 -0
  280. data/lib/chef/mixin/command/unix.rb +220 -0
  281. data/lib/chef/mixin/command/windows.rb +76 -0
  282. data/lib/chef/mixin/convert_to_class_name.rb +65 -0
  283. data/lib/chef/mixin/create_path.rb +57 -0
  284. data/lib/chef/mixin/deep_merge.rb +247 -0
  285. data/lib/chef/mixin/deprecation.rb +65 -0
  286. data/lib/chef/mixin/enforce_ownership_and_permissions.rb +39 -0
  287. data/lib/chef/mixin/file_class.rb +46 -0
  288. data/lib/chef/mixin/from_file.rb +50 -0
  289. data/lib/chef/mixin/get_source_from_package.rb +42 -0
  290. data/lib/chef/mixin/language.rb +249 -0
  291. data/lib/chef/mixin/language_include_attribute.rb +61 -0
  292. data/lib/chef/mixin/language_include_recipe.rb +58 -0
  293. data/lib/chef/mixin/params_validate.rb +238 -0
  294. data/lib/chef/mixin/path_sanity.rb +67 -0
  295. data/lib/chef/mixin/recipe_definition_dsl_core.rb +86 -0
  296. data/lib/chef/mixin/securable.rb +180 -0
  297. data/lib/chef/mixin/shell_out.rb +69 -0
  298. data/lib/chef/mixin/template.rb +100 -0
  299. data/lib/chef/mixin/why_run.rb +332 -0
  300. data/lib/chef/mixin/xml_escape.rb +140 -0
  301. data/lib/chef/mixins.rb +18 -0
  302. data/lib/chef/monkey_patches/dir.rb +36 -0
  303. data/lib/chef/monkey_patches/fileutils.rb +65 -0
  304. data/lib/chef/monkey_patches/moneta.rb +50 -0
  305. data/lib/chef/monkey_patches/net_http.rb +22 -0
  306. data/lib/chef/monkey_patches/numeric.rb +15 -0
  307. data/lib/chef/monkey_patches/object.rb +9 -0
  308. data/lib/chef/monkey_patches/regexp.rb +34 -0
  309. data/lib/chef/monkey_patches/string.rb +49 -0
  310. data/lib/chef/monkey_patches/tempfile.rb +64 -0
  311. data/lib/chef/nil_argument.rb +3 -0
  312. data/lib/chef/node.rb +682 -0
  313. data/lib/chef/node/attribute.rb +504 -0
  314. data/lib/chef/openid_registration.rb +187 -0
  315. data/lib/chef/platform.rb +520 -0
  316. data/lib/chef/provider.rb +223 -0
  317. data/lib/chef/provider/breakpoint.rb +36 -0
  318. data/lib/chef/provider/cookbook_file.rb +105 -0
  319. data/lib/chef/provider/cron.rb +214 -0
  320. data/lib/chef/provider/cron/solaris.rb +56 -0
  321. data/lib/chef/provider/deploy.rb +474 -0
  322. data/lib/chef/provider/deploy/revision.rb +80 -0
  323. data/lib/chef/provider/deploy/timestamped.rb +32 -0
  324. data/lib/chef/provider/directory.rb +128 -0
  325. data/lib/chef/provider/env.rb +152 -0
  326. data/lib/chef/provider/env/windows.rb +75 -0
  327. data/lib/chef/provider/erl_call.rb +106 -0
  328. data/lib/chef/provider/execute.rb +68 -0
  329. data/lib/chef/provider/file.rb +355 -0
  330. data/lib/chef/provider/git.rb +260 -0
  331. data/lib/chef/provider/group.rb +159 -0
  332. data/lib/chef/provider/group/aix.rb +70 -0
  333. data/lib/chef/provider/group/dscl.rb +129 -0
  334. data/lib/chef/provider/group/gpasswd.rb +65 -0
  335. data/lib/chef/provider/group/groupadd.rb +96 -0
  336. data/lib/chef/provider/group/groupmod.rb +120 -0
  337. data/lib/chef/provider/group/pw.rb +93 -0
  338. data/lib/chef/provider/group/suse.rb +60 -0
  339. data/lib/chef/provider/group/usermod.rb +68 -0
  340. data/lib/chef/provider/group/windows.rb +79 -0
  341. data/lib/chef/provider/http_request.rb +136 -0
  342. data/lib/chef/provider/ifconfig.rb +214 -0
  343. data/lib/chef/provider/link.rb +130 -0
  344. data/lib/chef/provider/log.rb +54 -0
  345. data/lib/chef/provider/mdadm.rb +92 -0
  346. data/lib/chef/provider/mount.rb +128 -0
  347. data/lib/chef/provider/mount/mount.rb +252 -0
  348. data/lib/chef/provider/mount/windows.rb +81 -0
  349. data/lib/chef/provider/ohai.rb +47 -0
  350. data/lib/chef/provider/package.rb +229 -0
  351. data/lib/chef/provider/package/apt.rb +147 -0
  352. data/lib/chef/provider/package/dpkg.rb +128 -0
  353. data/lib/chef/provider/package/easy_install.rb +136 -0
  354. data/lib/chef/provider/package/freebsd.rb +149 -0
  355. data/lib/chef/provider/package/ips.rb +101 -0
  356. data/lib/chef/provider/package/macports.rb +105 -0
  357. data/lib/chef/provider/package/pacman.rb +111 -0
  358. data/lib/chef/provider/package/portage.rb +143 -0
  359. data/lib/chef/provider/package/rpm.rb +121 -0
  360. data/lib/chef/provider/package/rubygems.rb +580 -0
  361. data/lib/chef/provider/package/smartos.rb +84 -0
  362. data/lib/chef/provider/package/solaris.rb +139 -0
  363. data/lib/chef/provider/package/yum-dump.py +307 -0
  364. data/lib/chef/provider/package/yum.rb +1261 -0
  365. data/lib/chef/provider/package/zypper.rb +144 -0
  366. data/lib/chef/provider/remote_directory.rb +178 -0
  367. data/lib/chef/provider/remote_file.rb +126 -0
  368. data/lib/chef/provider/resource_update.rb +55 -0
  369. data/lib/chef/provider/route.rb +223 -0
  370. data/lib/chef/provider/ruby_block.rb +39 -0
  371. data/lib/chef/provider/script.rb +57 -0
  372. data/lib/chef/provider/service.rb +158 -0
  373. data/lib/chef/provider/service/arch.rb +113 -0
  374. data/lib/chef/provider/service/debian.rb +152 -0
  375. data/lib/chef/provider/service/freebsd.rb +175 -0
  376. data/lib/chef/provider/service/gentoo.rb +67 -0
  377. data/lib/chef/provider/service/init.rb +87 -0
  378. data/lib/chef/provider/service/insserv.rb +52 -0
  379. data/lib/chef/provider/service/invokercd.rb +35 -0
  380. data/lib/chef/provider/service/macosx.rb +144 -0
  381. data/lib/chef/provider/service/redhat.rb +77 -0
  382. data/lib/chef/provider/service/simple.rb +172 -0
  383. data/lib/chef/provider/service/solaris.rb +86 -0
  384. data/lib/chef/provider/service/systemd.rb +115 -0
  385. data/lib/chef/provider/service/upstart.rb +232 -0
  386. data/lib/chef/provider/service/windows.rb +163 -0
  387. data/lib/chef/provider/subversion.rb +214 -0
  388. data/lib/chef/provider/template.rb +117 -0
  389. data/lib/chef/provider/user.rb +207 -0
  390. data/lib/chef/provider/user/dscl.rb +280 -0
  391. data/lib/chef/provider/user/pw.rb +113 -0
  392. data/lib/chef/provider/user/solaris.rb +90 -0
  393. data/lib/chef/provider/user/useradd.rb +153 -0
  394. data/lib/chef/provider/user/windows.rb +124 -0
  395. data/lib/chef/providers.rb +101 -0
  396. data/lib/chef/recipe.rb +129 -0
  397. data/lib/chef/reserved_names.rb +9 -0
  398. data/lib/chef/resource.rb +912 -0
  399. data/lib/chef/resource/apt_package.rb +43 -0
  400. data/lib/chef/resource/bash.rb +33 -0
  401. data/lib/chef/resource/breakpoint.rb +35 -0
  402. data/lib/chef/resource/chef_gem.rb +53 -0
  403. data/lib/chef/resource/conditional.rb +101 -0
  404. data/lib/chef/resource/cookbook_file.rb +52 -0
  405. data/lib/chef/resource/cron.rb +202 -0
  406. data/lib/chef/resource/csh.rb +33 -0
  407. data/lib/chef/resource/deploy.rb +403 -0
  408. data/lib/chef/resource/deploy_revision.rb +40 -0
  409. data/lib/chef/resource/directory.rb +65 -0
  410. data/lib/chef/resource/dpkg_package.rb +34 -0
  411. data/lib/chef/resource/easy_install_package.rb +57 -0
  412. data/lib/chef/resource/env.rb +63 -0
  413. data/lib/chef/resource/erl_call.rb +86 -0
  414. data/lib/chef/resource/execute.rb +132 -0
  415. data/lib/chef/resource/file.rb +96 -0
  416. data/lib/chef/resource/freebsd_package.rb +35 -0
  417. data/lib/chef/resource/gem_package.rb +53 -0
  418. data/lib/chef/resource/git.rb +46 -0
  419. data/lib/chef/resource/group.rb +83 -0
  420. data/lib/chef/resource/http_request.rb +64 -0
  421. data/lib/chef/resource/ifconfig.rb +149 -0
  422. data/lib/chef/resource/ips_package.rb +42 -0
  423. data/lib/chef/resource/link.rb +92 -0
  424. data/lib/chef/resource/log.rb +74 -0
  425. data/lib/chef/resource/macports_package.rb +29 -0
  426. data/lib/chef/resource/mdadm.rb +105 -0
  427. data/lib/chef/resource/mount.rb +139 -0
  428. data/lib/chef/resource/ohai.rb +54 -0
  429. data/lib/chef/resource/package.rb +84 -0
  430. data/lib/chef/resource/pacman_package.rb +33 -0
  431. data/lib/chef/resource/perl.rb +33 -0
  432. data/lib/chef/resource/portage_package.rb +33 -0
  433. data/lib/chef/resource/python.rb +33 -0
  434. data/lib/chef/resource/remote_directory.rb +125 -0
  435. data/lib/chef/resource/remote_file.rb +90 -0
  436. data/lib/chef/resource/route.rb +140 -0
  437. data/lib/chef/resource/rpm_package.rb +34 -0
  438. data/lib/chef/resource/ruby.rb +33 -0
  439. data/lib/chef/resource/ruby_block.rb +51 -0
  440. data/lib/chef/resource/scm.rb +151 -0
  441. data/lib/chef/resource/script.rb +63 -0
  442. data/lib/chef/resource/service.rb +164 -0
  443. data/lib/chef/resource/smartos_package.rb +36 -0
  444. data/lib/chef/resource/solaris_package.rb +36 -0
  445. data/lib/chef/resource/subversion.rb +37 -0
  446. data/lib/chef/resource/template.rb +76 -0
  447. data/lib/chef/resource/timestamped_deploy.rb +31 -0
  448. data/lib/chef/resource/user.rb +134 -0
  449. data/lib/chef/resource/yum_package.rb +63 -0
  450. data/lib/chef/resource_collection.rb +217 -0
  451. data/lib/chef/resource_collection/stepable_iterator.rb +124 -0
  452. data/lib/chef/resource_definition.rb +67 -0
  453. data/lib/chef/resource_definition_list.rb +38 -0
  454. data/lib/chef/resource_platform_map.rb +151 -0
  455. data/lib/chef/resource_reporter.rb +281 -0
  456. data/lib/chef/resources.rb +67 -0
  457. data/lib/chef/rest.rb +510 -0
  458. data/lib/chef/rest/auth_credentials.rb +73 -0
  459. data/lib/chef/rest/cookie_jar.rb +31 -0
  460. data/lib/chef/rest/rest_request.rb +229 -0
  461. data/lib/chef/role.rb +349 -0
  462. data/lib/chef/run_context.rb +236 -0
  463. data/lib/chef/run_list.rb +165 -0
  464. data/lib/chef/run_list/run_list_expansion.rb +206 -0
  465. data/lib/chef/run_list/run_list_item.rb +99 -0
  466. data/lib/chef/run_list/versioned_recipe_list.rb +68 -0
  467. data/lib/chef/run_status.rb +124 -0
  468. data/lib/chef/runner.rb +95 -0
  469. data/lib/chef/sandbox.rb +153 -0
  470. data/lib/chef/scan_access_control.rb +135 -0
  471. data/lib/chef/search/query.rb +65 -0
  472. data/lib/chef/shef.rb +327 -0
  473. data/lib/chef/shef/ext.rb +591 -0
  474. data/lib/chef/shef/model_wrapper.rb +120 -0
  475. data/lib/chef/shef/shef_rest.rb +28 -0
  476. data/lib/chef/shef/shef_session.rb +296 -0
  477. data/lib/chef/shell_out.rb +6 -0
  478. data/lib/chef/solr_query.rb +187 -0
  479. data/lib/chef/solr_query/lucene.treetop +150 -0
  480. data/lib/chef/solr_query/lucene_nodes.rb +285 -0
  481. data/lib/chef/solr_query/query_transform.rb +65 -0
  482. data/lib/chef/solr_query/solr_http_request.rb +132 -0
  483. data/lib/chef/streaming_cookbook_uploader.rb +201 -0
  484. data/lib/chef/tasks/chef_repo.rake +334 -0
  485. data/lib/chef/util/file_edit.rb +132 -0
  486. data/lib/chef/util/windows.rb +56 -0
  487. data/lib/chef/util/windows/net_group.rb +101 -0
  488. data/lib/chef/util/windows/net_use.rb +121 -0
  489. data/lib/chef/util/windows/net_user.rb +198 -0
  490. data/lib/chef/util/windows/volume.rb +59 -0
  491. data/lib/chef/version.rb +23 -0
  492. data/lib/chef/version_class.rb +70 -0
  493. data/lib/chef/version_constraint.rb +116 -0
  494. data/lib/chef/webui_user.rb +231 -0
  495. data/lib/chef/win32/api.rb +364 -0
  496. data/lib/chef/win32/api/error.rb +921 -0
  497. data/lib/chef/win32/api/file.rb +535 -0
  498. data/lib/chef/win32/api/memory.rb +105 -0
  499. data/lib/chef/win32/api/process.rb +41 -0
  500. data/lib/chef/win32/api/psapi.rb +51 -0
  501. data/lib/chef/win32/api/security.rb +341 -0
  502. data/lib/chef/win32/api/system.rb +192 -0
  503. data/lib/chef/win32/api/unicode.rb +178 -0
  504. data/lib/chef/win32/error.rb +73 -0
  505. data/lib/chef/win32/file.rb +167 -0
  506. data/lib/chef/win32/file/info.rb +100 -0
  507. data/lib/chef/win32/handle.rb +55 -0
  508. data/lib/chef/win32/memory.rb +101 -0
  509. data/lib/chef/win32/process.rb +84 -0
  510. data/lib/chef/win32/security.rb +489 -0
  511. data/lib/chef/win32/security/ace.rb +125 -0
  512. data/lib/chef/win32/security/acl.rb +101 -0
  513. data/lib/chef/win32/security/securable_object.rb +109 -0
  514. data/lib/chef/win32/security/security_descriptor.rb +93 -0
  515. data/lib/chef/win32/security/sid.rb +199 -0
  516. data/lib/chef/win32/security/token.rb +64 -0
  517. data/lib/chef/win32/unicode.rb +43 -0
  518. data/lib/chef/win32/version.rb +119 -0
  519. data/spec/data/bad-config.rb +1 -0
  520. data/spec/data/big_json.json +2 -0
  521. data/spec/data/big_json_plus_one.json +2 -0
  522. data/spec/data/bootstrap/test-hints.erb +12 -0
  523. data/spec/data/bootstrap/test.erb +1 -0
  524. data/spec/data/cb_version_cookbooks/tatft/README.rdoc +3 -0
  525. data/spec/data/cb_version_cookbooks/tatft/attributes/default.rb +1 -0
  526. data/spec/data/cb_version_cookbooks/tatft/definitions/runit_service.rb +1 -0
  527. data/spec/data/cb_version_cookbooks/tatft/files/default/giant_blob.tgz +1 -0
  528. data/spec/data/cb_version_cookbooks/tatft/libraries/ownage.rb +1 -0
  529. data/spec/data/cb_version_cookbooks/tatft/providers/lwp.rb +1 -0
  530. data/spec/data/cb_version_cookbooks/tatft/recipes/default.rb +1 -0
  531. data/spec/data/cb_version_cookbooks/tatft/resources/lwr.rb +1 -0
  532. data/spec/data/cb_version_cookbooks/tatft/templates/default/configuration.erb +0 -0
  533. data/spec/data/checksum/random.txt +1 -0
  534. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-600hhz-0 +1 -0
  535. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-6m8zdk-0 +0 -0
  536. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-ahd2gq-0 +1 -0
  537. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-api8ux-0 +1 -0
  538. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-b0r1m1-0 +1 -0
  539. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-bfygsi-0 +1 -0
  540. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-el14l6-0 +1 -0
  541. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-ivrl3y-0 +1 -0
  542. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-kkbs85-0 +1 -0
  543. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-ory1ux-0 +1 -0
  544. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-pgsq76-0 +1 -0
  545. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-ra8uim-0 +1 -0
  546. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-t7k1g-0 +1 -0
  547. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-t8g0sv-0 +1 -0
  548. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-ufy6g3-0 +1 -0
  549. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-x2d6j9-0 +1 -0
  550. data/spec/data/checksum_cache/chef-file--tmp-chef-rendered-template20100929-10863-xi0l6h-0 +1 -0
  551. data/spec/data/config.rb +6 -0
  552. data/spec/data/cookbooks/angrybash/recipes/default.rb +8 -0
  553. data/spec/data/cookbooks/apache2/files/default/apache2_module_conf_generate.pl +2 -0
  554. data/spec/data/cookbooks/apache2/recipes/default.rb +3 -0
  555. data/spec/data/cookbooks/borken/recipes/default.rb +2 -0
  556. data/spec/data/cookbooks/borken/templates/default/borken.erb +2 -0
  557. data/spec/data/cookbooks/chefignore +8 -0
  558. data/spec/data/cookbooks/java/files/default/java.response +2 -0
  559. data/spec/data/cookbooks/openldap/attributes/default.rb +15 -0
  560. data/spec/data/cookbooks/openldap/attributes/smokey.rb +1 -0
  561. data/spec/data/cookbooks/openldap/definitions/client.rb +5 -0
  562. data/spec/data/cookbooks/openldap/definitions/server.rb +5 -0
  563. data/spec/data/cookbooks/openldap/files/default/.dotfile +1 -0
  564. data/spec/data/cookbooks/openldap/files/default/.ssh/id_rsa +1 -0
  565. data/spec/data/cookbooks/openldap/files/default/remotedir/.a_dotdir/.a_dotfile_in_a_dotdir +1 -0
  566. data/spec/data/cookbooks/openldap/files/default/remotedir/remote_dir_file1.txt +3 -0
  567. data/spec/data/cookbooks/openldap/files/default/remotedir/remote_dir_file2.txt +3 -0
  568. data/spec/data/cookbooks/openldap/files/default/remotedir/remotesubdir/.a_dotfile +1 -0
  569. data/spec/data/cookbooks/openldap/files/default/remotedir/remotesubdir/remote_subdir_file1.txt +3 -0
  570. data/spec/data/cookbooks/openldap/files/default/remotedir/remotesubdir/remote_subdir_file2.txt +3 -0
  571. data/spec/data/cookbooks/openldap/files/default/remotedir/subdir_with_no_file_just_a_subsubdir/the_subsubdir/some_file.txt +3 -0
  572. data/spec/data/cookbooks/openldap/recipes/default.rb +3 -0
  573. data/spec/data/cookbooks/openldap/recipes/gigantor.rb +3 -0
  574. data/spec/data/cookbooks/openldap/recipes/one.rb +15 -0
  575. data/spec/data/cookbooks/openldap/templates/default/openldap_stuff.conf.erb +1 -0
  576. data/spec/data/cookbooks/openldap/templates/default/openldap_variable_stuff.conf.erb +1 -0
  577. data/spec/data/cookbooks/openldap/templates/default/test.erb +1 -0
  578. data/spec/data/definitions/test.rb +5 -0
  579. data/spec/data/environment-config.rb +5 -0
  580. data/spec/data/fileedit/blank +0 -0
  581. data/spec/data/fileedit/hosts +4 -0
  582. data/spec/data/gems/chef-integration-test-0.1.0.gem +0 -0
  583. data/spec/data/git_bundles/sinatra-test-app-with-callback-files.gitbundle +0 -0
  584. data/spec/data/git_bundles/sinatra-test-app-with-symlinks.gitbundle +0 -0
  585. data/spec/data/git_bundles/sinatra-test-app.gitbundle +0 -0
  586. data/spec/data/kitchen/chefignore +6 -0
  587. data/spec/data/kitchen/openldap/attributes/default.rb +3 -0
  588. data/spec/data/kitchen/openldap/attributes/robinson.rb +3 -0
  589. data/spec/data/kitchen/openldap/definitions/client.rb +3 -0
  590. data/spec/data/kitchen/openldap/definitions/drewbarrymore.rb +3 -0
  591. data/spec/data/kitchen/openldap/recipes/gigantor.rb +3 -0
  592. data/spec/data/kitchen/openldap/recipes/ignoreme.rb +3 -0
  593. data/spec/data/kitchen/openldap/recipes/woot.rb +3 -0
  594. data/spec/data/knife-home/.chef/plugins/knife/example_home_subcommand.rb +0 -0
  595. data/spec/data/knife-site-subcommands/plugins/knife/example_subcommand.rb +0 -0
  596. data/spec/data/knife_subcommand/test_explicit_category.rb +7 -0
  597. data/spec/data/knife_subcommand/test_name_mapping.rb +4 -0
  598. data/spec/data/knife_subcommand/test_yourself.rb +13 -0
  599. data/spec/data/lwrp/providers/buck_passer.rb +3 -0
  600. data/spec/data/lwrp/providers/buck_passer_2.rb +10 -0
  601. data/spec/data/lwrp/providers/embedded_resource_accesses_providers_scope.rb +16 -0
  602. data/spec/data/lwrp/providers/monkey_name_printer.rb +5 -0
  603. data/spec/data/lwrp/providers/paint_drying_watcher.rb +7 -0
  604. data/spec/data/lwrp/providers/thumb_twiddler.rb +7 -0
  605. data/spec/data/lwrp/resources/bar.rb +1 -0
  606. data/spec/data/lwrp/resources/foo.rb +3 -0
  607. data/spec/data/lwrp/resources_with_default_attributes/nodeattr.rb +1 -0
  608. data/spec/data/lwrp_const_scoping/resources/conflict.rb +0 -0
  609. data/spec/data/lwrp_override/providers/buck_passer.rb +10 -0
  610. data/spec/data/lwrp_override/resources/foo.rb +4 -0
  611. data/spec/data/metadata/quick_start/metadata.rb +19 -0
  612. data/spec/data/nodes/default.rb +15 -0
  613. data/spec/data/nodes/test.example.com.rb +17 -0
  614. data/spec/data/nodes/test.rb +15 -0
  615. data/spec/data/object_loader/environments/test.json +5 -0
  616. data/spec/data/object_loader/environments/test.rb +2 -0
  617. data/spec/data/object_loader/environments/test_json_class.json +6 -0
  618. data/spec/data/object_loader/nodes/test.json +5 -0
  619. data/spec/data/object_loader/nodes/test.rb +2 -0
  620. data/spec/data/object_loader/nodes/test_json_class.json +6 -0
  621. data/spec/data/object_loader/roles/test.json +5 -0
  622. data/spec/data/object_loader/roles/test.rb +2 -0
  623. data/spec/data/object_loader/roles/test_json_class.json +6 -0
  624. data/spec/data/old_home_dir/my-dot-emacs +0 -0
  625. data/spec/data/old_home_dir/my-dot-vim +0 -0
  626. data/spec/data/recipes/test.rb +7 -0
  627. data/spec/data/remote_directory_data/remote_dir_file.txt +1 -0
  628. data/spec/data/remote_directory_data/remote_subdirectory/remote_subdir_file.txt +1 -0
  629. data/spec/data/remote_file/nyan_cat.png +0 -0
  630. data/spec/data/run_context/cookbooks/test/attributes/george.rb +1 -0
  631. data/spec/data/run_context/cookbooks/test/definitions/new_animals.rb +9 -0
  632. data/spec/data/run_context/cookbooks/test/definitions/new_cat.rb +5 -0
  633. data/spec/data/run_context/cookbooks/test/recipes/default.rb +5 -0
  634. data/spec/data/run_context/cookbooks/test/recipes/one.rb +7 -0
  635. data/spec/data/run_context/cookbooks/test/recipes/two.rb +7 -0
  636. data/spec/data/run_context/nodes/run_context.rb +5 -0
  637. data/spec/data/search_queries_to_transform.txt +98 -0
  638. data/spec/data/ssl/5e707473.0 +18 -0
  639. data/spec/data/ssl/chef-rspec.cert +27 -0
  640. data/spec/data/ssl/chef-rspec.key +27 -0
  641. data/spec/data/ssl/key.pem +15 -0
  642. data/spec/data/ssl/private_key.pem +27 -0
  643. data/spec/data/ssl/private_key_with_whitespace.pem +32 -0
  644. data/spec/data/templates/seattle.txt +1 -0
  645. data/spec/functional/knife/cookbook_delete_spec.rb +160 -0
  646. data/spec/functional/knife/exec_spec.rb +60 -0
  647. data/spec/functional/knife/ssh_spec.rb +268 -0
  648. data/spec/functional/resource/cookbook_file_spec.rb +75 -0
  649. data/spec/functional/resource/deploy_revision_spec.rb +515 -0
  650. data/spec/functional/resource/directory_spec.rb +39 -0
  651. data/spec/functional/resource/file_spec.rb +69 -0
  652. data/spec/functional/resource/link_spec.rb +572 -0
  653. data/spec/functional/resource/remote_directory_spec.rb +114 -0
  654. data/spec/functional/resource/remote_file_spec.rb +65 -0
  655. data/spec/functional/resource/template_spec.rb +68 -0
  656. data/spec/functional/tiny_server_spec.rb +78 -0
  657. data/spec/rcov.opts +2 -0
  658. data/spec/spec_helper.rb +82 -0
  659. data/spec/stress/win32/file_spec.rb +37 -0
  660. data/spec/stress/win32/memory_spec.rb +22 -0
  661. data/spec/stress/win32/security_spec.rb +69 -0
  662. data/spec/support/chef_helpers.rb +65 -0
  663. data/spec/support/lib/chef/provider/easy.rb +35 -0
  664. data/spec/support/lib/chef/provider/snakeoil.rb +40 -0
  665. data/spec/support/lib/chef/resource/cat.rb +41 -0
  666. data/spec/support/lib/chef/resource/one_two_three_four.rb +43 -0
  667. data/spec/support/lib/chef/resource/zen_master.rb +46 -0
  668. data/spec/support/matchers/leak.rb +96 -0
  669. data/spec/support/mock/constant.rb +52 -0
  670. data/spec/support/mock/platform.rb +18 -0
  671. data/spec/support/platform_helpers.rb +39 -0
  672. data/spec/support/platforms/prof/gc.rb +54 -0
  673. data/spec/support/platforms/prof/win32.rb +46 -0
  674. data/spec/support/shared/functional/directory_resource.rb +85 -0
  675. data/spec/support/shared/functional/file_resource.rb +202 -0
  676. data/spec/support/shared/functional/knife.rb +37 -0
  677. data/spec/support/shared/functional/securable_resource.rb +402 -0
  678. data/spec/support/shared/unit/api_error_inspector.rb +192 -0
  679. data/spec/tiny_server.rb +202 -0
  680. data/spec/unit/api_client_spec.rb +257 -0
  681. data/spec/unit/application/agent_spec.rb +0 -0
  682. data/spec/unit/application/client_spec.rb +171 -0
  683. data/spec/unit/application/knife_spec.rb +152 -0
  684. data/spec/unit/application/server_spec.rb +0 -0
  685. data/spec/unit/application/solo_spec.rb +167 -0
  686. data/spec/unit/application_spec.rb +239 -0
  687. data/spec/unit/certificate_spec.rb +76 -0
  688. data/spec/unit/checksum/storage/filesystem_spec.rb +69 -0
  689. data/spec/unit/checksum_cache_spec.rb +209 -0
  690. data/spec/unit/checksum_spec.rb +94 -0
  691. data/spec/unit/chef_spec.rb +25 -0
  692. data/spec/unit/client_spec.rb +290 -0
  693. data/spec/unit/config_spec.rb +223 -0
  694. data/spec/unit/cookbook/chefignore_spec.rb +39 -0
  695. data/spec/unit/cookbook/metadata_spec.rb +627 -0
  696. data/spec/unit/cookbook/synchronizer_spec.rb +306 -0
  697. data/spec/unit/cookbook/syntax_check_spec.rb +211 -0
  698. data/spec/unit/cookbook_loader_spec.rb +145 -0
  699. data/spec/unit/cookbook_manifest_spec.rb +554 -0
  700. data/spec/unit/cookbook_spec.rb +101 -0
  701. data/spec/unit/cookbook_version_spec.rb +406 -0
  702. data/spec/unit/couchdb_spec.rb +274 -0
  703. data/spec/unit/daemon_spec.rb +302 -0
  704. data/spec/unit/data_bag_item_spec.rb +280 -0
  705. data/spec/unit/data_bag_spec.rb +169 -0
  706. data/spec/unit/encrypted_data_bag_item_spec.rb +293 -0
  707. data/spec/unit/environment_spec.rb +492 -0
  708. data/spec/unit/exceptions_spec.rb +74 -0
  709. data/spec/unit/file_access_control_spec.rb +282 -0
  710. data/spec/unit/file_cache_spec.rb +114 -0
  711. data/spec/unit/formatters/error_inspectors/compile_error_inspector_spec.rb +202 -0
  712. data/spec/unit/formatters/error_inspectors/cookbook_resolve_error_inspector_spec.rb +93 -0
  713. data/spec/unit/formatters/error_inspectors/cookbook_sync_error_inspector_spec.rb +43 -0
  714. data/spec/unit/formatters/error_inspectors/node_load_error_inspector_spec.rb +27 -0
  715. data/spec/unit/formatters/error_inspectors/registration_error_inspector_spec.rb +27 -0
  716. data/spec/unit/formatters/error_inspectors/resource_failure_inspector_spec.rb +182 -0
  717. data/spec/unit/formatters/error_inspectors/run_list_expansion_error_inspector_spec.rb +93 -0
  718. data/spec/unit/handler/json_file_spec.rb +64 -0
  719. data/spec/unit/handler_spec.rb +216 -0
  720. data/spec/unit/index_queue_spec.rb +391 -0
  721. data/spec/unit/json_compat_spec.rb +61 -0
  722. data/spec/unit/knife/bootstrap_spec.rb +265 -0
  723. data/spec/unit/knife/client_bulk_delete_spec.rb +78 -0
  724. data/spec/unit/knife/client_create_spec.rb +74 -0
  725. data/spec/unit/knife/client_delete_spec.rb +40 -0
  726. data/spec/unit/knife/client_edit_spec.rb +40 -0
  727. data/spec/unit/knife/client_list_spec.rb +34 -0
  728. data/spec/unit/knife/client_reregister_spec.rb +62 -0
  729. data/spec/unit/knife/client_show_spec.rb +42 -0
  730. data/spec/unit/knife/config_file_selection_spec.rb +118 -0
  731. data/spec/unit/knife/configure_client_spec.rb +83 -0
  732. data/spec/unit/knife/configure_spec.rb +229 -0
  733. data/spec/unit/knife/cookbook_bulk_delete_spec.rb +87 -0
  734. data/spec/unit/knife/cookbook_create_spec.rb +271 -0
  735. data/spec/unit/knife/cookbook_delete_spec.rb +239 -0
  736. data/spec/unit/knife/cookbook_download_spec.rb +217 -0
  737. data/spec/unit/knife/cookbook_list_spec.rb +88 -0
  738. data/spec/unit/knife/cookbook_metadata_from_file_spec.rb +65 -0
  739. data/spec/unit/knife/cookbook_metadata_spec.rb +172 -0
  740. data/spec/unit/knife/cookbook_show_spec.rb +223 -0
  741. data/spec/unit/knife/cookbook_site_download_spec.rb +151 -0
  742. data/spec/unit/knife/cookbook_site_install_spec.rb +148 -0
  743. data/spec/unit/knife/cookbook_site_share_spec.rb +146 -0
  744. data/spec/unit/knife/cookbook_site_unshare_spec.rb +77 -0
  745. data/spec/unit/knife/cookbook_test_spec.rb +83 -0
  746. data/spec/unit/knife/cookbook_upload_spec.rb +148 -0
  747. data/spec/unit/knife/core/bootstrap_context_spec.rb +135 -0
  748. data/spec/unit/knife/core/cookbook_scm_repo_spec.rb +187 -0
  749. data/spec/unit/knife/core/object_loader_spec.rb +81 -0
  750. data/spec/unit/knife/core/subcommand_loader_spec.rb +54 -0
  751. data/spec/unit/knife/core/ui_spec.rb +160 -0
  752. data/spec/unit/knife/data_bag_create_spec.rb +101 -0
  753. data/spec/unit/knife/data_bag_edit_spec.rb +96 -0
  754. data/spec/unit/knife/data_bag_from_file_spec.rb +198 -0
  755. data/spec/unit/knife/data_bag_show_spec.rb +105 -0
  756. data/spec/unit/knife/environment_create_spec.rb +91 -0
  757. data/spec/unit/knife/environment_delete_spec.rb +71 -0
  758. data/spec/unit/knife/environment_edit_spec.rb +79 -0
  759. data/spec/unit/knife/environment_from_file_spec.rb +89 -0
  760. data/spec/unit/knife/environment_list_spec.rb +54 -0
  761. data/spec/unit/knife/environment_show_spec.rb +52 -0
  762. data/spec/unit/knife/index_rebuild_spec.rb +65 -0
  763. data/spec/unit/knife/knife_help.rb +92 -0
  764. data/spec/unit/knife/node_bulk_delete_spec.rb +97 -0
  765. data/spec/unit/knife/node_delete_spec.rb +68 -0
  766. data/spec/unit/knife/node_edit_spec.rb +88 -0
  767. data/spec/unit/knife/node_from_file_spec.rb +59 -0
  768. data/spec/unit/knife/node_list_spec.rb +63 -0
  769. data/spec/unit/knife/node_run_list_add_spec.rb +125 -0
  770. data/spec/unit/knife/node_run_list_remove_spec.rb +73 -0
  771. data/spec/unit/knife/node_show_spec.rb +48 -0
  772. data/spec/unit/knife/role_bulk_delete_spec.rb +80 -0
  773. data/spec/unit/knife/role_create_spec.rb +80 -0
  774. data/spec/unit/knife/role_delete_spec.rb +67 -0
  775. data/spec/unit/knife/role_edit_spec.rb +79 -0
  776. data/spec/unit/knife/role_from_file_spec.rb +69 -0
  777. data/spec/unit/knife/role_list_spec.rb +56 -0
  778. data/spec/unit/knife/ssh_spec.rb +293 -0
  779. data/spec/unit/knife/status_spec.rb +43 -0
  780. data/spec/unit/knife/tag_create_spec.rb +23 -0
  781. data/spec/unit/knife/tag_delete_spec.rb +25 -0
  782. data/spec/unit/knife/tag_list_spec.rb +23 -0
  783. data/spec/unit/knife_spec.rb +295 -0
  784. data/spec/unit/log_spec.rb +24 -0
  785. data/spec/unit/lwrp_spec.rb +256 -0
  786. data/spec/unit/mash_spec.rb +51 -0
  787. data/spec/unit/mixin/checksum_spec.rb +41 -0
  788. data/spec/unit/mixin/command_spec.rb +105 -0
  789. data/spec/unit/mixin/convert_to_class_name_spec.rb +50 -0
  790. data/spec/unit/mixin/deep_merge_spec.rb +786 -0
  791. data/spec/unit/mixin/deprecation_spec.rb +34 -0
  792. data/spec/unit/mixin/enforce_ownership_and_permissions_spec.rb +90 -0
  793. data/spec/unit/mixin/language_spec.rb +305 -0
  794. data/spec/unit/mixin/params_validate_spec.rb +405 -0
  795. data/spec/unit/mixin/path_sanity_spec.rb +80 -0
  796. data/spec/unit/mixin/securable_spec.rb +254 -0
  797. data/spec/unit/mixin/shell_out_spec.rb +109 -0
  798. data/spec/unit/mixin/template_spec.rb +104 -0
  799. data/spec/unit/mixin/xml_escape_spec.rb +54 -0
  800. data/spec/unit/monkey_patches/string_spec.rb +37 -0
  801. data/spec/unit/node/attribute_spec.rb +1033 -0
  802. data/spec/unit/node_spec.rb +744 -0
  803. data/spec/unit/openid_registration_spec.rb +153 -0
  804. data/spec/unit/platform_spec.rb +241 -0
  805. data/spec/unit/provider/breakpoint_spec.rb +54 -0
  806. data/spec/unit/provider/cookbook_file_spec.rb +218 -0
  807. data/spec/unit/provider/cron/solaris_spec.rb +121 -0
  808. data/spec/unit/provider/cron_spec.rb +812 -0
  809. data/spec/unit/provider/deploy/revision_spec.rb +103 -0
  810. data/spec/unit/provider/deploy/timestamped_spec.rb +40 -0
  811. data/spec/unit/provider/deploy_spec.rb +620 -0
  812. data/spec/unit/provider/directory_spec.rb +156 -0
  813. data/spec/unit/provider/env_spec.rb +232 -0
  814. data/spec/unit/provider/erl_call_spec.rb +86 -0
  815. data/spec/unit/provider/execute_spec.rb +63 -0
  816. data/spec/unit/provider/file_spec.rb +505 -0
  817. data/spec/unit/provider/git_spec.rb +342 -0
  818. data/spec/unit/provider/group/dscl_spec.rb +294 -0
  819. data/spec/unit/provider/group/gpasswd_spec.rb +108 -0
  820. data/spec/unit/provider/group/groupadd_spec.rb +161 -0
  821. data/spec/unit/provider/group/groupmod_spec.rb +134 -0
  822. data/spec/unit/provider/group/pw_spec.rb +140 -0
  823. data/spec/unit/provider/group/usermod_spec.rb +95 -0
  824. data/spec/unit/provider/group/windows_spec.rb +94 -0
  825. data/spec/unit/provider/group_spec.rb +259 -0
  826. data/spec/unit/provider/http_request_spec.rb +178 -0
  827. data/spec/unit/provider/ifconfig_spec.rb +213 -0
  828. data/spec/unit/provider/link_spec.rb +252 -0
  829. data/spec/unit/provider/log_spec.rb +81 -0
  830. data/spec/unit/provider/mdadm_spec.rb +128 -0
  831. data/spec/unit/provider/mount/mount_spec.rb +398 -0
  832. data/spec/unit/provider/mount/windows_spec.rb +134 -0
  833. data/spec/unit/provider/mount_spec.rb +160 -0
  834. data/spec/unit/provider/ohai_spec.rb +85 -0
  835. data/spec/unit/provider/package/apt_spec.rb +352 -0
  836. data/spec/unit/provider/package/dpkg_spec.rb +216 -0
  837. data/spec/unit/provider/package/easy_install_spec.rb +112 -0
  838. data/spec/unit/provider/package/freebsd_spec.rb +259 -0
  839. data/spec/unit/provider/package/ips_spec.rb +210 -0
  840. data/spec/unit/provider/package/macports_spec.rb +203 -0
  841. data/spec/unit/provider/package/pacman_spec.rb +206 -0
  842. data/spec/unit/provider/package/portage_spec.rb +320 -0
  843. data/spec/unit/provider/package/rpm_spec.rb +152 -0
  844. data/spec/unit/provider/package/rubygems_spec.rb +639 -0
  845. data/spec/unit/provider/package/smartos_spec.rb +83 -0
  846. data/spec/unit/provider/package/solaris_spec.rb +181 -0
  847. data/spec/unit/provider/package/yum_spec.rb +1856 -0
  848. data/spec/unit/provider/package/zypper_spec.rb +159 -0
  849. data/spec/unit/provider/package_spec.rb +427 -0
  850. data/spec/unit/provider/remote_directory_spec.rb +222 -0
  851. data/spec/unit/provider/remote_file_spec.rb +288 -0
  852. data/spec/unit/provider/route_spec.rb +226 -0
  853. data/spec/unit/provider/ruby_block_spec.rb +38 -0
  854. data/spec/unit/provider/script_spec.rb +96 -0
  855. data/spec/unit/provider/service/arch_service_spec.rb +330 -0
  856. data/spec/unit/provider/service/debian_service_spec.rb +254 -0
  857. data/spec/unit/provider/service/freebsd_service_spec.rb +379 -0
  858. data/spec/unit/provider/service/gentoo_service_spec.rb +144 -0
  859. data/spec/unit/provider/service/init_service_spec.rb +212 -0
  860. data/spec/unit/provider/service/insserv_service_spec.rb +76 -0
  861. data/spec/unit/provider/service/invokercd_service_spec.rb +212 -0
  862. data/spec/unit/provider/service/macosx_spec.rb +229 -0
  863. data/spec/unit/provider/service/redhat_spec.rb +156 -0
  864. data/spec/unit/provider/service/simple_service_spec.rb +171 -0
  865. data/spec/unit/provider/service/solaris_smf_service_spec.rb +140 -0
  866. data/spec/unit/provider/service/systemd_service_spec.rb +239 -0
  867. data/spec/unit/provider/service/upstart_service_spec.rb +314 -0
  868. data/spec/unit/provider/service/windows_spec.rb +235 -0
  869. data/spec/unit/provider/service_spec.rb +169 -0
  870. data/spec/unit/provider/subversion_spec.rb +281 -0
  871. data/spec/unit/provider/template_spec.rb +196 -0
  872. data/spec/unit/provider/user/dscl_spec.rb +454 -0
  873. data/spec/unit/provider/user/pw_spec.rb +235 -0
  874. data/spec/unit/provider/user/solaris_spec.rb +414 -0
  875. data/spec/unit/provider/user/useradd_spec.rb +386 -0
  876. data/spec/unit/provider/user/windows_spec.rb +178 -0
  877. data/spec/unit/provider/user_spec.rb +468 -0
  878. data/spec/unit/provider_spec.rb +169 -0
  879. data/spec/unit/recipe_spec.rb +268 -0
  880. data/spec/unit/resource/apt_package_spec.rb +43 -0
  881. data/spec/unit/resource/bash_spec.rb +40 -0
  882. data/spec/unit/resource/breakpoint_spec.rb +43 -0
  883. data/spec/unit/resource/chef_gem_spec.rb +49 -0
  884. data/spec/unit/resource/conditional_spec.rb +147 -0
  885. data/spec/unit/resource/cookbook_file_spec.rb +89 -0
  886. data/spec/unit/resource/cron_spec.rb +181 -0
  887. data/spec/unit/resource/csh_spec.rb +40 -0
  888. data/spec/unit/resource/deploy_revision_spec.rb +47 -0
  889. data/spec/unit/resource/deploy_spec.rb +259 -0
  890. data/spec/unit/resource/directory_spec.rb +82 -0
  891. data/spec/unit/resource/dpkg_package_spec.rb +38 -0
  892. data/spec/unit/resource/easy_install_package_spec.rb +48 -0
  893. data/spec/unit/resource/env_spec.rb +85 -0
  894. data/spec/unit/resource/erl_call_spec.rb +81 -0
  895. data/spec/unit/resource/execute_spec.rb +124 -0
  896. data/spec/unit/resource/file_spec.rb +121 -0
  897. data/spec/unit/resource/freebsd_package_spec.rb +39 -0
  898. data/spec/unit/resource/gem_package_spec.rb +49 -0
  899. data/spec/unit/resource/git_spec.rb +46 -0
  900. data/spec/unit/resource/group_spec.rb +148 -0
  901. data/spec/unit/resource/http_request_spec.rb +59 -0
  902. data/spec/unit/resource/ifconfig_spec.rb +46 -0
  903. data/spec/unit/resource/ips_package_spec.rb +43 -0
  904. data/spec/unit/resource/link_spec.rb +118 -0
  905. data/spec/unit/resource/log_spec.rb +70 -0
  906. data/spec/unit/resource/macports_package_spec.rb +37 -0
  907. data/spec/unit/resource/mdadm_spec.rb +102 -0
  908. data/spec/unit/resource/mount_spec.rb +158 -0
  909. data/spec/unit/resource/ohai_spec.rb +62 -0
  910. data/spec/unit/resource/package_spec.rb +80 -0
  911. data/spec/unit/resource/pacman_package_spec.rb +38 -0
  912. data/spec/unit/resource/perl_spec.rb +40 -0
  913. data/spec/unit/resource/portage_package_spec.rb +38 -0
  914. data/spec/unit/resource/python_spec.rb +40 -0
  915. data/spec/unit/resource/remote_directory_spec.rb +97 -0
  916. data/spec/unit/resource/remote_file_spec.rb +125 -0
  917. data/spec/unit/resource/route_spec.rb +107 -0
  918. data/spec/unit/resource/rpm_package_spec.rb +38 -0
  919. data/spec/unit/resource/ruby_block_spec.rb +57 -0
  920. data/spec/unit/resource/ruby_spec.rb +40 -0
  921. data/spec/unit/resource/scm_spec.rb +159 -0
  922. data/spec/unit/resource/script_spec.rb +69 -0
  923. data/spec/unit/resource/service_spec.rb +165 -0
  924. data/spec/unit/resource/smartos_package_spec.rb +38 -0
  925. data/spec/unit/resource/subversion_spec.rb +58 -0
  926. data/spec/unit/resource/template_spec.rb +108 -0
  927. data/spec/unit/resource/timestamped_deploy_spec.rb +28 -0
  928. data/spec/unit/resource/user_spec.rb +122 -0
  929. data/spec/unit/resource/yum_package_spec.rb +85 -0
  930. data/spec/unit/resource_collection/stepable_iterator_spec.rb +144 -0
  931. data/spec/unit/resource_collection_spec.rb +257 -0
  932. data/spec/unit/resource_definition_spec.rb +119 -0
  933. data/spec/unit/resource_platform_map_spec.rb +164 -0
  934. data/spec/unit/resource_reporter_spec.rb +591 -0
  935. data/spec/unit/resource_spec.rb +721 -0
  936. data/spec/unit/rest/auth_credentials_spec.rb +431 -0
  937. data/spec/unit/rest_spec.rb +644 -0
  938. data/spec/unit/role_spec.rb +275 -0
  939. data/spec/unit/run_context_spec.rb +64 -0
  940. data/spec/unit/run_list/run_list_expansion_spec.rb +129 -0
  941. data/spec/unit/run_list/run_list_item_spec.rb +117 -0
  942. data/spec/unit/run_list/versioned_recipe_list_spec.rb +123 -0
  943. data/spec/unit/run_list_spec.rb +521 -0
  944. data/spec/unit/run_status_spec.rb +145 -0
  945. data/spec/unit/runner_spec.rb +303 -0
  946. data/spec/unit/scan_access_control_spec.rb +182 -0
  947. data/spec/unit/search/query_spec.rb +99 -0
  948. data/spec/unit/shef/model_wrapper_spec.rb +97 -0
  949. data/spec/unit/shef/shef_ext_spec.rb +153 -0
  950. data/spec/unit/shef/shef_session_spec.rb +154 -0
  951. data/spec/unit/shef_spec.rb +161 -0
  952. data/spec/unit/solr_query/query_transform_spec.rb +454 -0
  953. data/spec/unit/solr_query/solr_http_request_spec.rb +244 -0
  954. data/spec/unit/solr_query_spec.rb +203 -0
  955. data/spec/unit/util/file_edit_spec.rb +135 -0
  956. data/spec/unit/version_class_spec.rb +172 -0
  957. data/spec/unit/version_constraint_spec.rb +134 -0
  958. data/spec/unit/webui_user_spec.rb +238 -0
  959. data/tasks/rspec.rb +75 -0
  960. metadata +1548 -0
@@ -0,0 +1,85 @@
1
+ knife-role(1) -- Group common configuration settings
2
+ ========================================
3
+
4
+ ## SYNOPSIS
5
+
6
+ __knife__ __role__ _sub-command_ _(options)_
7
+
8
+ ## ROLE SUB-COMMANDS
9
+ The following `role` subcommands are available:
10
+
11
+ ## LIST
12
+ __knife role list__ _(options)_
13
+
14
+ * `-w`, `--with-uri`:
15
+ Show corresponding URIs
16
+
17
+ List roles.
18
+
19
+ ## SHOW
20
+ __knife role show ROLE__ _(options)_
21
+
22
+ * `-a`, `--attribute ATTR`:
23
+ Show only one attribute
24
+
25
+ Show a specific role.
26
+
27
+ ## CREATE
28
+ __knife role create ROLE__ _(options)_
29
+
30
+ * `-d`, `--description`:
31
+ The role description
32
+
33
+ Create a new role.
34
+
35
+ ## EDIT
36
+ __knife role edit ROLE__ _(options)_
37
+
38
+ Edit a role.
39
+
40
+ ## FROM FILE
41
+ __knife role from file FILE__ _(options)_
42
+
43
+ Create or update a role from a role Ruby DSL (`.rb`) or JSON file.
44
+
45
+ ## DELETE
46
+ __knife role delete ROLE__ _(options)_
47
+
48
+ Delete a role.
49
+
50
+ ## BULK DELETE
51
+ __knife role bulk delete REGEX__ _(options)_
52
+
53
+ Delete roles on the Chef Server based on a regular expression. The regular expression (_REGEX_) should be in quotes, not in //'s.
54
+
55
+ ## DESCRIPTION
56
+ Roles provide a mechanism to group repeated configuration settings.
57
+ Roles are data structures that contain __default\_attributes__, and
58
+ __override_attributes__, which are nested hashes of configuration
59
+ settings, and a __run_list__, which is an ordered list of recipes and
60
+ roles that should be applied to a host by chef-client.
61
+
62
+ __default_attributes__ will be overridden if they conflict with a value
63
+ on a node that includes the role. Conversely, __override_attributes__
64
+ will override any values set on nodes that apply them.
65
+
66
+ When __chef-client__(8) configures a host, it will "expand" the
67
+ __run_list__ included in that host's node data. The expansion process
68
+ will recursively replace any roles in the run\_list with that role's
69
+ run\_list.
70
+
71
+ ## SEE ALSO
72
+ __knife-node(1)__ __knife-environment(1)__
73
+ <http://wiki.opscode.com/display/chef/Roles>
74
+ <http://wiki.opscode.com/display/chef/Attributes>
75
+
76
+ ## AUTHOR
77
+ Chef was written by Adam Jacob <adam@opscode.com> with many contributions from the community.
78
+
79
+ ## DOCUMENTATION
80
+ This manual page was written by Joshua Timberman <joshua@opscode.com>.
81
+ Permission is granted to copy, distribute and / or modify this document under the terms of the Apache 2.0 License.
82
+
83
+ ## CHEF
84
+ Knife is distributed with Chef. <http://wiki.opscode.com/display/chef/Home>
85
+
@@ -0,0 +1,180 @@
1
+ knife-search(1) -- Find objects on a Chef Server by query
2
+ ========================================
3
+
4
+ ## SYNOPSIS
5
+
6
+ __knife__ __search INDEX QUERY__ _(options)_
7
+
8
+ * `-a`, `--attribute ATTR`:
9
+ Show only one attribute
10
+ * `-i`, `--id-only`:
11
+ Show only the ID of matching objects
12
+ * `-q`, `--query QUERY`:
13
+ The search query; useful to protect queries starting with -
14
+ * `-R`, `--rows INT`:
15
+ The number of rows to return
16
+ * `-r`, `--run-list`:
17
+ Show only the run list
18
+ * `-o`, `--sort SORT`:
19
+ The order to sort the results in
20
+ * `-b`, `--start ROW`:
21
+ The row to start returning results at
22
+ * `-m`, `--medium`:
23
+ Display medium sized output when searching nodes using the default
24
+ summary format
25
+ * `-l`, `--long`:
26
+ Display long output when searching nodes using the default summary
27
+ format
28
+
29
+ ## DESCRIPTION
30
+
31
+ Search is a feature of the Chef Server that allows you to use a
32
+ full-text search engine to query information about your infrastructure
33
+ and applications. You can utilize this service via search calls in a
34
+ recipe or the knife search command. The search syntax is based on
35
+ Lucene.
36
+
37
+
38
+ ## INDEXES
39
+
40
+ Search indexes are a feature of the Chef Server and the search
41
+ sub-command allows querying any of the available indexes using SOLR
42
+ query syntax. The following data types are indexed for search:
43
+
44
+ * _node_
45
+ * _role_
46
+ * _environment_
47
+ * _clients_
48
+ * _data bag_
49
+
50
+ Data bags are indexed by the data bag's name. For example, to search a
51
+ data bag named "admins":
52
+
53
+ knife search admins "field:search_pattern"
54
+
55
+ ## QUERY SYNTAX
56
+
57
+ Queries have the form `field:search_pattern` where `field` is a key in
58
+ the JSON description of the relevant objects (nodes, roles,
59
+ environments, or data bags). Both `field` and `search_pattern` are
60
+ case-sensitive. `search_pattern` can be an exact, wildcard,
61
+ range, or fuzzy match (see below). The `field` supports exact
62
+ matching and limited wildcard matching.
63
+
64
+ Searches will return the relevant objects (nodes, roles, environments,
65
+ or data bags) where the `search_pattern` matches the object's value of
66
+ `field`.
67
+
68
+ ### FIELD NAMES
69
+
70
+ Field names are the keys within the JSON description of the object
71
+ being searched. Nested Keys can be searched by placing an underscore
72
+ ("_") between key names.
73
+
74
+ ### WILDCARD MATCHING FOR FIELD NAMES
75
+
76
+ The field name also has limited support for wildcard matching. Both
77
+ the "*" and "?" wildcards (see below) can be used within a field name;
78
+ however, they cannot be the first character of the field name.
79
+
80
+ ### EXACT MATCHES
81
+ Without any search modifiers, a search returns those fields for which
82
+ the `search_pattern` exactly matches the value of `field` in the JSON
83
+ description of the object.
84
+
85
+ ### WILDCARD MATCHES
86
+
87
+ Search support both single- and multi-character wildcard searches
88
+ within a search pattern.
89
+
90
+ '?' matches exactly one character.
91
+
92
+ '*' matches zero or more characters.
93
+
94
+ ### RANGE MATCHES
95
+ Range searches allows one to match values between two given values. To
96
+ match values between X and Y, inclusively, use square brackets:
97
+
98
+ knife search INDEX 'field:[X TO Y]
99
+
100
+ To match values between X and Y, exclusively, use curly brackets:
101
+
102
+ knife search INDEX 'field:{X TO Y}'
103
+
104
+ Values are sorted in lexicographic order.
105
+
106
+ ### FUZZY MATCHES
107
+
108
+ Fuzzy searches allows one to match values based on the Levenshtein
109
+ Distance algorithm. To perform a fuzzy match, append a tilda (~) to
110
+ the search term:
111
+
112
+ knife search INDEX 'field:term~'
113
+
114
+ This search would return nodes whose `field` was 'perm' or 'germ'.
115
+
116
+ ### BOOLEAN OPERATORS
117
+
118
+ The boolean operators NOT, AND, and OR are supported. To find values
119
+ of `field` that are not X:
120
+
121
+ knife search INDEX 'field:(NOT X)'
122
+
123
+ To find records where `field1` is X and `field2` is Y:
124
+
125
+ knife search INDEX 'field1:X AND field2:Y'
126
+
127
+ To find records where `field` is X or Y:
128
+
129
+ knife search INDEX 'field:X OR field:Y'
130
+
131
+ ### QUOTING AND SPECIAL CHARACTERS
132
+
133
+ In order to avoid having special characters and escape sequences
134
+ within your search term interpreted by either Ruby or the shell,
135
+ enclose them in single quotes.
136
+
137
+ Search terms that include spaces should be enclosed in double-quotes:
138
+
139
+ knife search INDEX 'field:"term with spaces"'
140
+
141
+ The following characters must be escaped:
142
+
143
+ + - && || ! ( ) { } [ ] ^ " ~ * ? : \
144
+
145
+ ## EXAMPLES
146
+
147
+ Find the nodes with the fully-qualified domain name (FQDN)
148
+ www.example.com:
149
+
150
+ knife search node 'fqdn:www.example.com'
151
+
152
+ Find the nodes running a version of Ubuntu:
153
+
154
+ knife search node 'platform:ubuntu*'
155
+
156
+ Find all nodes running CentOS in the production environment:
157
+
158
+ knife search node 'chef_environment:production AND platform:centos'
159
+
160
+ ## KNOWN BUGS
161
+
162
+ * Searches against the client index return no results in most cases. (CHEF-2477)
163
+ * Searches using the fuzzy match operator (~) produce an error. (CHEF-2478)
164
+
165
+ ## SEE ALSO
166
+ __knife-ssh__(1)
167
+ <http://wiki.opscode.com/display/chef/Attributes>
168
+ [Lucene Query Parser Syntax](http://lucene.apache.org/java/2_3_2/queryparsersyntax.html)
169
+
170
+ ## AUTHOR
171
+ Chef was written by Adam Jacob <adam@opscode.com> with many contributions from the community.
172
+
173
+ ## DOCUMENTATION
174
+ This manual page was written by Joshua Timberman <joshua@opscode.com>.
175
+ Permission is granted to copy, distribute and / or modify this document under the terms of the Apache 2.0 License.
176
+
177
+ ## CHEF
178
+ Knife is distributed with Chef. <http://wiki.opscode.com/display/chef/Home>
179
+
180
+
@@ -0,0 +1,69 @@
1
+ knife-ssh(1) -- Run a command or interactive session on multiple remote hosts
2
+ ========================================
3
+
4
+ ## SYNOPSIS
5
+
6
+ __knife__ __ssh QUERY COMMAND__ _(options)_
7
+
8
+ * `-a`, `--attribute ATTR `:
9
+ The attribute to use for opening the connection - default is fqdn
10
+ * `-C`, `--concurrency NUM `:
11
+ The number of concurrent connections
12
+ * `-m`, `--manual-list `:
13
+ QUERY is a space separated list of servers
14
+ * `-P`, `--ssh-password PASSWORD`:
15
+ The ssh password
16
+ * `-x`, `--ssh-user USERNAME `:
17
+ The ssh username
18
+ * `-i`, `--identity-file IDENTITY_FILE`:
19
+ The SSH identity file used for authentication
20
+ * `-p`, `--ssh-port PORT`:
21
+ The ssh port
22
+ * `--[no-]host-key-verify`:
23
+ Verify host key, enabled by default.
24
+
25
+ ## DESCRIPTION
26
+
27
+ The _ssh_ sub-command opens an ssh session to each of the nodes in the
28
+ search results of the _QUERY_. This sub-command requires that the
29
+ net-ssh-multi and highline Ruby libraries are installed. On Debian
30
+ systems, these are the libnet-ssh-multi-ruby and libhighline-ruby
31
+ packages. They can also be installed as RubyGems (net-ssh-multi and
32
+ highline, respectively).
33
+
34
+ ## TERMINAL MULTIPLEXING AND TERMINAL TAB SUPPORT
35
+ `knife ssh` integrates with several terminal multiplexer programs to
36
+ provide a more convenient means of managing multiple ssh sessions. When
37
+ the _COMMAND_ option matches one of these, `knife ssh` will create
38
+ multiple interactive ssh sessions running locally in the terminal
39
+ multiplexer instead of invoking the command on the remote host.
40
+
41
+ The available multiplexers are:
42
+
43
+ * `interactive`:
44
+ A built-in multiplexer. `interactive` supports running commands on a
45
+ subset of the connected hosts in parallel
46
+ * __screen__(1):
47
+ Runs ssh interactively inside `screen`. ~/.screenrc will be sourced
48
+ if it exists.
49
+ * __tmux__(1):
50
+ Runs ssh interactively inside tmux.
51
+ * `macterm` (Mac OS X only):
52
+ Opens a Terminal.app window and creates a tab for each ssh session.
53
+ You must install the rb-appscript gem before you can use this
54
+ option.
55
+
56
+ ## SEE ALSO
57
+ __knife-search__(1)
58
+
59
+ ## AUTHOR
60
+ Chef was written by Adam Jacob <adam@opscode.com> with many contributions from the community.
61
+
62
+ ## DOCUMENTATION
63
+ This manual page was written by Joshua Timberman <joshua@opscode.com>.
64
+ Permission is granted to copy, distribute and / or modify this document under the terms of the Apache 2.0 License.
65
+
66
+ ## CHEF
67
+ Knife is distributed with Chef. <http://wiki.opscode.com/display/chef/Home>
68
+
69
+
@@ -0,0 +1,36 @@
1
+ knife-status(1) -- Display status information for the nodes in your infrastructure
2
+ ========================================
3
+
4
+ ## SYNOPSIS
5
+
6
+ __knife__ __status__ _(options)_
7
+
8
+ * `-r`, `--run-list RUN_LIST`:
9
+ Show the run list
10
+
11
+ ## DESCRIPTION
12
+
13
+ The _status_ sub-command searches the Chef Server for all nodes and
14
+ displays information about the last time the node checked into the
15
+ server and executed a `node.save`. The fields displayed are the relative
16
+ checkin time, the node name, it's operating system platform and version,
17
+ the fully-qualified domain name and the default IP address. If the `-r`
18
+ option is given, the node's run list will also be displayed. Note that
19
+ depending on the configuration of the nodes, the FQDN and IP displayed
20
+ may not be publicly reachable.
21
+
22
+
23
+ ## SEE ALSO
24
+ __knife-search__(1)
25
+
26
+ ## AUTHOR
27
+ Chef was written by Adam Jacob <adam@opscode.com> with many contributions from the community.
28
+
29
+ ## DOCUMENTATION
30
+ This manual page was written by Joshua Timberman <joshua@opscode.com>.
31
+ Permission is granted to copy, distribute and / or modify this document under the terms of the Apache 2.0 License.
32
+
33
+ ## CHEF
34
+ Knife is distributed with Chef. <http://wiki.opscode.com/display/chef/Home>
35
+
36
+
@@ -0,0 +1,39 @@
1
+ knife-tag(1) -- Apply tags to nodes on a Chef Server
2
+ ========================================
3
+
4
+ ## SYNOPSIS
5
+
6
+ __knife__ __tag__ _subcommand_ _(options)_
7
+
8
+ ## TAG SUBCOMMANDS
9
+ The following `tag` subcommands are available:
10
+
11
+ ## CREATE
12
+ __knife tag create__ _node_ _tag_ [_..._]
13
+
14
+ Adds one or more tags to _node_
15
+
16
+ ## DELETE
17
+ __knife tag delete__ _node_ _tag_ [_..._]
18
+
19
+ Removes one or more tags from _node_
20
+
21
+ ## LIST
22
+ __knife tag list__ _node_
23
+
24
+ Lists the tags applied to _node_
25
+
26
+
27
+ ## SEE ALSO
28
+ __knife-node(1)__
29
+
30
+ ## AUTHOR
31
+ Chef was written by Adam Jacob <adam@opscode.com> with many contributions from the community.
32
+
33
+ ## DOCUMENTATION
34
+ This manual page was written by Daniel DeLeo <dan@opscode.com>.
35
+ Permission is granted to copy, distribute and / or modify this document under the terms of the Apache 2.0 License.
36
+
37
+ ## CHEF
38
+ Knife is distributed with Chef. <http://wiki.opscode.com/display/chef/Home>
39
+
@@ -0,0 +1,218 @@
1
+ knife(1) -- Chef Server API client utility
2
+ ========================================
3
+
4
+ ## SYNOPSIS
5
+
6
+ __knife__ _sub-command_ [_argument_...] _(options)_
7
+
8
+ ## DESCRIPTION
9
+
10
+ Knife is a command-line utility used to manage data on a Chef server
11
+ through the HTTP(S) API. Knife is organized into groups of subcommands
12
+ centered around the various object types in Chef. Each category of
13
+ subcommand is documented in its own manual page. Available topics are:
14
+
15
+ * bootstrap
16
+ * client
17
+ * configure
18
+ * cookbook-site
19
+ * cookbook
20
+ * data-bag
21
+ * environment
22
+ * exec
23
+ * index
24
+ * node
25
+ * recipe
26
+ * role
27
+ * search
28
+ * ssh
29
+ * status
30
+ * tag
31
+
32
+ If the knife manuals are in your `MANPATH`, you can access help for the
33
+ above topics using `man knife-TOPIC`; otherwise, you can view the
34
+ documentation using `knife help TOPIC`.
35
+
36
+ ## OPTIONS
37
+ * `-s`, `--server-url` URL:
38
+ Chef Server URL, corresponds to `Chef::Config` `chef_server_url`.
39
+ * `-k`, `--key` KEY:
40
+ API Client Key, corresponds to `Chef::Config` `client_key`.
41
+ * `-c`, `--config` CONFIG:
42
+ The configuration file to use
43
+ * `-E`, `--environment ENVIRONMENT`:
44
+ Set the Chef environment
45
+ * `-e`, `--editor` EDITOR:
46
+ Set the editor to use for interactive commands
47
+ * `-F`, `--format` FORMAT:
48
+ Which format to use for output. See FORMATS for details.
49
+ * `-d`, `--disable-editing`:
50
+ Do not open EDITOR, just accept the data as is
51
+ * `-u`, `--user` USER:
52
+ API Client Username, corresponds to `Chef::Config` `node_name`.
53
+ * `-p`, `--print-after`:
54
+ Show the data after a destructive operation
55
+ * `-v`, `--version`:
56
+ Show chef version
57
+ * `-V`, `--verbose`:
58
+ More verbose output. Use twice for max verbosity.
59
+ * `-y`, `--yes`:
60
+ Say yes to all prompts for confirmation
61
+ * `--defaults`:
62
+ Accept default values for all questions
63
+ * `--[no-]color`:
64
+ Use colored output. Color enabled by default.
65
+ * `-h`, `--help`:
66
+ Show the available options for a command.
67
+
68
+ ## SUB-COMMANDS
69
+
70
+ Sub-commands that operate on the basic Chef data types are structured as
71
+ _NOUN verb NOUN (options)_. For all data types, the following commands
72
+ are available:
73
+
74
+ * create (create)
75
+ * list and show (read)
76
+ * edit (update)
77
+ * delete (destroy)
78
+
79
+ Knife also includes commands that take actions other than displaying or
80
+ modifying data on the Chef Server, such as __knife-ssh(1)__.
81
+
82
+ ## CONFIGURATION
83
+
84
+ The knife configuration file is a Ruby DSL to set configuration
85
+ parameters for Knife's __GENERAL OPTIONS__. The default location for the
86
+ config file is `~/.chef/knife.rb`. If managing multiple Chef
87
+ repositories, per-repository config files can be created. The file must
88
+ be `.chef/knife.rb` in the current directory of the repository.
89
+
90
+ If the config file exists, knife uses these settings for __GENERAL OPTIONS__ defaults.
91
+
92
+ * `node_name`:
93
+ User or client identity (i.e., _name_) to use for authenticating
94
+ requests to the Chef Server.
95
+ * `client_key`:
96
+ Private key file to authenticate to the Chef server. Corresponds to the
97
+ `-k` or `--key` option.
98
+ * `chef_server_url`:
99
+ URL of the Chef server. Corresponds to the `-s` or `--server-url`
100
+ option. This is requested from the user when running this sub-command.
101
+ * `cache_type`:
102
+ The type of cache to use. Default is BasicFile. This can be any type of
103
+ Cache that moneta supports: BasicFile, Berkeley, Couch, DataMapper,
104
+ File, LMC, Memcache, Memory, MongoDB, Redis, Rufus, S3, SDBM, Tyrant,
105
+ Xattr, YAML.
106
+ * `cache_options`:
107
+ Specifies various options to use for caching. These options are
108
+ dependent on the `cache_type`.
109
+ * `validation_client_name`:
110
+ Specifies the name of the client used to validate new clients.
111
+ * `validation_key`:
112
+ Specifies the private key file to use when bootstrapping new hosts.
113
+ See knife-client(1) for more information about the validation
114
+ client.
115
+ * `cookbook_copyright`, `cookbook_email`, `cookbook_license`, `readme_format`
116
+ Used by `knife cookbook create` sub-command to specify the copyright
117
+ holder, maintainer email, license and readme format (respectively) for new cookbooks.
118
+ The copyright holder is listed as the maintainer in the cookbook's
119
+ metadata and as the Copyright in the comments of the default recipe. The
120
+ maintainer email is used in the cookbook metadata. The license
121
+ determines what preamble to put in the comment of the default recipe,
122
+ and is listed as the license in the cookbook metadata. Currently
123
+ supported licenses are "apachev2" and "none". Any other values will
124
+ result in an empty license in the metadata (needs to be filled in by the
125
+ author), and no comment preamble in the default recipe. Currently supported
126
+ readme formats are "md", "mkd", "txt", and "rdoc". Any other value will
127
+ result in an unformatted README.
128
+
129
+ ## FILES
130
+
131
+ _~/.chef/knife.rb_
132
+
133
+ Ruby DSL configuration file for knife. See __CONFIGURATION__.
134
+
135
+ ## FORMATS
136
+
137
+ The amount of content displayed and the output format are
138
+ modified by the `--format` option. If no alternate format is selected,
139
+ the default is summary.
140
+
141
+ Valid formats are:
142
+
143
+ * `summary`:
144
+ displays the node in a custom, summarized format (default)
145
+ * `text`:
146
+ displays the node data in its entirety using the colorized tree display
147
+ * `json`:
148
+ displays the node in JSON format
149
+ * `yaml`:
150
+ displays the node in YAML format
151
+ * `pp`:
152
+ displays the node using Ruby's pretty printer.
153
+
154
+ For brevity, only the first character of the format is required, for
155
+ example, -Fj will produce JSON format output.
156
+
157
+ ## CHEF WORKFLOW
158
+
159
+ When working with Chef and Knife in the local repository, the recommended workflow outline looks like:
160
+
161
+ * Create repository. A skeleton sample is provided at _http://github.com/opscode/chef-repo/_.
162
+ * Configure knife, see __CONFIGURATION__.
163
+ * Download cookbooks from the Opscode cookbooks site, see __COOKBOOK SITE SUB-COMMANDS__.
164
+ * Or, create new cookbooks, see `cookbook create` sub-command.
165
+ * Commit changes to the version control system. See your tool's documentation.
166
+ * Upload cookbooks to the Chef Server, see __COOKBOOK SUB-COMMANDS__.
167
+ * Launch instances in the Cloud, OR provision new hosts; see __CLOUD COMPUTING SUB-COMMANDS__ and __BOOTSTRAP SUB-COMMANDS__.
168
+ * Watch Chef configure systems!
169
+
170
+ A note about git: Opscode and many folks in the Chef community use git,
171
+ but it is not required, except in the case of the `cookbook site vendor`
172
+ sub-command, as it uses git directly. Version control is strongly
173
+ recommended though, and git fits with a lot of the workflow paradigms.
174
+
175
+
176
+ ## EXAMPLES
177
+
178
+
179
+ ## ENVIRONMENT
180
+ * `EDITOR`:
181
+ The text editor to use for editing data. The --editor option takes
182
+ precedence over this value, and the --disable-editing option supresses
183
+ data editing entirely.
184
+
185
+ ## SEE ALSO
186
+ __chef-client(8)__ __chef-server(8)__ __shef(1)__
187
+
188
+ __knife-bootstrap(1)__ __knife-client(1)__ __knife-configure(1)__
189
+ __knife-cookbook-site(1)__ __knife-cookbook(1)__ __knife-data-bag(1)__
190
+ __knife-environment(1)__ __knife-exec(1)__ __knife-index(1)__
191
+ __knife-node(1)__ __knife-recipe(1)__ __knife-role(1)__
192
+ __knife-search(1)__ __knife-ssh(1)__ __knife-tag(1)__
193
+
194
+ Complete Chef documentation is available online: <http://wiki.opscode.com/display/chef/Home/>
195
+
196
+ JSON is JavaScript Object Notation <http://json.org/>
197
+
198
+ SOLR is an open source search engine. <http://lucene.apache.org/solr/>
199
+
200
+ __git(1)__ is a version control system <http://git-scm.com/>
201
+
202
+ This manual page was generated from Markdown with __ronn(1)__ <http://rtomayko.github.com/ronn/ronn.1.html>
203
+
204
+ ## AUTHOR
205
+ Chef was written by Adam Jacob <adam@opscode.com> of Opscode
206
+ (<http://www.opscode.com>), with contributions from the community.
207
+
208
+ ## DOCUMENTATION
209
+ This manual page was written by Joshua Timberman <joshua@opscode.com>.
210
+
211
+ ## LICENSE
212
+ Both Chef and this documentation are released under the terms of the
213
+ Apache 2.0 License. You may view the license online: <http://www.apache.org/licenses/LICENSE-2.0.html>
214
+ On some systems, the complete text of the Apache 2.0 License may be found in `/usr/share/common-licenses/Apache-2.0`.
215
+
216
+ ## CHEF
217
+ Knife is distributed with Chef. <http://wiki.opscode.com/display/chef/Home>
218
+