poolparty 1.2.2 → 1.3.1

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 (1244) hide show
  1. data/README.rdoc +202 -0
  2. data/Rakefile +5 -19
  3. data/VERSION.yml +2 -2
  4. data/bin/cloud +49 -47
  5. data/bin/cloud-bootstrap +21 -22
  6. data/bin/cloud-compile +33 -0
  7. data/bin/cloud-configure +25 -33
  8. data/bin/cloud-console +33 -9
  9. data/bin/cloud-contract +31 -11
  10. data/bin/cloud-expand +30 -18
  11. data/bin/cloud-list +41 -15
  12. data/bin/cloud-osxcopy +21 -12
  13. data/bin/cloud-show +31 -21
  14. data/bin/cloud-ssh +20 -15
  15. data/bin/cloud-start +40 -20
  16. data/bin/cloud-terminate +28 -21
  17. data/bin/cloud-thrift +77 -0
  18. data/bin/cloud-verify +36 -28
  19. data/bin/install-poolparty +11 -207
  20. data/config/jeweler.rb +11 -13
  21. data/examples/basic.rb +19 -9
  22. data/examples/custom_bootstrap.sh +7 -0
  23. data/examples/eucalyptus.rb +63 -0
  24. data/examples/eucalyptus_test_run.sh +31 -0
  25. data/examples/knock.sh +27 -0
  26. data/examples/monitored_cloud.rb +22 -0
  27. data/examples/simple.rb +17 -0
  28. data/examples/ssh_garden.rb +21 -0
  29. data/examples/thrift/erlang/Emakefile +5 -0
  30. data/examples/thrift/erlang/Makefile +26 -0
  31. data/examples/thrift/erlang/deps/thrift/COPYING +24 -0
  32. data/examples/thrift/erlang/deps/thrift/LICENSE +24 -0
  33. data/examples/thrift/erlang/deps/thrift/Makefile +18 -0
  34. data/examples/thrift/erlang/deps/thrift/README +31 -0
  35. data/examples/thrift/erlang/deps/thrift/build/beamver +59 -0
  36. data/examples/thrift/erlang/deps/thrift/build/buildtargets.mk +14 -0
  37. data/examples/thrift/erlang/deps/thrift/build/colors.mk +24 -0
  38. data/examples/thrift/erlang/deps/thrift/build/docs.mk +12 -0
  39. data/examples/thrift/erlang/deps/thrift/build/mime.types +98 -0
  40. data/examples/thrift/erlang/deps/thrift/build/otp.mk +146 -0
  41. data/examples/thrift/erlang/deps/thrift/build/otp_subdir.mk +85 -0
  42. data/examples/thrift/erlang/deps/thrift/build/raw_test.mk +29 -0
  43. data/examples/thrift/erlang/deps/thrift/ebin/thrift.app +44 -0
  44. data/examples/thrift/erlang/deps/thrift/ebin/thrift.appup +1 -0
  45. data/examples/thrift/erlang/deps/thrift/include/thrift_constants.hrl +40 -0
  46. data/examples/thrift/erlang/deps/thrift/include/thrift_protocol.hrl +12 -0
  47. data/examples/thrift/erlang/deps/thrift/src/Makefile +116 -0
  48. data/examples/thrift/erlang/deps/thrift/src/test_handler.erl +7 -0
  49. data/examples/thrift/erlang/deps/thrift/src/test_service.erl +10 -0
  50. data/examples/thrift/erlang/deps/thrift/src/thrift.app.src +44 -0
  51. data/examples/thrift/erlang/deps/thrift/src/thrift.appup.src +1 -0
  52. data/examples/thrift/erlang/deps/thrift/src/thrift_app.erl +55 -0
  53. data/examples/thrift/erlang/deps/thrift/src/thrift_base64_transport.erl +45 -0
  54. data/examples/thrift/erlang/deps/thrift/src/thrift_binary_protocol.erl +318 -0
  55. data/examples/thrift/erlang/deps/thrift/src/thrift_buffered_transport.erl +168 -0
  56. data/examples/thrift/erlang/deps/thrift/src/thrift_client.erl +328 -0
  57. data/examples/thrift/erlang/deps/thrift/src/thrift_disk_log_transport.erl +106 -0
  58. data/examples/thrift/erlang/deps/thrift/src/thrift_file_transport.erl +69 -0
  59. data/examples/thrift/erlang/deps/thrift/src/thrift_framed_transport.erl +196 -0
  60. data/examples/thrift/erlang/deps/thrift/src/thrift_http_transport.erl +169 -0
  61. data/examples/thrift/erlang/deps/thrift/src/thrift_processor.erl +174 -0
  62. data/examples/thrift/erlang/deps/thrift/src/thrift_protocol.erl +326 -0
  63. data/examples/thrift/erlang/deps/thrift/src/thrift_server.erl +171 -0
  64. data/examples/thrift/erlang/deps/thrift/src/thrift_service.erl +6 -0
  65. data/examples/thrift/erlang/deps/thrift/src/thrift_socket_server.erl +245 -0
  66. data/examples/thrift/erlang/deps/thrift/src/thrift_socket_transport.erl +100 -0
  67. data/examples/thrift/erlang/deps/thrift/src/thrift_sup.erl +53 -0
  68. data/examples/thrift/erlang/deps/thrift/src/thrift_transport.erl +38 -0
  69. data/examples/thrift/erlang/deps/thrift/vsn.mk +1 -0
  70. data/examples/thrift/erlang/include/commandInterface_thrift.hrl +5 -0
  71. data/examples/thrift/erlang/include/poolparty_constants.hrl +9 -0
  72. data/examples/thrift/erlang/include/poolparty_types.hrl +8 -0
  73. data/examples/thrift/erlang/src/commandInterface_thrift.erl +29 -0
  74. data/examples/thrift/erlang/src/poolparty_types.erl +30 -0
  75. data/examples/thrift/erlang/src/thrift_example.erl +32 -0
  76. data/examples/thrift/thrift_example.py +28 -0
  77. data/examples/thrift/thrift_example.rb +36 -0
  78. data/lib/cloud_providers/cloud_provider.rb +85 -0
  79. data/lib/cloud_providers/cloud_provider_instance.rb +274 -0
  80. data/lib/cloud_providers/connections.rb +99 -0
  81. data/lib/cloud_providers/ec2/ec2.rb +197 -0
  82. data/lib/cloud_providers/ec2/ec2_helpers.rb +45 -0
  83. data/lib/cloud_providers/ec2/ec2_instance.rb +120 -0
  84. data/lib/cloud_providers/ec2/ec2_response.rb +79 -0
  85. data/lib/cloud_providers/ssh/ssh.rb +68 -0
  86. data/lib/cloud_providers/ssh/ssh_instance.rb +41 -0
  87. data/lib/cloud_providers/vmware/vmware.rb +127 -0
  88. data/lib/cloud_providers/vmware/vmware_instance.rb +56 -0
  89. data/lib/cloud_providers.rb +19 -0
  90. data/lib/core/array.rb +54 -0
  91. data/lib/core/hash.rb +80 -0
  92. data/lib/core/integer.rb +11 -0
  93. data/lib/core/module.rb +14 -0
  94. data/lib/core/object.rb +92 -0
  95. data/lib/core/proc.rb +55 -0
  96. data/lib/core/string.rb +150 -0
  97. data/lib/core/symbol.rb +29 -0
  98. data/lib/core/time.rb +62 -0
  99. data/lib/dependency_resolver.rb +11 -0
  100. data/lib/dependency_resolvers/base.rb +122 -0
  101. data/lib/dependency_resolvers/chef/resources/chef_attributes_file.rb +51 -0
  102. data/lib/dependency_resolvers/chef/resources/chef_recipe.rb +51 -0
  103. data/lib/dependency_resolvers/chef/resources/http_request.rb +39 -0
  104. data/lib/dependency_resolvers/chef/resources/remote_directory.rb +54 -0
  105. data/lib/dependency_resolvers/chef/resources/remote_file.rb +69 -0
  106. data/lib/dependency_resolvers/chef/resources/route.rb +52 -0
  107. data/lib/dependency_resolvers/chef/resources/script.rb +62 -0
  108. data/lib/dependency_resolvers/chef.rb +237 -0
  109. data/lib/dependency_resolvers/proxy_object.rb +90 -0
  110. data/lib/keypair.rb +93 -0
  111. data/lib/mixins/askable.rb +154 -0
  112. data/lib/mixins/callbacks.rb +56 -0
  113. data/lib/mixins/delayed.rb +65 -0
  114. data/lib/mixins/pinger.rb +31 -0
  115. data/lib/mixins/printing.rb +35 -0
  116. data/lib/mixins/searchable_paths.rb +87 -0
  117. data/lib/poolparty/base.rb +232 -0
  118. data/lib/poolparty/cloud.rb +246 -0
  119. data/lib/poolparty/default.rb +32 -0
  120. data/lib/poolparty/dsl_base.rb +36 -0
  121. data/lib/poolparty/installer.rb +107 -0
  122. data/lib/poolparty/installers/ec2.rb +30 -0
  123. data/lib/poolparty/installers/vmware.rb +149 -0
  124. data/lib/poolparty/monitor.rb +61 -0
  125. data/lib/poolparty/plugin.rb +12 -0
  126. data/lib/poolparty/plugins/apache.rb +204 -0
  127. data/lib/poolparty/plugins/apache2/apache2.conf.erb +630 -0
  128. data/lib/poolparty/plugins/apache2/base.conf.erb +171 -0
  129. data/lib/poolparty/plugins/apache2/default-site.conf.erb +41 -0
  130. data/lib/poolparty/plugins/apache2/passenger_site.rb +83 -0
  131. data/lib/poolparty/plugins/apache2/php5.rb +41 -0
  132. data/lib/poolparty/plugins/apache2/virtual_host.rb +59 -0
  133. data/lib/poolparty/plugins/git/git_repository.rb +83 -0
  134. data/lib/poolparty/plugins/git.rb +12 -60
  135. data/lib/poolparty/plugins/rails/app.rb +29 -0
  136. data/lib/poolparty/plugins/rails.rb +25 -0
  137. data/lib/poolparty/pool.rb +154 -0
  138. data/lib/poolparty/pool_party_error.rb +19 -0
  139. data/lib/poolparty/pool_party_log.rb +47 -0
  140. data/lib/poolparty/resource.rb +279 -0
  141. data/lib/poolparty/resources/conditional.rb +65 -0
  142. data/lib/poolparty/resources/cron.rb +33 -20
  143. data/lib/poolparty/resources/directory.rb +28 -14
  144. data/lib/poolparty/resources/exec.rb +35 -21
  145. data/lib/poolparty/resources/file.rb +39 -31
  146. data/lib/poolparty/resources/gem_package.rb +55 -0
  147. data/lib/poolparty/resources/group.rb +46 -0
  148. data/lib/poolparty/resources/line.rb +50 -0
  149. data/lib/poolparty/resources/link.rb +49 -0
  150. data/lib/poolparty/resources/mount.rb +23 -11
  151. data/lib/poolparty/resources/package.rb +25 -11
  152. data/lib/poolparty/resources/service.rb +29 -12
  153. data/lib/poolparty/resources/user.rb +56 -6
  154. data/lib/poolparty/resources/variable.rb +29 -3
  155. data/lib/poolparty.rb +52 -126
  156. data/lib/proto/command_interface_handler.rb +31 -0
  157. data/lib/proto/gen-erl/commandInterface_thrift.erl +29 -0
  158. data/lib/proto/gen-erl/commandInterface_thrift.hrl +5 -0
  159. data/lib/proto/gen-erl/poolparty_constants.hrl +9 -0
  160. data/lib/proto/gen-erl/poolparty_types.erl +30 -0
  161. data/lib/proto/gen-erl/poolparty_types.hrl +8 -0
  162. data/lib/proto/gen-py/cloudthrift/CommandInterface-remote +79 -0
  163. data/lib/proto/gen-py/cloudthrift/CommandInterface.py +251 -0
  164. data/lib/proto/gen-py/cloudthrift/CommandInterface.pyc +0 -0
  165. data/lib/proto/gen-py/cloudthrift/__init__.py +1 -0
  166. data/lib/proto/gen-py/cloudthrift/__init__.pyc +0 -0
  167. data/lib/proto/gen-py/cloudthrift/constants.py +9 -0
  168. data/lib/proto/gen-py/cloudthrift/constants.pyc +0 -0
  169. data/lib/proto/gen-py/cloudthrift/ttypes.py +160 -0
  170. data/lib/proto/gen-py/cloudthrift/ttypes.pyc +0 -0
  171. data/lib/proto/gen-py/thrift/TSCons.py +33 -0
  172. data/lib/proto/gen-py/thrift/Thrift.py +123 -0
  173. data/lib/proto/gen-py/thrift/Thrift.pyc +0 -0
  174. data/lib/proto/gen-py/thrift/__init__.py +20 -0
  175. data/lib/proto/gen-py/thrift/__init__.pyc +0 -0
  176. data/lib/proto/gen-py/thrift/protocol/TBinaryProtocol.py +259 -0
  177. data/lib/proto/gen-py/thrift/protocol/TBinaryProtocol.pyc +0 -0
  178. data/lib/proto/gen-py/thrift/protocol/TProtocol.py +205 -0
  179. data/lib/proto/gen-py/thrift/protocol/TProtocol.pyc +0 -0
  180. data/lib/proto/gen-py/thrift/protocol/__init__.py +20 -0
  181. data/lib/proto/gen-py/thrift/protocol/__init__.pyc +0 -0
  182. data/lib/proto/gen-py/thrift/protocol/fastbinary.c +1203 -0
  183. data/lib/proto/gen-py/thrift/server/THttpServer.py +63 -0
  184. data/lib/proto/gen-py/thrift/server/TNonblockingServer.py +309 -0
  185. data/lib/proto/gen-py/thrift/server/TServer.py +270 -0
  186. data/lib/proto/gen-py/thrift/server/__init__.py +20 -0
  187. data/lib/proto/gen-py/thrift/transport/THttpClient.py +100 -0
  188. data/lib/proto/gen-py/thrift/transport/TSocket.py +149 -0
  189. data/lib/proto/gen-py/thrift/transport/TSocket.pyc +0 -0
  190. data/lib/proto/gen-py/thrift/transport/TTransport.py +326 -0
  191. data/lib/proto/gen-py/thrift/transport/TTransport.pyc +0 -0
  192. data/lib/proto/gen-py/thrift/transport/TTwisted.py +181 -0
  193. data/lib/proto/gen-py/thrift/transport/__init__.py +20 -0
  194. data/lib/proto/gen-py/thrift/transport/__init__.pyc +0 -0
  195. data/lib/proto/gen-rb/command_interface.rb +84 -0
  196. data/lib/proto/gen-rb/poolparty_constants.rb +10 -0
  197. data/lib/proto/gen-rb/poolparty_types.rb +45 -0
  198. data/lib/proto/poolparty.thrift +17 -0
  199. data/lib/provision/bootstrap_scripts/build_centos.sh +70 -0
  200. data/lib/provision/bootstrap_scripts/build_ubuntu.sh +75 -0
  201. data/lib/provision/bootstrap_scripts/determine_os.sh +21 -0
  202. data/lib/provision/bootstrapper.rb +44 -0
  203. data/lib/provision/configure_scripts/configure_centos.erb +7 -0
  204. data/lib/provision/configure_scripts/configure_ubuntu.erb +7 -0
  205. data/tasks/development.rake +6 -6
  206. data/tasks/poolparty.rake +41 -1
  207. data/tasks/test.rake +40 -0
  208. data/test/fixtures/bad_perms_test_key +27 -0
  209. data/test/fixtures/chef/recipes/sudo/attributes/sudoers.rb +30 -0
  210. data/test/fixtures/chef/recipes/sudo/recipes/default.rb +33 -0
  211. data/test/fixtures/chef/recipes/sudo/templates/default/sudoers.erb +22 -0
  212. data/test/fixtures/clouds/fake_clouds.rb +9 -0
  213. data/test/fixtures/clouds/simple_cloud.rb +13 -0
  214. data/test/fixtures/clouds/ssh_cloud.rb +11 -0
  215. data/test/fixtures/clouds/vmware_cloud.rb +16 -0
  216. data/test/fixtures/ec2/ec2-describe-instances_response_body.xml +70 -0
  217. data/test/fixtures/ec2/ec2-run-instances_response_body.xml +35 -0
  218. data/test/fixtures/ec2/ec2-terminate-instances_response_body.xml +16 -0
  219. data/test/fixtures/keys/test_key +27 -0
  220. data/test/fixtures/keys/test_pub_key +8 -0
  221. data/test/fixtures/resources/fake_plugin.rb +19 -0
  222. data/test/fixtures/resources/fake_resource.rb +18 -0
  223. data/test/fixtures/resources/random_proc_file.rb +7 -0
  224. data/test/fixtures/templates/apache_conf.erb +2 -0
  225. data/test/lib/cloud_providers/cloud_provider_instance_test.rb +68 -0
  226. data/test/lib/cloud_providers/cloud_provider_test.rb +25 -0
  227. data/test/lib/cloud_providers/connections_test.rb +71 -0
  228. data/test/lib/cloud_providers/ec2/ec2_helpers_test.rb +29 -0
  229. data/test/lib/cloud_providers/ec2/ec2_instance_test.rb +59 -0
  230. data/test/lib/cloud_providers/ec2/ec2_response_test.rb +41 -0
  231. data/test/lib/cloud_providers/ec2/ec2_test.rb +116 -0
  232. data/test/lib/cloud_providers/ssh/ssh_test.rb +61 -0
  233. data/test/lib/cloud_providers/vmware/vmware_test.rb +46 -0
  234. data/test/lib/core/array_test.rb +53 -0
  235. data/test/lib/core/hash_test.rb +41 -0
  236. data/test/lib/core/integer_test.rb +19 -0
  237. data/test/lib/core/module_test.rb +38 -0
  238. data/test/lib/core/object_test.rb +57 -0
  239. data/test/lib/core/proc_test.rb +26 -0
  240. data/test/lib/core/string_test.rb +73 -0
  241. data/test/lib/core/symbol_test.rb +26 -0
  242. data/test/lib/core/time_test.rb +51 -0
  243. data/test/lib/dependency_resolvers/base_test.rb +42 -0
  244. data/test/lib/dependency_resolvers/chef/resources/chef_recipe_test.rb +21 -0
  245. data/test/lib/dependency_resolvers/chef/resources/http_request_test.rb +29 -0
  246. data/test/lib/dependency_resolvers/chef/resources/remote_directory_test.rb +45 -0
  247. data/test/lib/dependency_resolvers/chef/resources/remote_file_test.rb +36 -0
  248. data/test/lib/dependency_resolvers/chef/resources/route_test.rb +37 -0
  249. data/test/lib/dependency_resolvers/chef/resources/script_test.rb +49 -0
  250. data/test/lib/dependency_resolvers/chef_test.rb +144 -0
  251. data/test/lib/dependency_resolvers/proxy_object_test.rb +75 -0
  252. data/test/lib/mixins/callbacks_test.rb +48 -0
  253. data/test/lib/mixins/delayed_test.rb +50 -0
  254. data/test/lib/mixins/searchable_paths_test.rb +83 -0
  255. data/test/lib/poolparty/base_test.rb +34 -0
  256. data/test/lib/poolparty/cloud_test.rb +139 -0
  257. data/test/lib/poolparty/default_test.rb +17 -0
  258. data/test/lib/poolparty/dsl_base_test.rb +30 -0
  259. data/test/lib/poolparty/installers/vmware_installer_test.rb +16 -0
  260. data/test/lib/poolparty/keypair_test.rb +42 -0
  261. data/test/lib/poolparty/monitor_test.rb +30 -0
  262. data/test/lib/poolparty/plugins/apache2/php5_test.rb +26 -0
  263. data/test/lib/poolparty/plugins/apache2/virtual_host_test.rb +28 -0
  264. data/test/lib/poolparty/plugins/apache_test.rb +35 -0
  265. data/test/lib/poolparty/pool_party_error_test.rb +20 -0
  266. data/test/lib/poolparty/pool_party_log_test.rb +17 -0
  267. data/test/lib/poolparty/pool_test.rb +26 -0
  268. data/test/lib/poolparty/resource_test.rb +145 -0
  269. data/test/lib/poolparty/resources/conditional_test.rb +49 -0
  270. data/test/lib/poolparty/resources/cron_test.rb +31 -0
  271. data/test/lib/poolparty/resources/directory_test.rb +21 -0
  272. data/test/lib/poolparty/resources/exec_test.rb +62 -0
  273. data/test/lib/poolparty/resources/file_test.rb +38 -0
  274. data/test/lib/poolparty/resources/group_test.rb +21 -0
  275. data/test/lib/poolparty/resources/line_test.rb +20 -0
  276. data/test/lib/poolparty/resources/link_test.rb +27 -0
  277. data/test/lib/poolparty/resources/mount_test.rb +32 -0
  278. data/test/lib/poolparty/resources/package_test.rb +28 -0
  279. data/test/lib/poolparty/resources/service_test.rb +31 -0
  280. data/test/lib/poolparty/resources/user_test.rb +33 -0
  281. data/test/lib/poolparty/resources/variable_test.rb +20 -0
  282. data/test/lib/provision/base_test.rb +16 -0
  283. data/test/lib/provision/bootstrapper_test.rb +44 -0
  284. data/test/test_helper.rb +25 -3
  285. data/test/test_methods.rb +72 -0
  286. data/vendor/gems/colors/README.rdoc +52 -0
  287. data/vendor/gems/colors/Rakefile +56 -0
  288. data/vendor/gems/colors/VERSION.yml +4 -0
  289. data/vendor/gems/colors/colors.gemspec +29 -0
  290. data/vendor/gems/colors/lib/colors.rb +45 -0
  291. data/vendor/gems/colors/test/colors_test.rb +26 -0
  292. data/vendor/gems/colors/test/test_helper.rb +10 -0
  293. data/vendor/gems/context/History.txt +10 -0
  294. data/vendor/gems/context/License.txt +20 -0
  295. data/vendor/gems/context/Manifest.txt +26 -0
  296. data/vendor/gems/context/PostInstall.txt +0 -0
  297. data/vendor/gems/context/README.rdoc +158 -0
  298. data/vendor/gems/context/Rakefile +4 -0
  299. data/vendor/gems/context/config/hoe.rb +73 -0
  300. data/vendor/gems/context/config/requirements.rb +15 -0
  301. data/vendor/gems/context/context.gemspec +44 -0
  302. data/vendor/gems/context/countloc.rb +65 -0
  303. data/vendor/gems/context/coverage/-Library-Ruby-Gems-1_8-gems-rcov-0_8_1_2_0-lib-rcov_rb.html +1598 -0
  304. data/vendor/gems/context/coverage/index.html +441 -0
  305. data/vendor/gems/context/coverage/lib-context-context_rb.html +669 -0
  306. data/vendor/gems/context/coverage/lib-context-core_ext-string_rb.html +627 -0
  307. data/vendor/gems/context/coverage/lib-context-lifecycle_rb.html +683 -0
  308. data/vendor/gems/context/coverage/lib-context-shared_behavior_rb.html +708 -0
  309. data/vendor/gems/context/coverage/lib-context-suite_rb.html +649 -0
  310. data/vendor/gems/context/coverage/lib-context-test_rb.html +637 -0
  311. data/vendor/gems/context/coverage/lib-context-version_rb.html +619 -0
  312. data/vendor/gems/context/coverage/lib-context_rb.html +623 -0
  313. data/vendor/gems/context/lib/context/context.rb +64 -0
  314. data/vendor/gems/context/lib/context/core_ext/rails_hacks.rb +10 -0
  315. data/vendor/gems/context/lib/context/core_ext/string.rb +17 -0
  316. data/vendor/gems/context/lib/context/lifecycle.rb +103 -0
  317. data/vendor/gems/context/lib/context/shared_behavior.rb +98 -0
  318. data/vendor/gems/context/lib/context/suite.rb +39 -0
  319. data/vendor/gems/context/lib/context/test.rb +37 -0
  320. data/vendor/gems/context/lib/context/version.rb +9 -0
  321. data/vendor/gems/context/lib/context.rb +19 -0
  322. data/vendor/gems/context/test/test_context.rb +57 -0
  323. data/vendor/gems/context/test/test_core_ext.rb +21 -0
  324. data/vendor/gems/context/test/test_helper.rb +2 -0
  325. data/vendor/gems/context/test/test_lifecycle.rb +224 -0
  326. data/vendor/gems/context/test/test_nested_lifecycle.rb +44 -0
  327. data/vendor/gems/context/test/test_shared.rb +116 -0
  328. data/vendor/gems/context/test/test_test.rb +23 -0
  329. data/vendor/gems/daemons/LICENSE +29 -0
  330. data/vendor/gems/daemons/README +223 -0
  331. data/vendor/gems/daemons/Rakefile +84 -0
  332. data/vendor/gems/daemons/Releases +126 -0
  333. data/vendor/gems/daemons/TODO +6 -0
  334. data/vendor/gems/daemons/examples/call/call.rb +56 -0
  335. data/vendor/gems/daemons/examples/call/call_monitor.rb +55 -0
  336. data/vendor/gems/daemons/examples/daemonize/daemonize.rb +20 -0
  337. data/vendor/gems/daemons/examples/run/ctrl_crash.rb +17 -0
  338. data/vendor/gems/daemons/examples/run/ctrl_exec.rb +16 -0
  339. data/vendor/gems/daemons/examples/run/ctrl_exit.rb +15 -0
  340. data/vendor/gems/daemons/examples/run/ctrl_keep_pid_files.rb +17 -0
  341. data/vendor/gems/daemons/examples/run/ctrl_monitor.rb +16 -0
  342. data/vendor/gems/daemons/examples/run/ctrl_multiple.rb +16 -0
  343. data/vendor/gems/daemons/examples/run/ctrl_normal.rb +12 -0
  344. data/vendor/gems/daemons/examples/run/ctrl_ontop.rb +16 -0
  345. data/vendor/gems/daemons/examples/run/ctrl_optionparser.rb +43 -0
  346. data/vendor/gems/daemons/examples/run/ctrl_proc.rb +25 -0
  347. data/vendor/gems/daemons/examples/run/ctrl_proc.rb.output +101 -0
  348. data/vendor/gems/daemons/examples/run/ctrl_proc_multiple.rb +22 -0
  349. data/vendor/gems/daemons/examples/run/ctrl_proc_multiple.rb.output +2 -0
  350. data/vendor/gems/daemons/examples/run/ctrl_proc_simple.rb +17 -0
  351. data/vendor/gems/daemons/examples/run/myserver.rb +12 -0
  352. data/vendor/gems/daemons/examples/run/myserver_crashing.rb +14 -0
  353. data/vendor/gems/daemons/examples/run/myserver_crashing.rb.output +30 -0
  354. data/vendor/gems/daemons/examples/run/myserver_exiting.rb +8 -0
  355. data/vendor/gems/daemons/lib/daemons/application.rb +372 -0
  356. data/vendor/gems/daemons/lib/daemons/application_group.rb +152 -0
  357. data/vendor/gems/daemons/lib/daemons/cmdline.rb +117 -0
  358. data/vendor/gems/daemons/lib/daemons/controller.rb +134 -0
  359. data/vendor/gems/daemons/lib/daemons/daemonize.rb +263 -0
  360. data/vendor/gems/daemons/lib/daemons/exceptions.rb +28 -0
  361. data/vendor/gems/daemons/lib/daemons/monitor.rb +127 -0
  362. data/vendor/gems/daemons/lib/daemons/pid.rb +101 -0
  363. data/vendor/gems/daemons/lib/daemons/pidfile.rb +111 -0
  364. data/vendor/gems/daemons/lib/daemons/pidmem.rb +10 -0
  365. data/vendor/gems/daemons/lib/daemons.rb +283 -0
  366. data/vendor/gems/daemons/setup.rb +1360 -0
  367. data/vendor/gems/dslify/LICENSE +20 -0
  368. data/vendor/gems/dslify/README.rdoc +33 -0
  369. data/vendor/gems/dslify/Rakefile +56 -56
  370. data/vendor/gems/dslify/VERSION.yml +4 -0
  371. data/vendor/gems/dslify/dslify.gemspec +9 -20
  372. data/vendor/gems/dslify/lib/dslify.rb +79 -5
  373. data/vendor/gems/dslify/test/dslify_test.rb +283 -0
  374. data/vendor/gems/dslify/test/test_helper.rb +7 -0
  375. data/vendor/gems/fakeweb/CHANGELOG +163 -0
  376. data/vendor/gems/fakeweb/LICENSE.txt +281 -0
  377. data/vendor/gems/fakeweb/README.rdoc +193 -0
  378. data/vendor/gems/fakeweb/Rakefile +76 -0
  379. data/vendor/gems/fakeweb/fakeweb.gemspec +21 -0
  380. data/vendor/gems/fakeweb/lib/fake_web/ext/net_http.rb +71 -0
  381. data/vendor/gems/fakeweb/lib/fake_web/registry.rb +103 -0
  382. data/vendor/gems/fakeweb/lib/fake_web/responder.rb +113 -0
  383. data/vendor/gems/fakeweb/lib/fake_web/response.rb +10 -0
  384. data/vendor/gems/fakeweb/lib/fake_web/stub_socket.rb +15 -0
  385. data/vendor/gems/fakeweb/lib/fake_web/utility.rb +22 -0
  386. data/vendor/gems/fakeweb/lib/fake_web.rb +172 -0
  387. data/vendor/gems/fakeweb/lib/fakeweb.rb +2 -0
  388. data/vendor/gems/fakeweb/test/fixtures/google_response_from_curl +12 -0
  389. data/vendor/gems/fakeweb/test/fixtures/google_response_with_transfer_encoding +17 -0
  390. data/vendor/gems/fakeweb/test/fixtures/google_response_without_transfer_encoding +11 -0
  391. data/vendor/gems/fakeweb/test/fixtures/test_example.txt +1 -0
  392. data/vendor/gems/fakeweb/test/fixtures/test_txt_file +3 -0
  393. data/vendor/gems/fakeweb/test/test_allow_net_connect.rb +85 -0
  394. data/vendor/gems/fakeweb/test/test_deprecations.rb +54 -0
  395. data/vendor/gems/fakeweb/test/test_fake_authentication.rb +92 -0
  396. data/vendor/gems/fakeweb/test/test_fake_web.rb +518 -0
  397. data/vendor/gems/fakeweb/test/test_fake_web_open_uri.rb +58 -0
  398. data/vendor/gems/fakeweb/test/test_helper.rb +74 -0
  399. data/vendor/gems/fakeweb/test/test_missing_open_uri.rb +25 -0
  400. data/vendor/gems/fakeweb/test/test_precedence.rb +51 -0
  401. data/vendor/gems/fakeweb/test/test_query_string.rb +45 -0
  402. data/vendor/gems/fakeweb/test/test_regexes.rb +103 -0
  403. data/vendor/gems/fakeweb/test/test_response_headers.rb +73 -0
  404. data/vendor/gems/fakeweb/test/test_trailing_slashes.rb +53 -0
  405. data/vendor/gems/fakeweb/test/test_utility.rb +70 -0
  406. data/vendor/gems/git-style-binaries/README.markdown +280 -0
  407. data/vendor/gems/git-style-binaries/Rakefile +64 -0
  408. data/vendor/gems/git-style-binaries/VERSION.yml +4 -0
  409. data/vendor/gems/git-style-binaries/doc/EXAMPLES +1 -0
  410. data/vendor/gems/git-style-binaries/doc/gsb-screencast.png +0 -0
  411. data/vendor/gems/git-style-binaries/doc/poolparty-binaries.screenplay +412 -0
  412. data/vendor/gems/git-style-binaries/git-style-binaries.gemspec +78 -0
  413. data/vendor/gems/git-style-binaries/lib/ext/colorize.rb +198 -0
  414. data/vendor/gems/git-style-binaries/lib/ext/core.rb +16 -0
  415. data/vendor/gems/git-style-binaries/lib/git-style-binary/autorunner.rb +21 -0
  416. data/vendor/gems/git-style-binaries/lib/git-style-binary/command.rb +204 -0
  417. data/vendor/gems/git-style-binaries/lib/git-style-binary/commands/help.rb +32 -0
  418. data/vendor/gems/git-style-binaries/lib/git-style-binary/helpers/name_resolver.rb +78 -0
  419. data/vendor/gems/git-style-binaries/lib/git-style-binary/helpers/pager.rb +37 -0
  420. data/vendor/gems/git-style-binaries/lib/git-style-binary/parser.rb +223 -0
  421. data/vendor/gems/git-style-binaries/lib/git-style-binary.rb +88 -0
  422. data/vendor/gems/git-style-binaries/test/fixtures/flickr +4 -0
  423. data/vendor/gems/git-style-binaries/test/fixtures/flickr-download +17 -0
  424. data/vendor/gems/git-style-binaries/test/fixtures/wordpress +42 -0
  425. data/vendor/gems/git-style-binaries/test/fixtures/wordpress-categories +18 -0
  426. data/vendor/gems/git-style-binaries/test/fixtures/wordpress-list +18 -0
  427. data/vendor/gems/git-style-binaries/test/fixtures/wordpress-post +26 -0
  428. data/vendor/gems/git-style-binaries/test/git-style-binary/command_test.rb +17 -0
  429. data/vendor/gems/git-style-binaries/test/git_style_binary_test.rb +21 -0
  430. data/vendor/gems/git-style-binaries/test/running_binaries_test.rb +224 -0
  431. data/vendor/gems/git-style-binaries/test/shoulda_macros/matching_stdio.rb +13 -0
  432. data/vendor/gems/git-style-binaries/test/test_helper.rb +28 -0
  433. data/vendor/gems/gratr/Grater.xcf +0 -0
  434. data/vendor/gems/gratr/README +335 -0
  435. data/vendor/gems/gratr/Rakefile +220 -0
  436. data/vendor/gems/gratr/examples/graph_self.rb +54 -0
  437. data/vendor/gems/gratr/examples/module_graph.jpg +0 -0
  438. data/vendor/gems/gratr/examples/module_graph.rb +12 -0
  439. data/vendor/gems/gratr/examples/self_graph.dot +117 -0
  440. data/vendor/gems/gratr/examples/self_graph.jpg +0 -0
  441. data/vendor/gems/gratr/examples/visualize.dot +58 -0
  442. data/vendor/gems/gratr/examples/visualize.jpg +0 -0
  443. data/vendor/gems/gratr/examples/visualize.rb +11 -0
  444. data/vendor/gems/gratr/install.rb +49 -0
  445. data/vendor/gems/gratr/lib/gratr/adjacency_graph.rb +230 -0
  446. data/vendor/gems/gratr/lib/gratr/base.rb +34 -0
  447. data/vendor/gems/gratr/lib/gratr/biconnected.rb +116 -0
  448. data/vendor/gems/gratr/lib/gratr/chinese_postman.rb +123 -0
  449. data/vendor/gems/gratr/lib/gratr/common.rb +73 -0
  450. data/vendor/gems/gratr/lib/gratr/comparability.rb +92 -0
  451. data/vendor/gems/gratr/lib/gratr/digraph.rb +115 -0
  452. data/vendor/gems/gratr/lib/gratr/digraph_distance.rb +185 -0
  453. data/vendor/gems/gratr/lib/gratr/dot.rb +95 -0
  454. data/vendor/gems/gratr/lib/gratr/edge.rb +145 -0
  455. data/vendor/gems/gratr/lib/gratr/graph.rb +315 -0
  456. data/vendor/gems/gratr/lib/gratr/graph_api.rb +82 -0
  457. data/vendor/gems/gratr/lib/gratr/import.rb +44 -0
  458. data/vendor/gems/gratr/lib/gratr/labels.rb +103 -0
  459. data/vendor/gems/gratr/lib/gratr/maximum_flow.rb +107 -0
  460. data/vendor/gems/gratr/lib/gratr/rdot.rb +332 -0
  461. data/vendor/gems/gratr/lib/gratr/search.rb +422 -0
  462. data/vendor/gems/gratr/lib/gratr/strong_components.rb +127 -0
  463. data/vendor/gems/gratr/lib/gratr/undirected_graph.rb +153 -0
  464. data/vendor/gems/gratr/lib/gratr.rb +42 -0
  465. data/vendor/gems/gratr/lib/priority-queue/benchmark/dijkstra.rb +171 -0
  466. data/vendor/gems/gratr/lib/priority-queue/compare_comments.rb +49 -0
  467. data/vendor/gems/gratr/lib/priority-queue/ext/priority_queue/CPriorityQueue/extconf.rb +2 -0
  468. data/vendor/gems/gratr/lib/priority-queue/lib/priority_queue/c_priority_queue.rb +1 -0
  469. data/vendor/gems/gratr/lib/priority-queue/lib/priority_queue/poor_priority_queue.rb +46 -0
  470. data/vendor/gems/gratr/lib/priority-queue/lib/priority_queue/ruby_priority_queue.rb +525 -0
  471. data/vendor/gems/gratr/lib/priority-queue/lib/priority_queue.rb +14 -0
  472. data/vendor/gems/gratr/lib/priority-queue/setup.rb +1551 -0
  473. data/vendor/gems/gratr/lib/priority-queue/test/priority_queue_test.rb +371 -0
  474. data/vendor/gems/gratr/tests/TestBiconnected.rb +53 -0
  475. data/vendor/gems/gratr/tests/TestChinesePostman.rb +53 -0
  476. data/vendor/gems/gratr/tests/TestComplement.rb +54 -0
  477. data/vendor/gems/gratr/tests/TestDigraph.rb +333 -0
  478. data/vendor/gems/gratr/tests/TestDigraphDistance.rb +138 -0
  479. data/vendor/gems/gratr/tests/TestDot.rb +75 -0
  480. data/vendor/gems/gratr/tests/TestEdge.rb +171 -0
  481. data/vendor/gems/gratr/tests/TestInspection.rb +57 -0
  482. data/vendor/gems/gratr/tests/TestMultiEdge.rb +57 -0
  483. data/vendor/gems/gratr/tests/TestNeighborhood.rb +64 -0
  484. data/vendor/gems/gratr/tests/TestProperties.rb +160 -0
  485. data/vendor/gems/gratr/tests/TestSearch.rb +277 -0
  486. data/vendor/gems/gratr/tests/TestStrongComponents.rb +85 -0
  487. data/vendor/gems/gratr/tests/TestTriagulated.rb +137 -0
  488. data/vendor/gems/gratr/tests/TestUndirectedGraph.rb +219 -0
  489. data/vendor/gems/json/CHANGES +93 -0
  490. data/vendor/gems/json/GPL +340 -0
  491. data/vendor/gems/json/README +78 -0
  492. data/vendor/gems/json/RUBY +58 -0
  493. data/vendor/gems/json/Rakefile +309 -0
  494. data/vendor/gems/json/TODO +1 -0
  495. data/vendor/gems/json/VERSION +1 -0
  496. data/vendor/gems/json/benchmarks/benchmark.txt +133 -0
  497. data/vendor/gems/json/benchmarks/benchmark_generator.rb +48 -0
  498. data/vendor/gems/json/benchmarks/benchmark_parser.rb +26 -0
  499. data/vendor/gems/json/benchmarks/benchmark_rails.rb +26 -0
  500. data/vendor/gems/json/bin/edit_json.rb +10 -0
  501. data/vendor/gems/json/bin/prettify_json.rb +76 -0
  502. data/vendor/gems/json/data/example.json +1 -0
  503. data/vendor/gems/json/data/index.html +38 -0
  504. data/vendor/gems/json/data/prototype.js +4184 -0
  505. data/vendor/gems/json/ext/json/ext/generator/extconf.rb +9 -0
  506. data/vendor/gems/json/ext/json/ext/generator/generator.c +885 -0
  507. data/vendor/gems/json/ext/json/ext/generator/unicode.c +182 -0
  508. data/vendor/gems/json/ext/json/ext/generator/unicode.h +53 -0
  509. data/vendor/gems/json/ext/json/ext/parser/Makefile +181 -0
  510. data/vendor/gems/json/ext/json/ext/parser/extconf.rb +9 -0
  511. data/vendor/gems/json/ext/json/ext/parser/gem_make.out +14 -0
  512. data/vendor/gems/json/ext/json/ext/parser/parser.c +1769 -0
  513. data/vendor/gems/json/ext/json/ext/parser/parser.rl +637 -0
  514. data/vendor/gems/json/ext/json/ext/parser/unicode.c +154 -0
  515. data/vendor/gems/json/ext/json/ext/parser/unicode.h +58 -0
  516. data/vendor/gems/json/ext/json/ext/parser/unicode.o +0 -0
  517. data/vendor/gems/json/install.rb +26 -0
  518. data/vendor/gems/json/lib/json/Array.xpm +21 -0
  519. data/vendor/gems/json/lib/json/FalseClass.xpm +21 -0
  520. data/vendor/gems/json/lib/json/Hash.xpm +21 -0
  521. data/vendor/gems/json/lib/json/Key.xpm +73 -0
  522. data/vendor/gems/json/lib/json/NilClass.xpm +21 -0
  523. data/vendor/gems/json/lib/json/Numeric.xpm +28 -0
  524. data/vendor/gems/json/lib/json/String.xpm +96 -0
  525. data/vendor/gems/json/lib/json/TrueClass.xpm +21 -0
  526. data/vendor/gems/json/lib/json/add/core.rb +135 -0
  527. data/vendor/gems/json/lib/json/add/rails.rb +58 -0
  528. data/vendor/gems/json/lib/json/common.rb +354 -0
  529. data/vendor/gems/json/lib/json/editor.rb +1362 -0
  530. data/vendor/gems/json/lib/json/ext.rb +13 -0
  531. data/vendor/gems/json/lib/json/json.xpm +1499 -0
  532. data/vendor/gems/json/lib/json/pure/generator.rb +394 -0
  533. data/vendor/gems/json/lib/json/pure/parser.rb +259 -0
  534. data/vendor/gems/json/lib/json/pure.rb +75 -0
  535. data/vendor/gems/json/lib/json/version.rb +9 -0
  536. data/vendor/gems/json/lib/json.rb +235 -0
  537. data/vendor/gems/json/tests/fixtures/fail1.json +1 -0
  538. data/vendor/gems/json/tests/fixtures/fail10.json +1 -0
  539. data/vendor/gems/json/tests/fixtures/fail11.json +1 -0
  540. data/vendor/gems/json/tests/fixtures/fail12.json +1 -0
  541. data/vendor/gems/json/tests/fixtures/fail13.json +1 -0
  542. data/vendor/gems/json/tests/fixtures/fail14.json +1 -0
  543. data/vendor/gems/json/tests/fixtures/fail18.json +1 -0
  544. data/vendor/gems/json/tests/fixtures/fail19.json +1 -0
  545. data/vendor/gems/json/tests/fixtures/fail2.json +1 -0
  546. data/vendor/gems/json/tests/fixtures/fail20.json +1 -0
  547. data/vendor/gems/json/tests/fixtures/fail21.json +1 -0
  548. data/vendor/gems/json/tests/fixtures/fail22.json +1 -0
  549. data/vendor/gems/json/tests/fixtures/fail23.json +1 -0
  550. data/vendor/gems/json/tests/fixtures/fail24.json +1 -0
  551. data/vendor/gems/json/tests/fixtures/fail25.json +1 -0
  552. data/vendor/gems/json/tests/fixtures/fail27.json +2 -0
  553. data/vendor/gems/json/tests/fixtures/fail28.json +2 -0
  554. data/vendor/gems/json/tests/fixtures/fail3.json +1 -0
  555. data/vendor/gems/json/tests/fixtures/fail4.json +1 -0
  556. data/vendor/gems/json/tests/fixtures/fail5.json +1 -0
  557. data/vendor/gems/json/tests/fixtures/fail6.json +1 -0
  558. data/vendor/gems/json/tests/fixtures/fail7.json +1 -0
  559. data/vendor/gems/json/tests/fixtures/fail8.json +1 -0
  560. data/vendor/gems/json/tests/fixtures/fail9.json +1 -0
  561. data/vendor/gems/json/tests/fixtures/pass1.json +56 -0
  562. data/vendor/gems/json/tests/fixtures/pass15.json +1 -0
  563. data/vendor/gems/json/tests/fixtures/pass16.json +1 -0
  564. data/vendor/gems/json/tests/fixtures/pass17.json +1 -0
  565. data/vendor/gems/json/tests/fixtures/pass2.json +1 -0
  566. data/vendor/gems/json/tests/fixtures/pass26.json +1 -0
  567. data/vendor/gems/json/tests/fixtures/pass3.json +6 -0
  568. data/vendor/gems/json/tests/runner.rb +25 -0
  569. data/vendor/gems/json/tests/test_json.rb +293 -0
  570. data/vendor/gems/json/tests/test_json_addition.rb +161 -0
  571. data/vendor/gems/json/tests/test_json_fixtures.rb +30 -0
  572. data/vendor/gems/json/tests/test_json_generate.rb +100 -0
  573. data/vendor/gems/json/tests/test_json_rails.rb +118 -0
  574. data/vendor/gems/json/tests/test_json_unicode.rb +61 -0
  575. data/vendor/gems/json/tools/fuzz.rb +140 -0
  576. data/vendor/gems/json/tools/server.rb +62 -0
  577. data/vendor/gems/parenting/Rakefile +17 -1
  578. data/vendor/gems/parenting/lib/parenting/parenting.rb +24 -8
  579. data/vendor/gems/right_aws/History.txt +246 -0
  580. data/vendor/gems/right_aws/Manifest.txt +34 -0
  581. data/vendor/gems/right_aws/README.txt +166 -0
  582. data/vendor/gems/right_aws/Rakefile +112 -0
  583. data/vendor/gems/right_aws/lib/acf/right_acf_interface.rb +379 -0
  584. data/vendor/gems/right_aws/lib/awsbase/benchmark_fix.rb +39 -0
  585. data/vendor/gems/right_aws/lib/awsbase/right_awsbase.rb +797 -0
  586. data/vendor/gems/right_aws/lib/awsbase/support.rb +111 -0
  587. data/vendor/gems/right_aws/lib/ec2/right_ec2.rb +1737 -0
  588. data/vendor/gems/right_aws/lib/right_aws.rb +69 -0
  589. data/vendor/gems/right_aws/lib/s3/right_s3.rb +1094 -0
  590. data/vendor/gems/right_aws/lib/s3/right_s3_interface.rb +1175 -0
  591. data/vendor/gems/right_aws/lib/sdb/active_sdb.rb +930 -0
  592. data/vendor/gems/right_aws/lib/sdb/right_sdb_interface.rb +698 -0
  593. data/vendor/gems/right_aws/lib/sqs/right_sqs.rb +388 -0
  594. data/vendor/gems/right_aws/lib/sqs/right_sqs_gen2.rb +286 -0
  595. data/vendor/gems/right_aws/lib/sqs/right_sqs_gen2_interface.rb +444 -0
  596. data/vendor/gems/right_aws/lib/sqs/right_sqs_interface.rb +596 -0
  597. data/vendor/gems/right_aws/test/acf/test_helper.rb +2 -0
  598. data/vendor/gems/right_aws/test/acf/test_right_acf.rb +146 -0
  599. data/vendor/gems/right_aws/test/ec2/test_helper.rb +2 -0
  600. data/vendor/gems/right_aws/test/ec2/test_right_ec2.rb +108 -0
  601. data/vendor/gems/right_aws/test/http_connection.rb +87 -0
  602. data/vendor/gems/right_aws/test/s3/test_helper.rb +2 -0
  603. data/vendor/gems/right_aws/test/s3/test_right_s3.rb +419 -0
  604. data/vendor/gems/right_aws/test/s3/test_right_s3_stubbed.rb +95 -0
  605. data/vendor/gems/right_aws/test/sdb/test_active_sdb.rb +299 -0
  606. data/vendor/gems/right_aws/test/sdb/test_helper.rb +3 -0
  607. data/vendor/gems/right_aws/test/sdb/test_right_sdb.rb +247 -0
  608. data/vendor/gems/right_aws/test/sqs/test_helper.rb +2 -0
  609. data/vendor/gems/right_aws/test/sqs/test_right_sqs.rb +291 -0
  610. data/vendor/gems/right_aws/test/sqs/test_right_sqs_gen2.rb +209 -0
  611. data/vendor/gems/right_aws/test/test_credentials.rb +37 -0
  612. data/vendor/gems/right_aws/test/ts_right_aws.rb +14 -0
  613. data/vendor/gems/right_http_connection/History.txt +59 -0
  614. data/vendor/gems/right_http_connection/Manifest.txt +7 -0
  615. data/vendor/gems/right_http_connection/README.txt +54 -0
  616. data/vendor/gems/right_http_connection/Rakefile +103 -0
  617. data/vendor/gems/right_http_connection/lib/net_fix.rb +160 -0
  618. data/vendor/gems/right_http_connection/lib/right_http_connection.rb +442 -0
  619. data/vendor/gems/right_http_connection/right_http_connection.gemspec +31 -0
  620. data/vendor/gems/right_http_connection/setup.rb +1585 -0
  621. data/vendor/gems/shoulda/CONTRIBUTION_GUIDELINES.rdoc +10 -0
  622. data/vendor/gems/shoulda/MIT-LICENSE +22 -0
  623. data/vendor/gems/shoulda/README.rdoc +171 -0
  624. data/vendor/gems/shoulda/Rakefile +72 -0
  625. data/vendor/gems/shoulda/bin/convert_to_should_syntax +42 -0
  626. data/vendor/gems/shoulda/init.rb +1 -0
  627. data/vendor/gems/shoulda/lib/shoulda/action_controller/macros.rb +240 -0
  628. data/vendor/gems/shoulda/lib/shoulda/action_controller/matchers/assign_to_matcher.rb +109 -0
  629. data/vendor/gems/shoulda/lib/shoulda/action_controller/matchers/filter_param_matcher.rb +57 -0
  630. data/vendor/gems/shoulda/lib/shoulda/action_controller/matchers/render_with_layout_matcher.rb +81 -0
  631. data/vendor/gems/shoulda/lib/shoulda/action_controller/matchers/respond_with_content_type_matcher.rb +74 -0
  632. data/vendor/gems/shoulda/lib/shoulda/action_controller/matchers/respond_with_matcher.rb +81 -0
  633. data/vendor/gems/shoulda/lib/shoulda/action_controller/matchers/route_matcher.rb +93 -0
  634. data/vendor/gems/shoulda/lib/shoulda/action_controller/matchers/set_session_matcher.rb +87 -0
  635. data/vendor/gems/shoulda/lib/shoulda/action_controller/matchers/set_the_flash_matcher.rb +85 -0
  636. data/vendor/gems/shoulda/lib/shoulda/action_controller/matchers.rb +37 -0
  637. data/vendor/gems/shoulda/lib/shoulda/action_controller.rb +26 -0
  638. data/vendor/gems/shoulda/lib/shoulda/action_mailer/assertions.rb +38 -0
  639. data/vendor/gems/shoulda/lib/shoulda/action_mailer.rb +10 -0
  640. data/vendor/gems/shoulda/lib/shoulda/action_view/macros.rb +61 -0
  641. data/vendor/gems/shoulda/lib/shoulda/action_view.rb +10 -0
  642. data/vendor/gems/shoulda/lib/shoulda/active_record/assertions.rb +69 -0
  643. data/vendor/gems/shoulda/lib/shoulda/active_record/helpers.rb +27 -0
  644. data/vendor/gems/shoulda/lib/shoulda/active_record/macros.rb +512 -0
  645. data/vendor/gems/shoulda/lib/shoulda/active_record/matchers/allow_mass_assignment_of_matcher.rb +83 -0
  646. data/vendor/gems/shoulda/lib/shoulda/active_record/matchers/allow_value_matcher.rb +102 -0
  647. data/vendor/gems/shoulda/lib/shoulda/active_record/matchers/association_matcher.rb +226 -0
  648. data/vendor/gems/shoulda/lib/shoulda/active_record/matchers/ensure_inclusion_of_matcher.rb +87 -0
  649. data/vendor/gems/shoulda/lib/shoulda/active_record/matchers/ensure_length_of_matcher.rb +141 -0
  650. data/vendor/gems/shoulda/lib/shoulda/active_record/matchers/have_db_column_matcher.rb +169 -0
  651. data/vendor/gems/shoulda/lib/shoulda/active_record/matchers/have_db_index_matcher.rb +112 -0
  652. data/vendor/gems/shoulda/lib/shoulda/active_record/matchers/have_named_scope_matcher.rb +128 -0
  653. data/vendor/gems/shoulda/lib/shoulda/active_record/matchers/have_readonly_attribute_matcher.rb +59 -0
  654. data/vendor/gems/shoulda/lib/shoulda/active_record/matchers/validate_acceptance_of_matcher.rb +41 -0
  655. data/vendor/gems/shoulda/lib/shoulda/active_record/matchers/validate_format_of_matcher.rb +67 -0
  656. data/vendor/gems/shoulda/lib/shoulda/active_record/matchers/validate_numericality_of_matcher.rb +39 -0
  657. data/vendor/gems/shoulda/lib/shoulda/active_record/matchers/validate_presence_of_matcher.rb +60 -0
  658. data/vendor/gems/shoulda/lib/shoulda/active_record/matchers/validate_uniqueness_of_matcher.rb +148 -0
  659. data/vendor/gems/shoulda/lib/shoulda/active_record/matchers/validation_matcher.rb +57 -0
  660. data/vendor/gems/shoulda/lib/shoulda/active_record/matchers.rb +43 -0
  661. data/vendor/gems/shoulda/lib/shoulda/active_record.rb +16 -0
  662. data/vendor/gems/shoulda/lib/shoulda/assertions.rb +71 -0
  663. data/vendor/gems/shoulda/lib/shoulda/autoload_macros.rb +46 -0
  664. data/vendor/gems/shoulda/lib/shoulda/context.rb +402 -0
  665. data/vendor/gems/shoulda/lib/shoulda/helpers.rb +8 -0
  666. data/vendor/gems/shoulda/lib/shoulda/macros.rb +133 -0
  667. data/vendor/gems/shoulda/lib/shoulda/private_helpers.rb +13 -0
  668. data/vendor/gems/shoulda/lib/shoulda/proc_extensions.rb +14 -0
  669. data/vendor/gems/shoulda/lib/shoulda/rails.rb +13 -0
  670. data/vendor/gems/shoulda/lib/shoulda/rspec.rb +11 -0
  671. data/vendor/gems/shoulda/lib/shoulda/tasks/list_tests.rake +29 -0
  672. data/vendor/gems/shoulda/lib/shoulda/tasks/yaml_to_shoulda.rake +28 -0
  673. data/vendor/gems/shoulda/lib/shoulda/tasks.rb +3 -0
  674. data/vendor/gems/shoulda/lib/shoulda/test_unit.rb +22 -0
  675. data/vendor/gems/shoulda/lib/shoulda.rb +9 -0
  676. data/vendor/gems/shoulda/rails/init.rb +7 -0
  677. data/vendor/gems/shoulda/shoulda.gemspec +31 -0
  678. data/vendor/gems/shoulda/tasks/shoulda.rake +1 -0
  679. data/vendor/gems/shoulda/test/README +36 -0
  680. data/vendor/gems/shoulda/test/fail_macros.rb +39 -0
  681. data/vendor/gems/shoulda/test/fixtures/addresses.yml +3 -0
  682. data/vendor/gems/shoulda/test/fixtures/friendships.yml +0 -0
  683. data/vendor/gems/shoulda/test/fixtures/posts.yml +5 -0
  684. data/vendor/gems/shoulda/test/fixtures/products.yml +0 -0
  685. data/vendor/gems/shoulda/test/fixtures/taggings.yml +0 -0
  686. data/vendor/gems/shoulda/test/fixtures/tags.yml +9 -0
  687. data/vendor/gems/shoulda/test/fixtures/users.yml +6 -0
  688. data/vendor/gems/shoulda/test/functional/posts_controller_test.rb +121 -0
  689. data/vendor/gems/shoulda/test/functional/users_controller_test.rb +19 -0
  690. data/vendor/gems/shoulda/test/matchers/active_record/allow_mass_assignment_of_matcher_test.rb +68 -0
  691. data/vendor/gems/shoulda/test/matchers/active_record/allow_value_matcher_test.rb +64 -0
  692. data/vendor/gems/shoulda/test/matchers/active_record/association_matcher_test.rb +263 -0
  693. data/vendor/gems/shoulda/test/matchers/active_record/ensure_inclusion_of_matcher_test.rb +80 -0
  694. data/vendor/gems/shoulda/test/matchers/active_record/ensure_length_of_matcher_test.rb +158 -0
  695. data/vendor/gems/shoulda/test/matchers/active_record/have_db_column_matcher_test.rb +169 -0
  696. data/vendor/gems/shoulda/test/matchers/active_record/have_db_index_matcher_test.rb +91 -0
  697. data/vendor/gems/shoulda/test/matchers/active_record/have_named_scope_matcher_test.rb +65 -0
  698. data/vendor/gems/shoulda/test/matchers/active_record/have_readonly_attributes_matcher_test.rb +29 -0
  699. data/vendor/gems/shoulda/test/matchers/active_record/validate_acceptance_of_matcher_test.rb +44 -0
  700. data/vendor/gems/shoulda/test/matchers/active_record/validate_format_of_matcher_test.rb +39 -0
  701. data/vendor/gems/shoulda/test/matchers/active_record/validate_numericality_of_matcher_test.rb +52 -0
  702. data/vendor/gems/shoulda/test/matchers/active_record/validate_presence_of_matcher_test.rb +86 -0
  703. data/vendor/gems/shoulda/test/matchers/active_record/validate_uniqueness_of_matcher_test.rb +147 -0
  704. data/vendor/gems/shoulda/test/matchers/controller/assign_to_matcher_test.rb +35 -0
  705. data/vendor/gems/shoulda/test/matchers/controller/filter_param_matcher_test.rb +32 -0
  706. data/vendor/gems/shoulda/test/matchers/controller/render_with_layout_matcher_test.rb +33 -0
  707. data/vendor/gems/shoulda/test/matchers/controller/respond_with_content_type_matcher_test.rb +32 -0
  708. data/vendor/gems/shoulda/test/matchers/controller/respond_with_matcher_test.rb +106 -0
  709. data/vendor/gems/shoulda/test/matchers/controller/route_matcher_test.rb +58 -0
  710. data/vendor/gems/shoulda/test/matchers/controller/set_session_matcher_test.rb +38 -0
  711. data/vendor/gems/shoulda/test/matchers/controller/set_the_flash_matcher.rb +41 -0
  712. data/vendor/gems/shoulda/test/model_builder.rb +106 -0
  713. data/vendor/gems/shoulda/test/other/autoload_macro_test.rb +18 -0
  714. data/vendor/gems/shoulda/test/other/context_test.rb +189 -0
  715. data/vendor/gems/shoulda/test/other/convert_to_should_syntax_test.rb +63 -0
  716. data/vendor/gems/shoulda/test/other/helpers_test.rb +340 -0
  717. data/vendor/gems/shoulda/test/other/private_helpers_test.rb +32 -0
  718. data/vendor/gems/shoulda/test/other/should_test.rb +271 -0
  719. data/vendor/gems/shoulda/test/rails_root/app/controllers/application_controller.rb +25 -0
  720. data/vendor/gems/shoulda/test/rails_root/app/controllers/posts_controller.rb +87 -0
  721. data/vendor/gems/shoulda/test/rails_root/app/controllers/users_controller.rb +84 -0
  722. data/vendor/gems/shoulda/test/rails_root/app/helpers/application_helper.rb +3 -0
  723. data/vendor/gems/shoulda/test/rails_root/app/helpers/posts_helper.rb +2 -0
  724. data/vendor/gems/shoulda/test/rails_root/app/helpers/users_helper.rb +2 -0
  725. data/vendor/gems/shoulda/test/rails_root/app/models/address.rb +7 -0
  726. data/vendor/gems/shoulda/test/rails_root/app/models/flea.rb +3 -0
  727. data/vendor/gems/shoulda/test/rails_root/app/models/friendship.rb +4 -0
  728. data/vendor/gems/shoulda/test/rails_root/app/models/pets/cat.rb +7 -0
  729. data/vendor/gems/shoulda/test/rails_root/app/models/pets/dog.rb +10 -0
  730. data/vendor/gems/shoulda/test/rails_root/app/models/post.rb +12 -0
  731. data/vendor/gems/shoulda/test/rails_root/app/models/product.rb +12 -0
  732. data/vendor/gems/shoulda/test/rails_root/app/models/profile.rb +2 -0
  733. data/vendor/gems/shoulda/test/rails_root/app/models/registration.rb +2 -0
  734. data/vendor/gems/shoulda/test/rails_root/app/models/tag.rb +8 -0
  735. data/vendor/gems/shoulda/test/rails_root/app/models/tagging.rb +4 -0
  736. data/vendor/gems/shoulda/test/rails_root/app/models/treat.rb +3 -0
  737. data/vendor/gems/shoulda/test/rails_root/app/models/user.rb +32 -0
  738. data/vendor/gems/shoulda/test/rails_root/app/views/layouts/posts.rhtml +19 -0
  739. data/vendor/gems/shoulda/test/rails_root/app/views/layouts/users.rhtml +17 -0
  740. data/vendor/gems/shoulda/test/rails_root/app/views/layouts/wide.html.erb +1 -0
  741. data/vendor/gems/shoulda/test/rails_root/app/views/posts/edit.rhtml +27 -0
  742. data/vendor/gems/shoulda/test/rails_root/app/views/posts/index.rhtml +25 -0
  743. data/vendor/gems/shoulda/test/rails_root/app/views/posts/new.rhtml +26 -0
  744. data/vendor/gems/shoulda/test/rails_root/app/views/posts/show.rhtml +18 -0
  745. data/vendor/gems/shoulda/test/rails_root/app/views/users/edit.rhtml +22 -0
  746. data/vendor/gems/shoulda/test/rails_root/app/views/users/index.rhtml +22 -0
  747. data/vendor/gems/shoulda/test/rails_root/app/views/users/new.rhtml +21 -0
  748. data/vendor/gems/shoulda/test/rails_root/app/views/users/show.rhtml +13 -0
  749. data/vendor/gems/shoulda/test/rails_root/config/boot.rb +110 -0
  750. data/vendor/gems/shoulda/test/rails_root/config/database.yml +4 -0
  751. data/vendor/gems/shoulda/test/rails_root/config/environment.rb +18 -0
  752. data/vendor/gems/shoulda/test/rails_root/config/environments/test.rb +0 -0
  753. data/vendor/gems/shoulda/test/rails_root/config/initializers/new_rails_defaults.rb +15 -0
  754. data/vendor/gems/shoulda/test/rails_root/config/initializers/shoulda.rb +8 -0
  755. data/vendor/gems/shoulda/test/rails_root/config/routes.rb +6 -0
  756. data/vendor/gems/shoulda/test/rails_root/db/migrate/001_create_users.rb +19 -0
  757. data/vendor/gems/shoulda/test/rails_root/db/migrate/002_create_posts.rb +13 -0
  758. data/vendor/gems/shoulda/test/rails_root/db/migrate/003_create_taggings.rb +12 -0
  759. data/vendor/gems/shoulda/test/rails_root/db/migrate/004_create_tags.rb +11 -0
  760. data/vendor/gems/shoulda/test/rails_root/db/migrate/005_create_dogs.rb +12 -0
  761. data/vendor/gems/shoulda/test/rails_root/db/migrate/006_create_addresses.rb +14 -0
  762. data/vendor/gems/shoulda/test/rails_root/db/migrate/007_create_fleas.rb +11 -0
  763. data/vendor/gems/shoulda/test/rails_root/db/migrate/008_create_dogs_fleas.rb +12 -0
  764. data/vendor/gems/shoulda/test/rails_root/db/migrate/009_create_products.rb +17 -0
  765. data/vendor/gems/shoulda/test/rails_root/db/migrate/010_create_friendships.rb +14 -0
  766. data/vendor/gems/shoulda/test/rails_root/db/migrate/011_create_treats.rb +12 -0
  767. data/vendor/gems/shoulda/test/rails_root/db/migrate/20090506203502_create_profiles.rb +12 -0
  768. data/vendor/gems/shoulda/test/rails_root/db/migrate/20090506203536_create_registrations.rb +14 -0
  769. data/vendor/gems/shoulda/test/rails_root/db/migrate/20090513104502_create_cats.rb +12 -0
  770. data/vendor/gems/shoulda/test/rails_root/db/schema.rb +0 -0
  771. data/vendor/gems/shoulda/test/rails_root/public/404.html +30 -0
  772. data/vendor/gems/shoulda/test/rails_root/public/422.html +30 -0
  773. data/vendor/gems/shoulda/test/rails_root/public/500.html +30 -0
  774. data/vendor/gems/shoulda/test/rails_root/script/console +3 -0
  775. data/vendor/gems/shoulda/test/rails_root/script/generate +3 -0
  776. data/vendor/gems/shoulda/test/rails_root/test/shoulda_macros/custom_macro.rb +6 -0
  777. data/vendor/gems/shoulda/test/rails_root/vendor/gems/gem_with_macro-0.0.1/shoulda_macros/gem_macro.rb +6 -0
  778. data/vendor/gems/shoulda/test/rails_root/vendor/plugins/plugin_with_macro/shoulda_macros/plugin_macro.rb +6 -0
  779. data/vendor/gems/shoulda/test/rspec_test.rb +207 -0
  780. data/vendor/gems/shoulda/test/test_helper.rb +28 -0
  781. data/vendor/gems/shoulda/test/unit/address_test.rb +10 -0
  782. data/vendor/gems/shoulda/test/unit/cat_test.rb +7 -0
  783. data/vendor/gems/shoulda/test/unit/dog_test.rb +9 -0
  784. data/vendor/gems/shoulda/test/unit/flea_test.rb +6 -0
  785. data/vendor/gems/shoulda/test/unit/friendship_test.rb +6 -0
  786. data/vendor/gems/shoulda/test/unit/post_test.rb +19 -0
  787. data/vendor/gems/shoulda/test/unit/product_test.rb +23 -0
  788. data/vendor/gems/shoulda/test/unit/tag_test.rb +15 -0
  789. data/vendor/gems/shoulda/test/unit/tagging_test.rb +6 -0
  790. data/vendor/gems/shoulda/test/unit/user_test.rb +80 -0
  791. data/vendor/gems/thrift/CHANGELOG +1 -0
  792. data/vendor/gems/thrift/Makefile.am +47 -0
  793. data/vendor/gems/thrift/Manifest +81 -0
  794. data/vendor/gems/thrift/README +43 -0
  795. data/vendor/gems/thrift/Rakefile +104 -0
  796. data/vendor/gems/thrift/benchmark/Benchmark.thrift +24 -0
  797. data/vendor/gems/thrift/benchmark/benchmark.rb +271 -0
  798. data/vendor/gems/thrift/benchmark/client.rb +74 -0
  799. data/vendor/gems/thrift/benchmark/server.rb +82 -0
  800. data/vendor/gems/thrift/benchmark/thin_server.rb +44 -0
  801. data/vendor/gems/thrift/ext/binary_protocol_accelerated.c +474 -0
  802. data/vendor/gems/thrift/ext/binary_protocol_accelerated.h +20 -0
  803. data/vendor/gems/thrift/ext/compact_protocol.c +665 -0
  804. data/vendor/gems/thrift/ext/compact_protocol.h +20 -0
  805. data/vendor/gems/thrift/ext/constants.h +95 -0
  806. data/vendor/gems/thrift/ext/extconf.rb +26 -0
  807. data/vendor/gems/thrift/ext/macros.h +41 -0
  808. data/vendor/gems/thrift/ext/memory_buffer.c +76 -0
  809. data/vendor/gems/thrift/ext/memory_buffer.h +20 -0
  810. data/vendor/gems/thrift/ext/protocol.c +185 -0
  811. data/vendor/gems/thrift/ext/protocol.h +20 -0
  812. data/vendor/gems/thrift/ext/struct.c +606 -0
  813. data/vendor/gems/thrift/ext/struct.h +67 -0
  814. data/vendor/gems/thrift/ext/thrift_native.c +194 -0
  815. data/vendor/gems/thrift/lib/thrift/client.rb +62 -0
  816. data/vendor/gems/thrift/lib/thrift/core_ext/fixnum.rb +29 -0
  817. data/vendor/gems/thrift/lib/thrift/core_ext.rb +23 -0
  818. data/vendor/gems/thrift/lib/thrift/exceptions.rb +82 -0
  819. data/vendor/gems/thrift/lib/thrift/processor.rb +57 -0
  820. data/vendor/gems/thrift/lib/thrift/protocol/base_protocol.rb +290 -0
  821. data/vendor/gems/thrift/lib/thrift/protocol/binary_protocol.rb +225 -0
  822. data/vendor/gems/thrift/lib/thrift/protocol/binary_protocol_accelerated.rb +35 -0
  823. data/vendor/gems/thrift/lib/thrift/protocol/compact_protocol.rb +422 -0
  824. data/vendor/gems/thrift/lib/thrift/serializer/deserializer.rb +33 -0
  825. data/vendor/gems/thrift/lib/thrift/serializer/serializer.rb +34 -0
  826. data/vendor/gems/thrift/lib/thrift/server/base_server.rb +31 -0
  827. data/vendor/gems/thrift/lib/thrift/server/mongrel_http_server.rb +58 -0
  828. data/vendor/gems/thrift/lib/thrift/server/nonblocking_server.rb +296 -0
  829. data/vendor/gems/thrift/lib/thrift/server/simple_server.rb +43 -0
  830. data/vendor/gems/thrift/lib/thrift/server/thread_pool_server.rb +75 -0
  831. data/vendor/gems/thrift/lib/thrift/server/threaded_server.rb +47 -0
  832. data/vendor/gems/thrift/lib/thrift/struct.rb +298 -0
  833. data/vendor/gems/thrift/lib/thrift/thrift_native.rb +24 -0
  834. data/vendor/gems/thrift/lib/thrift/transport/base_server_transport.rb +37 -0
  835. data/vendor/gems/thrift/lib/thrift/transport/base_transport.rb +70 -0
  836. data/vendor/gems/thrift/lib/thrift/transport/buffered_transport.rb +77 -0
  837. data/vendor/gems/thrift/lib/thrift/transport/framed_transport.rb +90 -0
  838. data/vendor/gems/thrift/lib/thrift/transport/http_client_transport.rb +45 -0
  839. data/vendor/gems/thrift/lib/thrift/transport/io_stream_transport.rb +39 -0
  840. data/vendor/gems/thrift/lib/thrift/transport/memory_buffer_transport.rb +96 -0
  841. data/vendor/gems/thrift/lib/thrift/transport/server_socket.rb +63 -0
  842. data/vendor/gems/thrift/lib/thrift/transport/socket.rb +136 -0
  843. data/vendor/gems/thrift/lib/thrift/transport/unix_server_socket.rb +60 -0
  844. data/vendor/gems/thrift/lib/thrift/transport/unix_socket.rb +40 -0
  845. data/vendor/gems/thrift/lib/thrift/types.rb +101 -0
  846. data/vendor/gems/thrift/lib/thrift.rb +59 -0
  847. data/vendor/gems/thrift/script/proto_benchmark.rb +121 -0
  848. data/vendor/gems/thrift/script/read_struct.rb +43 -0
  849. data/vendor/gems/thrift/script/write_struct.rb +30 -0
  850. data/vendor/gems/thrift/setup.rb +1585 -0
  851. data/vendor/gems/thrift/spec/ThriftSpec.thrift +84 -0
  852. data/vendor/gems/thrift/spec/base_protocol_spec.rb +160 -0
  853. data/vendor/gems/thrift/spec/base_transport_spec.rb +351 -0
  854. data/vendor/gems/thrift/spec/binary_protocol_accelerated_spec.rb +41 -0
  855. data/vendor/gems/thrift/spec/binary_protocol_spec.rb +63 -0
  856. data/vendor/gems/thrift/spec/binary_protocol_spec_shared.rb +375 -0
  857. data/vendor/gems/thrift/spec/client_spec.rb +100 -0
  858. data/vendor/gems/thrift/spec/compact_protocol_spec.rb +117 -0
  859. data/vendor/gems/thrift/spec/exception_spec.rb +142 -0
  860. data/vendor/gems/thrift/spec/http_client_spec.rb +49 -0
  861. data/vendor/gems/thrift/spec/mongrel_http_server_spec.rb +117 -0
  862. data/vendor/gems/thrift/spec/nonblocking_server_spec.rb +265 -0
  863. data/vendor/gems/thrift/spec/processor_spec.rb +83 -0
  864. data/vendor/gems/thrift/spec/serializer_spec.rb +69 -0
  865. data/vendor/gems/thrift/spec/server_socket_spec.rb +80 -0
  866. data/vendor/gems/thrift/spec/server_spec.rb +160 -0
  867. data/vendor/gems/thrift/spec/socket_spec.rb +61 -0
  868. data/vendor/gems/thrift/spec/socket_spec_shared.rb +104 -0
  869. data/vendor/gems/thrift/spec/spec_helper.rb +60 -0
  870. data/vendor/gems/thrift/spec/struct_spec.rb +252 -0
  871. data/vendor/gems/thrift/spec/types_spec.rb +116 -0
  872. data/vendor/gems/thrift/spec/unix_socket_spec.rb +108 -0
  873. data/vendor/gems/trollop/FAQ.txt +84 -0
  874. data/vendor/gems/trollop/History.txt +101 -0
  875. data/vendor/gems/trollop/Manifest.txt +7 -0
  876. data/vendor/gems/trollop/README.txt +40 -0
  877. data/vendor/gems/trollop/Rakefile +36 -0
  878. data/vendor/gems/trollop/lib/trollop.rb +739 -0
  879. data/vendor/gems/trollop/release-script.txt +13 -0
  880. data/vendor/gems/trollop/test/test_trollop.rb +1048 -0
  881. data/vendor/gems/trollop/www/index.html +172 -0
  882. metadata +901 -433
  883. data/History.txt +0 -38
  884. data/PostInstall.txt +0 -19
  885. data/README.txt +0 -66
  886. data/bin/cloud-describe +0 -28
  887. data/bin/cloud-handle-load +0 -27
  888. data/bin/cloud-provision +0 -30
  889. data/bin/cloud-rsync +0 -28
  890. data/bin/cloud-setup-dev +0 -25
  891. data/bin/cloud-spec +0 -40
  892. data/bin/server-butterfly +0 -25
  893. data/bin/server-cloud-elections +0 -37
  894. data/bin/server-ensure-provisioning +0 -33
  895. data/bin/server-fire-cmd +0 -14
  896. data/bin/server-get-load +0 -15
  897. data/bin/server-list-active +0 -31
  898. data/bin/server-manage-election +0 -67
  899. data/bin/server-monitor.ru +0 -42
  900. data/bin/server-query-agent +0 -15
  901. data/bin/server-rerun +0 -23
  902. data/bin/server-send-command +0 -18
  903. data/bin/server-show-stats +0 -17
  904. data/bin/server-write-new-nodes +0 -26
  905. data/examples/fairchild.rb +0 -28
  906. data/examples/fairchild_chef.rb +0 -19
  907. data/examples/maize.rb +0 -37
  908. data/examples/paparazzi.conf.erb +0 -21
  909. data/examples/plugin_without_plugin_directory.rb +0 -12
  910. data/examples/poolparty.rb +0 -12
  911. data/generators/poolspec/USAGE +0 -5
  912. data/generators/poolspec/poolspec_generator.rb +0 -58
  913. data/generators/poolspec/templates/pool_spec_template.erb +0 -9
  914. data/lib/poolparty/aska.rb +0 -141
  915. data/lib/poolparty/base_packages/haproxy.rb +0 -59
  916. data/lib/poolparty/base_packages/heartbeat.rb +0 -16
  917. data/lib/poolparty/base_packages/poolparty.rb +0 -14
  918. data/lib/poolparty/base_packages/ruby.rb +0 -42
  919. data/lib/poolparty/base_packages/runit.rb +0 -21
  920. data/lib/poolparty/core/array.rb +0 -48
  921. data/lib/poolparty/core/class.rb +0 -26
  922. data/lib/poolparty/core/exception.rb +0 -10
  923. data/lib/poolparty/core/float.rb +0 -13
  924. data/lib/poolparty/core/hash.rb +0 -78
  925. data/lib/poolparty/core/kernel.rb +0 -66
  926. data/lib/poolparty/core/metaid.rb +0 -15
  927. data/lib/poolparty/core/module.rb +0 -40
  928. data/lib/poolparty/core/my_open_struct.rb +0 -18
  929. data/lib/poolparty/core/nil.rb +0 -8
  930. data/lib/poolparty/core/object.rb +0 -103
  931. data/lib/poolparty/core/ordered_hash.rb +0 -99
  932. data/lib/poolparty/core/proc.rb +0 -7
  933. data/lib/poolparty/core/string.rb +0 -191
  934. data/lib/poolparty/core/symbol.rb +0 -27
  935. data/lib/poolparty/core/time.rb +0 -56
  936. data/lib/poolparty/dependencies.rb +0 -49
  937. data/lib/poolparty/dependency_resolver/chef_resolver.rb +0 -237
  938. data/lib/poolparty/dependency_resolver/dependency_resolver.rb +0 -42
  939. data/lib/poolparty/dependency_resolver/dependency_resolver_cloud_extensions.rb +0 -29
  940. data/lib/poolparty/dependency_resolver/puppet.rb +0 -75
  941. data/lib/poolparty/dependency_resolver/puppet_resolver.rb +0 -188
  942. data/lib/poolparty/exceptions/CloudNotFoundException.rb +0 -7
  943. data/lib/poolparty/exceptions/LoadRulesException.rb +0 -7
  944. data/lib/poolparty/exceptions/MasterException.rb +0 -10
  945. data/lib/poolparty/exceptions/ProvisionerException.rb +0 -5
  946. data/lib/poolparty/exceptions/RemoteException.rb +0 -12
  947. data/lib/poolparty/exceptions/ResourceException.rb +0 -7
  948. data/lib/poolparty/exceptions/RuntimeException.rb +0 -7
  949. data/lib/poolparty/exceptions/SpecException.rb +0 -7
  950. data/lib/poolparty/exceptions/TemplateNotFound.rb +0 -7
  951. data/lib/poolparty/exceptions/UnacceptableCommand.rb +0 -5
  952. data/lib/poolparty/exceptions/dependency_resolver_exception.rb +0 -5
  953. data/lib/poolparty/exceptions/package_exception.rb +0 -7
  954. data/lib/poolparty/extra/deployments.rb +0 -31
  955. data/lib/poolparty/helpers/binary.rb +0 -70
  956. data/lib/poolparty/helpers/console.rb +0 -48
  957. data/lib/poolparty/helpers/display.rb +0 -30
  958. data/lib/poolparty/helpers/hash_printer.rb +0 -44
  959. data/lib/poolparty/helpers/loading.rb +0 -4
  960. data/lib/poolparty/helpers/nice_printer.rb +0 -36
  961. data/lib/poolparty/helpers/optioner.rb +0 -156
  962. data/lib/poolparty/helpers/ruberl.rb +0 -33
  963. data/lib/poolparty/lite.rb +0 -30
  964. data/lib/poolparty/modules/callbacks.rb +0 -44
  965. data/lib/poolparty/modules/cloud_dsl.rb +0 -44
  966. data/lib/poolparty/modules/cloud_resourcer.rb +0 -126
  967. data/lib/poolparty/modules/daemonizable.rb +0 -141
  968. data/lib/poolparty/modules/definable_resource.rb +0 -54
  969. data/lib/poolparty/modules/file_writer.rb +0 -95
  970. data/lib/poolparty/modules/output.rb +0 -13
  971. data/lib/poolparty/modules/pinger.rb +0 -28
  972. data/lib/poolparty/modules/pretty_printer.rb +0 -40
  973. data/lib/poolparty/modules/resourcing_dsl.rb +0 -78
  974. data/lib/poolparty/modules/s3_string.rb +0 -32
  975. data/lib/poolparty/modules/safe_instance.rb +0 -31
  976. data/lib/poolparty/modules/searchable_paths.rb +0 -91
  977. data/lib/poolparty/modules/thread_pool.rb +0 -107
  978. data/lib/poolparty/modules/user_helpers.rb +0 -20
  979. data/lib/poolparty/monitors/base_monitor.rb +0 -32
  980. data/lib/poolparty/monitors/monitor_rack.rb +0 -123
  981. data/lib/poolparty/monitors/monitors/favicon_monitor.rb +0 -12
  982. data/lib/poolparty/monitors/monitors/load_monitor.rb +0 -9
  983. data/lib/poolparty/monitors/monitors/memory_monitor.rb +0 -50
  984. data/lib/poolparty/monitors/monitors/neighborhood_monitor.rb +0 -77
  985. data/lib/poolparty/monitors/monitors/stats_monitor.rb +0 -187
  986. data/lib/poolparty/monitors/monitors/time_monitor.rb +0 -15
  987. data/lib/poolparty/net/init.rb +0 -10
  988. data/lib/poolparty/net/remote_bases.rb +0 -20
  989. data/lib/poolparty/net/remote_instance.rb +0 -82
  990. data/lib/poolparty/net/remoter/cloud_control.rb +0 -24
  991. data/lib/poolparty/net/remoter/connections.rb +0 -172
  992. data/lib/poolparty/net/remoter/interactive.rb +0 -45
  993. data/lib/poolparty/net/remoter_base.rb +0 -174
  994. data/lib/poolparty/net/remoter_bases/ec2/ec2.rb +0 -245
  995. data/lib/poolparty/net/remoter_bases/ec2/ec2_remote_instance.rb +0 -53
  996. data/lib/poolparty/net/remoter_bases/ec2/ec2_response_object.rb +0 -64
  997. data/lib/poolparty/net/remoter_bases/vmrun/utilities/vm_disk.rb +0 -12
  998. data/lib/poolparty/net/remoter_bases/vmrun/utilities/vmx.rb +0 -33
  999. data/lib/poolparty/net/remoter_bases/vmrun/utilities/vmx_file.rb +0 -117
  1000. data/lib/poolparty/net/remoter_bases/vmrun/vmrun.rb +0 -158
  1001. data/lib/poolparty/net/remoter_bases/vmrun/vmrun_instance.rb +0 -71
  1002. data/lib/poolparty/plugins/apache2/apache.rb +0 -340
  1003. data/lib/poolparty/plugins/bind.rb +0 -11
  1004. data/lib/poolparty/plugins/chef.rb +0 -173
  1005. data/lib/poolparty/plugins/chef_deploy.rb +0 -58
  1006. data/lib/poolparty/plugins/deploy_directory.rb +0 -49
  1007. data/lib/poolparty/plugins/gem_package.rb +0 -61
  1008. data/lib/poolparty/plugins/line_in_file.rb +0 -30
  1009. data/lib/poolparty/plugins/nanite.rb +0 -41
  1010. data/lib/poolparty/plugins/rails_deploy.rb +0 -76
  1011. data/lib/poolparty/plugins/runit.rb +0 -96
  1012. data/lib/poolparty/plugins/svn.rb +0 -65
  1013. data/lib/poolparty/poolparty/cloud.rb +0 -236
  1014. data/lib/poolparty/poolparty/default.rb +0 -159
  1015. data/lib/poolparty/poolparty/key.rb +0 -78
  1016. data/lib/poolparty/poolparty/loggable.rb +0 -28
  1017. data/lib/poolparty/poolparty/neighborhoods.rb +0 -102
  1018. data/lib/poolparty/poolparty/plugin.rb +0 -71
  1019. data/lib/poolparty/poolparty/plugin_model.rb +0 -45
  1020. data/lib/poolparty/poolparty/pool.rb +0 -80
  1021. data/lib/poolparty/poolparty/poolparty_base_class.rb +0 -190
  1022. data/lib/poolparty/poolparty/resource.rb +0 -213
  1023. data/lib/poolparty/poolparty/script.rb +0 -58
  1024. data/lib/poolparty/poolparty/service.rb +0 -44
  1025. data/lib/poolparty/poolparty/template.rb +0 -27
  1026. data/lib/poolparty/provision/boot_strapper.rb +0 -164
  1027. data/lib/poolparty/provision/configurations/chef.rb +0 -26
  1028. data/lib/poolparty/provision/configurations/puppet.rb +0 -28
  1029. data/lib/poolparty/provision/dr_configure.rb +0 -142
  1030. data/lib/poolparty/resources/host.rb +0 -37
  1031. data/lib/poolparty/resources/remote_file.rb +0 -52
  1032. data/lib/poolparty/resources/sshkey.rb +0 -49
  1033. data/lib/poolparty/resources/symlink.rb +0 -43
  1034. data/lib/poolparty/resources.rb +0 -42
  1035. data/lib/poolparty/schema.rb +0 -79
  1036. data/lib/poolparty/templates/apache2/apache2.conf +0 -14
  1037. data/lib/poolparty/templates/apache2/base.conf.erb +0 -168
  1038. data/lib/poolparty/templates/apache2/debian.conf.erb +0 -675
  1039. data/lib/poolparty/templates/apache2/default-site.conf.erb +0 -41
  1040. data/lib/poolparty/templates/apache2/directory_indexes.conf.erb +0 -101
  1041. data/lib/poolparty/templates/apache2/logging-syslog.conf.erb +0 -42
  1042. data/lib/poolparty/templates/apache2/mime-extras.conf.erb +0 -211
  1043. data/lib/poolparty/templates/apache2/mpm-worker.conf.erb +0 -20
  1044. data/lib/poolparty/templates/apache2/mpm-worker.erb +0 -20
  1045. data/lib/poolparty/templates/apache2/passenger.conf.erb +0 -20
  1046. data/lib/poolparty/templates/apache2/php.ini.erb +0 -1253
  1047. data/lib/poolparty/templates/apache2/server-status.erb +0 -19
  1048. data/lib/poolparty/templates/authkeys +0 -2
  1049. data/lib/poolparty/templates/cib.xml +0 -54
  1050. data/lib/poolparty/templates/erlang_cookie_maker +0 -6
  1051. data/lib/poolparty/templates/gem +0 -27
  1052. data/lib/poolparty/templates/gemrc_template +0 -11
  1053. data/lib/poolparty/templates/ha.cf +0 -17
  1054. data/lib/poolparty/templates/haproxy.conf +0 -38
  1055. data/lib/poolparty/templates/haresources +0 -3
  1056. data/lib/poolparty/templates/logd.cf +0 -42
  1057. data/lib/poolparty/templates/messenger/client/log-run.erb +0 -2
  1058. data/lib/poolparty/templates/messenger/client/run.erb +0 -4
  1059. data/lib/poolparty/templates/messenger/master/log-run.erb +0 -2
  1060. data/lib/poolparty/templates/messenger/master/run.erb +0 -4
  1061. data/lib/poolparty/templates/messenger/node/log-run.erb +0 -2
  1062. data/lib/poolparty/templates/messenger/node/run.erb +0 -4
  1063. data/lib/poolparty/templates/monitor.ru +0 -16
  1064. data/lib/poolparty/templates/namespaceauth.conf +0 -19
  1065. data/lib/poolparty/templates/php.ini.erb +0 -1253
  1066. data/lib/poolparty/templates/poolparty.monitor +0 -14
  1067. data/lib/poolparty/templates/puppet/add_puppet_to_hosts +0 -6
  1068. data/lib/poolparty/templates/puppet/puppet.conf +0 -2
  1069. data/lib/poolparty/templates/puppet/puppetrunner +0 -14
  1070. data/lib/poolparty/templates/puppet/site.pp +0 -4
  1071. data/lib/poolparty/templates/puppetrunner +0 -14
  1072. data/lib/poolparty/templates/yaws.conf +0 -19
  1073. data/lib/poolparty/verification/verifier_base.rb +0 -17
  1074. data/lib/poolparty/verification/verifiers/http_match.rb +0 -43
  1075. data/lib/poolparty/verification/verifiers/http_status.rb +0 -59
  1076. data/lib/poolparty/verification/verifiers/ping.rb +0 -34
  1077. data/lib/poolparty/verification/verify.rb +0 -76
  1078. data/lib/poolpartycl.rb +0 -72
  1079. data/script/destroy +0 -14
  1080. data/script/generate +0 -14
  1081. data/spec/bin/bin_spec_helper.rb +0 -7
  1082. data/spec/bin/fixtures/bin_cloud_for_test.rb +0 -13
  1083. data/spec/bin/server-list-active_spec.rb +0 -24
  1084. data/spec/poolparty/aska/aska_spec.rb +0 -117
  1085. data/spec/poolparty/base_packages/haproxy_spec.rb +0 -7
  1086. data/spec/poolparty/base_packages/heartbeat_spec.rb +0 -7
  1087. data/spec/poolparty/bin/console_spec.rb +0 -83
  1088. data/spec/poolparty/core/array_spec.rb +0 -48
  1089. data/spec/poolparty/core/float.rb +0 -13
  1090. data/spec/poolparty/core/hash_spec.rb +0 -83
  1091. data/spec/poolparty/core/kernel_spec.rb +0 -24
  1092. data/spec/poolparty/core/module_spec.rb +0 -15
  1093. data/spec/poolparty/core/object_spec.rb +0 -68
  1094. data/spec/poolparty/core/ordered_hash_spec.rb +0 -48
  1095. data/spec/poolparty/core/string_spec.rb +0 -145
  1096. data/spec/poolparty/core/time_spec.rb +0 -49
  1097. data/spec/poolparty/dependencies_spec.rb +0 -11
  1098. data/spec/poolparty/dependency_resolver/chef_resolver_spec.rb +0 -107
  1099. data/spec/poolparty/dependency_resolver/dependency_resolver_cloud_extensions_spec.rb +0 -122
  1100. data/spec/poolparty/dependency_resolver/dependency_resolver_spec.rb +0 -16
  1101. data/spec/poolparty/dependency_resolver/puppet_resolver_spec.rb +0 -121
  1102. data/spec/poolparty/extra/deployments_spec.rb +0 -68
  1103. data/spec/poolparty/fixtures/clouds.json +0 -128
  1104. data/spec/poolparty/fixtures/test_template.erb +0 -1
  1105. data/spec/poolparty/helpers/binary_spec.rb +0 -26
  1106. data/spec/poolparty/helpers/display_spec.rb +0 -13
  1107. data/spec/poolparty/helpers/hash_printer_spec.rb +0 -34
  1108. data/spec/poolparty/helpers/optioner_spec.rb +0 -50
  1109. data/spec/poolparty/id_rsa +0 -27
  1110. data/spec/poolparty/modules/cloud_resourcer_spec.rb +0 -67
  1111. data/spec/poolparty/modules/definable_resource.rb +0 -9
  1112. data/spec/poolparty/modules/file_writer_spec.rb +0 -64
  1113. data/spec/poolparty/modules/s3_string_spec.rb +0 -15
  1114. data/spec/poolparty/modules/searchable_paths_spec.rb +0 -76
  1115. data/spec/poolparty/monitors/base_monitor_spec.rb +0 -112
  1116. data/spec/poolparty/monitors/monitors/cpu_monitor_spec.rb +0 -18
  1117. data/spec/poolparty/monitors/monitors/memory_monitor_spec.rb +0 -48
  1118. data/spec/poolparty/net/remote_instance_spec.rb +0 -17
  1119. data/spec/poolparty/net/remote_spec.rb +0 -287
  1120. data/spec/poolparty/net/remoter_base_spec.rb +0 -35
  1121. data/spec/poolparty/net/remoter_bases/ec2_mocks_and_stubs.rb +0 -24
  1122. data/spec/poolparty/net/remoter_bases/ec2_remote_instance_spec.rb +0 -114
  1123. data/spec/poolparty/net/remoter_bases/ec2_spec.rb +0 -134
  1124. data/spec/poolparty/net/remoter_spec.rb +0 -133
  1125. data/spec/poolparty/plugins/chef_spec.rb +0 -7
  1126. data/spec/poolparty/plugins/deploydirectory_spec.rb +0 -51
  1127. data/spec/poolparty/plugins/git_spec.rb +0 -41
  1128. data/spec/poolparty/plugins/line_spec.rb +0 -22
  1129. data/spec/poolparty/poolparty/cloud_spec.rb +0 -322
  1130. data/spec/poolparty/poolparty/configurers/files/ruby_basic.rb +0 -16
  1131. data/spec/poolparty/poolparty/configurers/files/ruby_plugins.rb +0 -16
  1132. data/spec/poolparty/poolparty/configurers/ruby_spec.rb +0 -42
  1133. data/spec/poolparty/poolparty/default_spec.rb +0 -139
  1134. data/spec/poolparty/poolparty/example_spec.rb +0 -60
  1135. data/spec/poolparty/poolparty/key_spec.rb +0 -42
  1136. data/spec/poolparty/poolparty/neighborhoods_spec.rb +0 -65
  1137. data/spec/poolparty/poolparty/plugin_model_spec.rb +0 -54
  1138. data/spec/poolparty/poolparty/plugin_spec.rb +0 -41
  1139. data/spec/poolparty/poolparty/pool_spec.rb +0 -100
  1140. data/spec/poolparty/poolparty/resource_spec.rb +0 -208
  1141. data/spec/poolparty/poolparty/script_spec.rb +0 -49
  1142. data/spec/poolparty/poolparty/service_spec.rb +0 -5
  1143. data/spec/poolparty/poolparty/template_spec.rb +0 -26
  1144. data/spec/poolparty/poolparty/test_plugins/sshkey_test +0 -2
  1145. data/spec/poolparty/poolparty/test_plugins/webserver.rb +0 -30
  1146. data/spec/poolparty/poolparty_base_class_spec.rb +0 -84
  1147. data/spec/poolparty/poolparty_spec.rb +0 -36
  1148. data/spec/poolparty/resources/cron_spec.rb +0 -44
  1149. data/spec/poolparty/resources/directory_spec.rb +0 -40
  1150. data/spec/poolparty/resources/exec_spec.rb +0 -37
  1151. data/spec/poolparty/resources/file_spec.rb +0 -64
  1152. data/spec/poolparty/resources/gem_spec.rb +0 -7
  1153. data/spec/poolparty/resources/host_spec.rb +0 -35
  1154. data/spec/poolparty/resources/package_spec.rb +0 -26
  1155. data/spec/poolparty/resources/service_spec.rb +0 -29
  1156. data/spec/poolparty/resources/sshkey_spec.rb +0 -40
  1157. data/spec/poolparty/resources/symlink_spec.rb +0 -29
  1158. data/spec/poolparty/resources/user_spec.rb +0 -48
  1159. data/spec/poolparty/resources/variable_spec.rb +0 -26
  1160. data/spec/poolparty/schema_spec.rb +0 -53
  1161. data/spec/poolparty/spec_helper.rb +0 -262
  1162. data/spec/poolparty/test_spec_helper.rb +0 -13
  1163. data/tasks/cloud.rake +0 -3
  1164. data/tasks/ec2.rake +0 -13
  1165. data/tasks/instance.rake +0 -2
  1166. data/tasks/server.rake +0 -44
  1167. data/tasks/spec.rake +0 -50
  1168. data/test/poolparty/core/array_test.rb +0 -21
  1169. data/test/poolparty/core/hash_test.rb +0 -34
  1170. data/test/poolparty/core/string_test.rb +0 -29
  1171. data/test/poolparty/dependency_resolver/puppet_resolver_test.rb +0 -90
  1172. data/test/poolparty/modules/callbacks_test.rb +0 -40
  1173. data/test/poolparty/modules/cloud_dsl_test.rb +0 -60
  1174. data/test/poolparty/net/remoter_bases/vmrun/vmrun_test.rb +0 -54
  1175. data/test/poolparty/net/remoter_test.rb +0 -14
  1176. data/test/poolparty/poolparty/neighborhood_test.rb +0 -23
  1177. data/test/poolparty/poolparty/poolparty_base_class_test.rb +0 -84
  1178. data/test/poolparty/poolparty/template_test.rb +0 -31
  1179. data/test/poolparty/provision/boot_strapper_test.rb +0 -6
  1180. data/test/poolparty/provision/dr_configure_test.rb +0 -6
  1181. data/test/poolparty/verification/verify_test.rb +0 -49
  1182. data/test/test_generator_helper.rb +0 -29
  1183. data/test/test_pool_spec_generator.rb +0 -47
  1184. data/test/test_poolparty.rb +0 -12
  1185. data/vendor/gems/butterfly/History.txt +0 -4
  1186. data/vendor/gems/butterfly/PostInstall.txt +0 -2
  1187. data/vendor/gems/butterfly/README.rdoc +0 -48
  1188. data/vendor/gems/butterfly/Rakefile +0 -62
  1189. data/vendor/gems/butterfly/VERSION.yml +0 -4
  1190. data/vendor/gems/butterfly/bin/flutter +0 -4
  1191. data/vendor/gems/butterfly/butterfly.gemspec +0 -37
  1192. data/vendor/gems/butterfly/examples/config.ru +0 -15
  1193. data/vendor/gems/butterfly/examples/my_app.rb +0 -12
  1194. data/vendor/gems/butterfly/lib/butterfly.rb +0 -14
  1195. data/vendor/gems/butterfly/lib/handler.rb +0 -48
  1196. data/vendor/gems/butterfly/lib/request.rb +0 -29
  1197. data/vendor/gems/butterfly/lib/response.rb +0 -49
  1198. data/vendor/gems/butterfly/script/console +0 -10
  1199. data/vendor/gems/butterfly/script/destroy +0 -14
  1200. data/vendor/gems/butterfly/script/generate +0 -14
  1201. data/vendor/gems/butterfly/test/test_adapter_base.rb +0 -23
  1202. data/vendor/gems/butterfly/test/test_butterfly_request.rb +0 -46
  1203. data/vendor/gems/butterfly/test/test_butterfly_response.rb +0 -43
  1204. data/vendor/gems/butterfly/test/test_butterfly_server.rb +0 -16
  1205. data/vendor/gems/butterfly/test/test_default.rb +0 -12
  1206. data/vendor/gems/butterfly/test/test_helper.rb +0 -6
  1207. data/vendor/gems/dslify/History.txt +0 -4
  1208. data/vendor/gems/dslify/Manifest.txt +0 -25
  1209. data/vendor/gems/dslify/PostInstall.txt +0 -5
  1210. data/vendor/gems/dslify/README.txt +0 -60
  1211. data/vendor/gems/dslify/config/hoe.rb +0 -73
  1212. data/vendor/gems/dslify/config/requirements.rb +0 -15
  1213. data/vendor/gems/dslify/lib/dslify/dslify.rb +0 -76
  1214. data/vendor/gems/dslify/lib/dslify/version.rb +0 -10
  1215. data/vendor/gems/dslify/script/console +0 -10
  1216. data/vendor/gems/dslify/script/destroy +0 -14
  1217. data/vendor/gems/dslify/script/generate +0 -14
  1218. data/vendor/gems/dslify/script/txt2html +0 -82
  1219. data/vendor/gems/dslify/tasks/environment.rake +0 -7
  1220. data/vendor/gems/dslify/tasks/website.rake +0 -17
  1221. data/vendor/gems/dslify/test/test_dslify.rb +0 -138
  1222. data/vendor/gems/dslify/website/index.html +0 -86
  1223. data/vendor/gems/dslify/website/index.txt +0 -83
  1224. data/vendor/gems/dslify/website/javascripts/rounded_corners_lite.inc.js +0 -285
  1225. data/vendor/gems/dslify/website/stylesheets/screen.css +0 -138
  1226. data/vendor/gems/dslify/website/template.html.erb +0 -48
  1227. data/vendor/gems/suitcase/README.rdoc +0 -31
  1228. data/vendor/gems/suitcase/Rakefile +0 -57
  1229. data/vendor/gems/suitcase/VERSION.yml +0 -4
  1230. data/vendor/gems/suitcase/lib/suitcase/unzipper.rb +0 -15
  1231. data/vendor/gems/suitcase/lib/suitcase/zipper.rb +0 -119
  1232. data/vendor/gems/suitcase/lib/suitcase.rb +0 -5
  1233. data/vendor/gems/suitcase/suitcase.gemspec +0 -32
  1234. data/vendor/gems/suitcase/test/suitcase_test.rb +0 -102
  1235. data/vendor/gems/suitcase/test/test_dir/box.rb +0 -1
  1236. data/vendor/gems/suitcase/test/test_dir/test.txt +0 -1
  1237. data/vendor/gems/suitcase/test/test_helper.rb +0 -12
  1238. /data/lib/poolparty/{templates → plugins}/apache2/browser_fixes.conf.erb +0 -0
  1239. /data/lib/poolparty/{templates → plugins}/apache2/mime-minimal.conf.erb +0 -0
  1240. /data/{spec/poolparty/poolparty/test_plugins/virtual_host_template.erb → lib/proto/gen-py/__init__.py} +0 -0
  1241. /data/vendor/gems/{suitcase → colors}/LICENSE +0 -0
  1242. /data/vendor/gems/{dslify → context}/setup.rb +0 -0
  1243. /data/vendor/gems/{dslify → context}/tasks/deployment.rake +0 -0
  1244. /data/{tasks → vendor/gems/context/tasks}/environment.rake +0 -0
@@ -0,0 +1,252 @@
1
+ #
2
+ # Licensed to the Apache Software Foundation (ASF) under one
3
+ # or more contributor license agreements. See the NOTICE file
4
+ # distributed with this work for additional information
5
+ # regarding copyright ownership. The ASF licenses this file
6
+ # to you under the Apache License, Version 2.0 (the
7
+ # "License"); you may not use this file except in compliance
8
+ # with the License. You may obtain a copy of the License at
9
+ #
10
+ # http://www.apache.org/licenses/LICENSE-2.0
11
+ #
12
+ # Unless required by applicable law or agreed to in writing,
13
+ # software distributed under the License is distributed on an
14
+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15
+ # KIND, either express or implied. See the License for the
16
+ # specific language governing permissions and limitations
17
+ # under the License.
18
+ #
19
+
20
+ require File.dirname(__FILE__) + '/spec_helper'
21
+
22
+ class ThriftStructSpec < Spec::ExampleGroup
23
+ include Thrift
24
+ include SpecNamespace
25
+
26
+ describe Struct do
27
+ it "should iterate over all fields properly" do
28
+ fields = {}
29
+ Foo.new.each_field { |fid,field_info| fields[fid] = field_info }
30
+ fields.should == Foo::FIELDS
31
+ end
32
+
33
+ it "should initialize all fields to defaults" do
34
+ struct = Foo.new
35
+ struct.simple.should == 53
36
+ struct.words.should == "words"
37
+ struct.hello.should == Hello.new(:greeting => 'hello, world!')
38
+ struct.ints.should == [1, 2, 2, 3]
39
+ struct.complex.should be_nil
40
+ struct.shorts.should == Set.new([5, 17, 239])
41
+ end
42
+
43
+ it "should not share default values between instances" do
44
+ begin
45
+ struct = Foo.new
46
+ struct.ints << 17
47
+ Foo.new.ints.should == [1,2,2,3]
48
+ ensure
49
+ # ensure no leakage to other tests
50
+ Foo::FIELDS[4][:default] = [1,2,2,3]
51
+ end
52
+ end
53
+
54
+ it "should properly initialize boolean values" do
55
+ struct = BoolStruct.new(:yesno => false)
56
+ struct.yesno.should be_false
57
+ end
58
+
59
+ it "should have proper == semantics" do
60
+ Foo.new.should_not == Hello.new
61
+ Foo.new.should == Foo.new
62
+ Foo.new(:simple => 52).should_not == Foo.new
63
+ end
64
+
65
+ it "should read itself off the wire" do
66
+ struct = Foo.new
67
+ prot = BaseProtocol.new(mock("transport"))
68
+ prot.should_receive(:read_struct_begin).twice
69
+ prot.should_receive(:read_struct_end).twice
70
+ prot.should_receive(:read_field_begin).and_return(
71
+ ['complex', Types::MAP, 5], # Foo
72
+ ['words', Types::STRING, 2], # Foo
73
+ ['hello', Types::STRUCT, 3], # Foo
74
+ ['greeting', Types::STRING, 1], # Hello
75
+ [nil, Types::STOP, 0], # Hello
76
+ ['simple', Types::I32, 1], # Foo
77
+ ['ints', Types::LIST, 4], # Foo
78
+ ['shorts', Types::SET, 6], # Foo
79
+ [nil, Types::STOP, 0] # Hello
80
+ )
81
+ prot.should_receive(:read_field_end).exactly(7).times
82
+ prot.should_receive(:read_map_begin).and_return(
83
+ [Types::I32, Types::MAP, 2], # complex
84
+ [Types::STRING, Types::DOUBLE, 2], # complex/1/value
85
+ [Types::STRING, Types::DOUBLE, 1] # complex/2/value
86
+ )
87
+ prot.should_receive(:read_map_end).exactly(3).times
88
+ prot.should_receive(:read_list_begin).and_return([Types::I32, 4])
89
+ prot.should_receive(:read_list_end)
90
+ prot.should_receive(:read_set_begin).and_return([Types::I16, 2])
91
+ prot.should_receive(:read_set_end)
92
+ prot.should_receive(:read_i32).and_return(
93
+ 1, 14, # complex keys
94
+ 42, # simple
95
+ 4, 23, 4, 29 # ints
96
+ )
97
+ prot.should_receive(:read_string).and_return("pi", "e", "feigenbaum", "apple banana", "what's up?")
98
+ prot.should_receive(:read_double).and_return(Math::PI, Math::E, 4.669201609)
99
+ prot.should_receive(:read_i16).and_return(2, 3)
100
+ prot.should_not_receive(:skip)
101
+ struct.read(prot)
102
+
103
+ struct.simple.should == 42
104
+ struct.complex.should == {1 => {"pi" => Math::PI, "e" => Math::E}, 14 => {"feigenbaum" => 4.669201609}}
105
+ struct.hello.should == Hello.new(:greeting => "what's up?")
106
+ struct.words.should == "apple banana"
107
+ struct.ints.should == [4, 23, 4, 29]
108
+ struct.shorts.should == Set.new([3, 2])
109
+ end
110
+
111
+ it "should skip unexpected fields in structs and use default values" do
112
+ struct = Foo.new
113
+ prot = BaseProtocol.new(mock("transport"))
114
+ prot.should_receive(:read_struct_begin)
115
+ prot.should_receive(:read_struct_end)
116
+ prot.should_receive(:read_field_begin).and_return(
117
+ ['simple', Types::I32, 1],
118
+ ['complex', Types::STRUCT, 5],
119
+ ['thinz', Types::MAP, 7],
120
+ ['foobar', Types::I32, 3],
121
+ ['words', Types::STRING, 2],
122
+ [nil, Types::STOP, 0]
123
+ )
124
+ prot.should_receive(:read_field_end).exactly(5).times
125
+ prot.should_receive(:read_i32).and_return(42)
126
+ prot.should_receive(:read_string).and_return("foobar")
127
+ prot.should_receive(:skip).with(Types::STRUCT)
128
+ prot.should_receive(:skip).with(Types::MAP)
129
+ # prot.should_receive(:read_map_begin).and_return([Types::I32, Types::I32, 0])
130
+ # prot.should_receive(:read_map_end)
131
+ prot.should_receive(:skip).with(Types::I32)
132
+ struct.read(prot)
133
+
134
+ struct.simple.should == 42
135
+ struct.complex.should be_nil
136
+ struct.words.should == "foobar"
137
+ struct.hello.should == Hello.new(:greeting => 'hello, world!')
138
+ struct.ints.should == [1, 2, 2, 3]
139
+ struct.shorts.should == Set.new([5, 17, 239])
140
+ end
141
+
142
+ it "should write itself to the wire" do
143
+ prot = BaseProtocol.new(mock("transport")) #mock("Protocol")
144
+ prot.should_receive(:write_struct_begin).with("SpecNamespace::Foo")
145
+ prot.should_receive(:write_struct_begin).with("SpecNamespace::Hello")
146
+ prot.should_receive(:write_struct_end).twice
147
+ prot.should_receive(:write_field_begin).with('ints', Types::LIST, 4)
148
+ prot.should_receive(:write_i32).with(1)
149
+ prot.should_receive(:write_i32).with(2).twice
150
+ prot.should_receive(:write_i32).with(3)
151
+ prot.should_receive(:write_field_begin).with('complex', Types::MAP, 5)
152
+ prot.should_receive(:write_i32).with(5)
153
+ prot.should_receive(:write_string).with('foo')
154
+ prot.should_receive(:write_double).with(1.23)
155
+ prot.should_receive(:write_field_begin).with('shorts', Types::SET, 6)
156
+ prot.should_receive(:write_i16).with(5)
157
+ prot.should_receive(:write_i16).with(17)
158
+ prot.should_receive(:write_i16).with(239)
159
+ prot.should_receive(:write_field_stop).twice
160
+ prot.should_receive(:write_field_end).exactly(6).times
161
+ prot.should_receive(:write_field_begin).with('simple', Types::I32, 1)
162
+ prot.should_receive(:write_i32).with(53)
163
+ prot.should_receive(:write_field_begin).with('hello', Types::STRUCT, 3)
164
+ prot.should_receive(:write_field_begin).with('greeting', Types::STRING, 1)
165
+ prot.should_receive(:write_string).with('hello, world!')
166
+ prot.should_receive(:write_map_begin).with(Types::I32, Types::MAP, 1)
167
+ prot.should_receive(:write_map_begin).with(Types::STRING, Types::DOUBLE, 1)
168
+ prot.should_receive(:write_map_end).twice
169
+ prot.should_receive(:write_list_begin).with(Types::I32, 4)
170
+ prot.should_receive(:write_list_end)
171
+ prot.should_receive(:write_set_begin).with(Types::I16, 3)
172
+ prot.should_receive(:write_set_end)
173
+
174
+ struct = Foo.new
175
+ struct.words = nil
176
+ struct.complex = {5 => {"foo" => 1.23}}
177
+ struct.write(prot)
178
+ end
179
+
180
+ it "should raise an exception if presented with an unknown container" do
181
+ # yeah this is silly, but I'm going for code coverage here
182
+ struct = Foo.new
183
+ lambda { struct.send :write_container, nil, nil, {:type => "foo"} }.should raise_error(StandardError, "Not a container type: foo")
184
+ end
185
+
186
+ it "should support optional type-checking in Thrift::Struct.new" do
187
+ Thrift.type_checking = true
188
+ begin
189
+ lambda { Hello.new(:greeting => 3) }.should raise_error(TypeError, "Expected Types::STRING, received Fixnum for field greeting")
190
+ ensure
191
+ Thrift.type_checking = false
192
+ end
193
+ lambda { Hello.new(:greeting => 3) }.should_not raise_error(TypeError)
194
+ end
195
+
196
+ it "should support optional type-checking in field accessors" do
197
+ Thrift.type_checking = true
198
+ begin
199
+ hello = Hello.new
200
+ lambda { hello.greeting = 3 }.should raise_error(TypeError, "Expected Types::STRING, received Fixnum for field greeting")
201
+ ensure
202
+ Thrift.type_checking = false
203
+ end
204
+ lambda { hello.greeting = 3 }.should_not raise_error(TypeError)
205
+ end
206
+
207
+ it "should raise an exception when unknown types are given to Thrift::Struct.new" do
208
+ lambda { Hello.new(:fish => 'salmon') }.should raise_error(Exception, "Unknown key given to SpecNamespace::Hello.new: fish")
209
+ end
210
+
211
+ it "should support `raise Xception, 'message'` for Exception structs" do
212
+ begin
213
+ raise Xception, "something happened"
214
+ rescue Thrift::Exception => e
215
+ e.message.should == "something happened"
216
+ e.code.should == 1
217
+ # ensure it gets serialized properly, this is the really important part
218
+ prot = BaseProtocol.new(mock("trans"))
219
+ prot.should_receive(:write_struct_begin).with("SpecNamespace::Xception")
220
+ prot.should_receive(:write_struct_end)
221
+ prot.should_receive(:write_field_begin).with('message', Types::STRING, 1)#, "something happened")
222
+ prot.should_receive(:write_string).with("something happened")
223
+ prot.should_receive(:write_field_begin).with('code', Types::I32, 2)#, 1)
224
+ prot.should_receive(:write_i32).with(1)
225
+ prot.should_receive(:write_field_stop)
226
+ prot.should_receive(:write_field_end).twice
227
+
228
+ e.write(prot)
229
+ end
230
+ end
231
+
232
+ it "should support the regular initializer for exception structs" do
233
+ begin
234
+ raise Xception, :message => "something happened", :code => 5
235
+ rescue Thrift::Exception => e
236
+ e.message.should == "something happened"
237
+ e.code.should == 5
238
+ prot = BaseProtocol.new(mock("trans"))
239
+ prot.should_receive(:write_struct_begin).with("SpecNamespace::Xception")
240
+ prot.should_receive(:write_struct_end)
241
+ prot.should_receive(:write_field_begin).with('message', Types::STRING, 1)
242
+ prot.should_receive(:write_string).with("something happened")
243
+ prot.should_receive(:write_field_begin).with('code', Types::I32, 2)
244
+ prot.should_receive(:write_i32).with(5)
245
+ prot.should_receive(:write_field_stop)
246
+ prot.should_receive(:write_field_end).twice
247
+
248
+ e.write(prot)
249
+ end
250
+ end
251
+ end
252
+ end
@@ -0,0 +1,116 @@
1
+ #
2
+ # Licensed to the Apache Software Foundation (ASF) under one
3
+ # or more contributor license agreements. See the NOTICE file
4
+ # distributed with this work for additional information
5
+ # regarding copyright ownership. The ASF licenses this file
6
+ # to you under the Apache License, Version 2.0 (the
7
+ # "License"); you may not use this file except in compliance
8
+ # with the License. You may obtain a copy of the License at
9
+ #
10
+ # http://www.apache.org/licenses/LICENSE-2.0
11
+ #
12
+ # Unless required by applicable law or agreed to in writing,
13
+ # software distributed under the License is distributed on an
14
+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15
+ # KIND, either express or implied. See the License for the
16
+ # specific language governing permissions and limitations
17
+ # under the License.
18
+ #
19
+
20
+ require File.dirname(__FILE__) + '/spec_helper'
21
+
22
+ class ThriftTypesSpec < Spec::ExampleGroup
23
+ include Thrift
24
+
25
+ before(:each) do
26
+ Thrift.type_checking = true
27
+ end
28
+
29
+ after(:each) do
30
+ Thrift.type_checking = false
31
+ end
32
+
33
+ describe "Type checking" do
34
+ it "should return the proper name for each type" do
35
+ Thrift.type_name(Types::I16).should == "Types::I16"
36
+ Thrift.type_name(Types::VOID).should == "Types::VOID"
37
+ Thrift.type_name(Types::LIST).should == "Types::LIST"
38
+ Thrift.type_name(42).should be_nil
39
+ end
40
+
41
+ it "should check types properly" do
42
+ # lambda { Thrift.check_type(nil, Types::STOP) }.should raise_error(TypeError)
43
+ lambda { Thrift.check_type(3, {:type => Types::STOP}, :foo) }.should raise_error(TypeError)
44
+ lambda { Thrift.check_type(nil, {:type => Types::VOID}, :foo) }.should_not raise_error(TypeError)
45
+ lambda { Thrift.check_type(3, {:type => Types::VOID}, :foo) }.should raise_error(TypeError)
46
+ lambda { Thrift.check_type(true, {:type => Types::BOOL}, :foo) }.should_not raise_error(TypeError)
47
+ lambda { Thrift.check_type(3, {:type => Types::BOOL}, :foo) }.should raise_error(TypeError)
48
+ lambda { Thrift.check_type(42, {:type => Types::BYTE}, :foo) }.should_not raise_error(TypeError)
49
+ lambda { Thrift.check_type(42, {:type => Types::I16}, :foo) }.should_not raise_error(TypeError)
50
+ lambda { Thrift.check_type(42, {:type => Types::I32}, :foo) }.should_not raise_error(TypeError)
51
+ lambda { Thrift.check_type(42, {:type => Types::I64}, :foo) }.should_not raise_error(TypeError)
52
+ lambda { Thrift.check_type(3.14, {:type => Types::I32}, :foo) }.should raise_error(TypeError)
53
+ lambda { Thrift.check_type(3.14, {:type => Types::DOUBLE}, :foo) }.should_not raise_error(TypeError)
54
+ lambda { Thrift.check_type(3, {:type => Types::DOUBLE}, :foo) }.should raise_error(TypeError)
55
+ lambda { Thrift.check_type("3", {:type => Types::STRING}, :foo) }.should_not raise_error(TypeError)
56
+ lambda { Thrift.check_type(3, {:type => Types::STRING}, :foo) }.should raise_error(TypeError)
57
+ hello = SpecNamespace::Hello.new
58
+ lambda { Thrift.check_type(hello, {:type => Types::STRUCT, :class => SpecNamespace::Hello}, :foo) }.should_not raise_error(TypeError)
59
+ lambda { Thrift.check_type("foo", {:type => Types::STRUCT}, :foo) }.should raise_error(TypeError)
60
+ lambda { Thrift.check_type({:foo => 1}, {:type => Types::MAP}, :foo) }.should_not raise_error(TypeError)
61
+ lambda { Thrift.check_type([1], {:type => Types::MAP}, :foo) }.should raise_error(TypeError)
62
+ lambda { Thrift.check_type([1], {:type => Types::LIST}, :foo) }.should_not raise_error(TypeError)
63
+ lambda { Thrift.check_type({:foo => 1}, {:type => Types::LIST}, :foo) }.should raise_error(TypeError)
64
+ lambda { Thrift.check_type(Set.new([1,2]), {:type => Types::SET}, :foo) }.should_not raise_error(TypeError)
65
+ lambda { Thrift.check_type([1,2], {:type => Types::SET}, :foo) }.should raise_error(TypeError)
66
+ lambda { Thrift.check_type({:foo => true}, {:type => Types::SET}, :foo) }.should raise_error(TypeError)
67
+ end
68
+
69
+ it "should error out if nil is passed and skip_types is false" do
70
+ lambda { Thrift.check_type(nil, {:type => Types::BOOL}, :foo, false) }.should raise_error(TypeError)
71
+ lambda { Thrift.check_type(nil, {:type => Types::BYTE}, :foo, false) }.should raise_error(TypeError)
72
+ lambda { Thrift.check_type(nil, {:type => Types::I16}, :foo, false) }.should raise_error(TypeError)
73
+ lambda { Thrift.check_type(nil, {:type => Types::I32}, :foo, false) }.should raise_error(TypeError)
74
+ lambda { Thrift.check_type(nil, {:type => Types::I64}, :foo, false) }.should raise_error(TypeError)
75
+ lambda { Thrift.check_type(nil, {:type => Types::DOUBLE}, :foo, false) }.should raise_error(TypeError)
76
+ lambda { Thrift.check_type(nil, {:type => Types::STRING}, :foo, false) }.should raise_error(TypeError)
77
+ lambda { Thrift.check_type(nil, {:type => Types::STRUCT}, :foo, false) }.should raise_error(TypeError)
78
+ lambda { Thrift.check_type(nil, {:type => Types::LIST}, :foo, false) }.should raise_error(TypeError)
79
+ lambda { Thrift.check_type(nil, {:type => Types::SET}, :foo, false) }.should raise_error(TypeError)
80
+ lambda { Thrift.check_type(nil, {:type => Types::MAP}, :foo, false) }.should raise_error(TypeError)
81
+ end
82
+
83
+ it "should check element types on containers" do
84
+ field = {:type => Types::LIST, :element => {:type => Types::I32}}
85
+ lambda { Thrift.check_type([1, 2], field, :foo) }.should_not raise_error(TypeError)
86
+ lambda { Thrift.check_type([1, nil, 2], field, :foo) }.should raise_error(TypeError)
87
+ field = {:type => Types::MAP, :key => {:type => Types::I32}, :value => {:type => Types::STRING}}
88
+ lambda { Thrift.check_type({1 => "one", 2 => "two"}, field, :foo) }.should_not raise_error(TypeError)
89
+ lambda { Thrift.check_type({1 => "one", nil => "nil"}, field, :foo) }.should raise_error(TypeError)
90
+ lambda { Thrift.check_type({1 => nil, 2 => "two"}, field, :foo) }.should raise_error(TypeError)
91
+ field = {:type => Types::SET, :element => {:type => Types::I32}}
92
+ lambda { Thrift.check_type(Set.new([1, 2]), field, :foo) }.should_not raise_error(TypeError)
93
+ lambda { Thrift.check_type(Set.new([1, nil, 2]), field, :foo) }.should raise_error(TypeError)
94
+ lambda { Thrift.check_type(Set.new([1, 2.3, 2]), field, :foo) }.should raise_error(TypeError)
95
+
96
+ field = {:type => Types::STRUCT, :class => SpecNamespace::Hello}
97
+ lambda { Thrift.check_type(SpecNamespace::BoolStruct, field, :foo) }.should raise_error(TypeError)
98
+ end
99
+
100
+ it "should give the TypeError a readable message" do
101
+ msg = "Expected Types::STRING, received Fixnum for field foo"
102
+ lambda { Thrift.check_type(3, {:type => Types::STRING}, :foo) }.should raise_error(TypeError, msg)
103
+ msg = "Expected Types::STRING, received Fixnum for field foo.element"
104
+ field = {:type => Types::LIST, :element => {:type => Types::STRING}}
105
+ lambda { Thrift.check_type([3], field, :foo) }.should raise_error(TypeError, msg)
106
+ msg = "Expected Types::I32, received NilClass for field foo.element.key"
107
+ field = {:type => Types::LIST,
108
+ :element => {:type => Types::MAP,
109
+ :key => {:type => Types::I32},
110
+ :value => {:type => Types::I32}}}
111
+ lambda { Thrift.check_type([{nil => 3}], field, :foo) }.should raise_error(TypeError, msg)
112
+ msg = "Expected Types::I32, received NilClass for field foo.element.value"
113
+ lambda { Thrift.check_type([{1 => nil}], field, :foo) }.should raise_error(TypeError, msg)
114
+ end
115
+ end
116
+ end
@@ -0,0 +1,108 @@
1
+ #
2
+ # Licensed to the Apache Software Foundation (ASF) under one
3
+ # or more contributor license agreements. See the NOTICE file
4
+ # distributed with this work for additional information
5
+ # regarding copyright ownership. The ASF licenses this file
6
+ # to you under the Apache License, Version 2.0 (the
7
+ # "License"); you may not use this file except in compliance
8
+ # with the License. You may obtain a copy of the License at
9
+ #
10
+ # http://www.apache.org/licenses/LICENSE-2.0
11
+ #
12
+ # Unless required by applicable law or agreed to in writing,
13
+ # software distributed under the License is distributed on an
14
+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15
+ # KIND, either express or implied. See the License for the
16
+ # specific language governing permissions and limitations
17
+ # under the License.
18
+ #
19
+
20
+ require File.dirname(__FILE__) + '/spec_helper'
21
+ require File.dirname(__FILE__) + "/socket_spec_shared"
22
+
23
+ class ThriftUNIXSocketSpec < Spec::ExampleGroup
24
+ include Thrift
25
+
26
+ describe UNIXSocket do
27
+ before(:each) do
28
+ @path = '/tmp/thrift_spec_socket'
29
+ @socket = UNIXSocket.new(@path)
30
+ @handle = mock("Handle", :closed? => false)
31
+ @handle.stub!(:close)
32
+ ::UNIXSocket.stub!(:new).and_return(@handle)
33
+ end
34
+
35
+ it_should_behave_like "a socket"
36
+
37
+ it "should raise a TransportException when it cannot open a socket" do
38
+ ::UNIXSocket.should_receive(:new).and_raise(StandardError)
39
+ lambda { @socket.open }.should raise_error(Thrift::TransportException) { |e| e.type.should == Thrift::TransportException::NOT_OPEN }
40
+ end
41
+
42
+ it "should accept an optional timeout" do
43
+ ::UNIXSocket.stub!(:new)
44
+ UNIXSocket.new(@path, 5).timeout.should == 5
45
+ end
46
+ end
47
+
48
+ describe UNIXServerSocket do
49
+ before(:each) do
50
+ @path = '/tmp/thrift_spec_socket'
51
+ @socket = UNIXServerSocket.new(@path)
52
+ end
53
+
54
+ it "should create a handle when calling listen" do
55
+ UNIXServer.should_receive(:new).with(@path)
56
+ @socket.listen
57
+ end
58
+
59
+ it "should create a Thrift::UNIXSocket to wrap accepted sockets" do
60
+ handle = mock("UNIXServer")
61
+ UNIXServer.should_receive(:new).with(@path).and_return(handle)
62
+ @socket.listen
63
+ sock = mock("sock")
64
+ handle.should_receive(:accept).and_return(sock)
65
+ trans = mock("UNIXSocket")
66
+ UNIXSocket.should_receive(:new).and_return(trans)
67
+ trans.should_receive(:handle=).with(sock)
68
+ @socket.accept.should == trans
69
+ end
70
+
71
+ it "should close the handle when closed" do
72
+ handle = mock("UNIXServer", :closed? => false)
73
+ UNIXServer.should_receive(:new).with(@path).and_return(handle)
74
+ @socket.listen
75
+ handle.should_receive(:close)
76
+ File.stub!(:delete)
77
+ @socket.close
78
+ end
79
+
80
+ it "should delete the socket when closed" do
81
+ handle = mock("UNIXServer", :closed? => false)
82
+ UNIXServer.should_receive(:new).with(@path).and_return(handle)
83
+ @socket.listen
84
+ handle.stub!(:close)
85
+ File.should_receive(:delete).with(@path)
86
+ @socket.close
87
+ end
88
+
89
+ it "should return nil when accepting if there is no handle" do
90
+ @socket.accept.should be_nil
91
+ end
92
+
93
+ it "should return true for closed? when appropriate" do
94
+ handle = mock("UNIXServer", :closed? => false)
95
+ UNIXServer.stub!(:new).and_return(handle)
96
+ File.stub!(:delete)
97
+ @socket.listen
98
+ @socket.should_not be_closed
99
+ handle.stub!(:close)
100
+ @socket.close
101
+ @socket.should be_closed
102
+ @socket.listen
103
+ @socket.should_not be_closed
104
+ handle.stub!(:closed?).and_return(true)
105
+ @socket.should be_closed
106
+ end
107
+ end
108
+ end
@@ -0,0 +1,84 @@
1
+ Trollop FAQ
2
+ -----------
3
+
4
+ Q: Why is it called "Trollop"?
5
+ A: No reason.
6
+
7
+ Q: Why should I use Trollop?
8
+ A: Because it will take you FEWER LINES OF CODE to do reasonable option parsing
9
+ than any other option parser out there.
10
+
11
+ Look at this:
12
+
13
+ opts = Trollop::options do
14
+ opt :monkey, "Use monkey mode"
15
+ opt :goat, "Use goat mode", :default => true
16
+ opt :num_limbs, "Set number of limbs", :default => 4
17
+ end
18
+
19
+ That's it. And opts is a hash and you do whatever you want with it.
20
+ Trivial. You don't have to mix option processing code blocks with the
21
+ declarations. You don't have to make a class for every option (what is this,
22
+ Java?). You don't have to write more than 1 line of code per option.
23
+
24
+ Plus, you get a beautiful help screen that detects your terminal width and
25
+ wraps appropriately. C'mon, that's hot.
26
+
27
+ Q: What is the philosophy behind Trollop?
28
+ A: Must a commandline option processor have a philosophy?
29
+
30
+ Q: Seriously now. What is it?
31
+ A: Ok, it's this: Trollop *just* does the parsing and gives you a hash table
32
+ of the result. So whatever fancy logic or constraints you need, you can
33
+ implement by operating on that hash table. Options that disable other
34
+ options, fancy constraints involving multiple sets of values across multiple
35
+ sets of options, etc. are all left for you to do manually.
36
+
37
+ (Trollop does support limited constraint setting (see #conflicts and
38
+ #depends), but any non-trivial program will need to get fancier.)
39
+
40
+ The result is that using Trollop is pretty simple, and whatever bizarre
41
+ logic you want, you can write yourself. And don't forget, you can call
42
+ Trollop::die to abort the program and give a fancy options-related error
43
+ message.
44
+
45
+ Q: What happens to the other stuff on the commandline?
46
+ A: Anything Trollop doesn't recognize as an option or as an option parameter is
47
+ left in ARGV for you to process.
48
+
49
+ Q: Does Trollop support multiple-value arguments?
50
+ A: Yes. If you set the :type of an option to something plural, like ":ints",
51
+ ":strings", ":doubles", ":floats", ":ios", it will accept multiple arguments
52
+ on the commandline and the value will be an array of these.
53
+
54
+ Q: Does Trollop support arguments that can be given multiple times?
55
+ A: Yes. If you set :multi to true, then the argument can appear multiple times
56
+ on the commandline, and the value will be an array of the parameters.
57
+
58
+ Q: Does Trollop support subcommands?
59
+ A: Yes. You get subcommand support by adding a call #stop_on within the options
60
+ block, and passing the names of the subcommands to it. (See the third
61
+ example on the webpage.) When Trollop encounters one of these subcommands on
62
+ the commandline, it stops processing and returns.
63
+
64
+ ARGV at that point will contain the subcommand followed by any subcommand
65
+ options, since Trollop has contained the rest. So you can consume the
66
+ subcommand and call Trollop.options again with the particular options set
67
+ for that subcommand.
68
+
69
+ If you don't know the subcommands ahead of time, you can call
70
+ #stop_on_unknown, which will cause Trollop to stop when it encounters any
71
+ unknown token. This might be more trouble than its worth if you're also
72
+ passing filenames on the commandline.
73
+
74
+ It's probably easier to see the example on the webpage than to read all
75
+ that.
76
+
77
+ Q: Why does Trollop disallow numeric short argument names, like '-1' and '-9'?
78
+ A: Because it's ambiguous whether these are arguments or negative integer or
79
+ floating-point parameters to arguments. E.g., what about "-f -3". Is that a
80
+ negative three parameter to -f, or two separate parameters?
81
+
82
+ I could be very clever and detect when there are no arguments that require
83
+ floating-point parameters, and allow such short option names in those cases,
84
+ but opted for simplicity and consistency.
@@ -0,0 +1,101 @@
1
+ == 1.14 / 2009-06-19
2
+ * Make :multi arguments default to [], not nil, when not set on the commandline.
3
+ * Minor commenting and error message improvements
4
+
5
+ == 1.13 / 2009-03-16
6
+ * Fix parsing of "--longarg=<value with spaces>".
7
+
8
+ == 1.12 / 2009-01-30
9
+ * Fix some unit test failures in the last release. Should be more careful.
10
+ * Make default short options only be assigned *after* all user-specified
11
+ short options. Now there's a little less juggling to do when you just
12
+ want to specify a few short options.
13
+
14
+ == 1.11 / 2009-01-29
15
+ * Set <opt>_given keys in the results hash for options that were specified
16
+ on the commandline.
17
+
18
+ == 1.10.2 / 2008-10-23
19
+ * No longer try `stty size` for screen size detection. Just use curses, and
20
+ screen users will have to deal with the screen clearing.
21
+
22
+ == 1.10.1 / 2008-10-22
23
+ * Options hash now responds to method calls as well as standard hash lookup.
24
+ * Default values for multi-occurrence parameters now autoboxed.
25
+ * The relationship between multi-value, multi-occurrence, and default values
26
+ improved and explained.
27
+ * Documentation improvements.
28
+
29
+ == 1.10 / 2008-10-21
30
+ * Added :io type for parameters that point to IO streams (filenames, URIs, etc).
31
+ * For screen size detection, first try `stty size` before loading Curses.
32
+ * Improved documentation.
33
+
34
+ == 1.9 / 2008-08-20
35
+ * Added 'stop_on_unknown' command to stop parsing on any unknown argument.
36
+ This is useful for handling sub-commands when you don't know the entire
37
+ set of commands up front. (E.g. if the initial arguments can change it.)
38
+ * Added a :multi option for parameters, signifying that they can be specified
39
+ multiple times.
40
+ * Added :ints, :strings, :doubles, and :floats option types, which can take
41
+ multiple arguments.
42
+
43
+ == 1.8.2 / 2008-06-25
44
+ * Bugfix for #conflicts and #depends error messages
45
+
46
+ == 1.8.1 / 2008-06-24
47
+ * Bugfix for short option autocreation
48
+ * More aggressive documentation
49
+
50
+ == 1.8 / 2008-06-16
51
+ * Sub-command support via Parser#stop_on
52
+
53
+ == 1.7.2 / 2008-01-16
54
+ * Ruby 1.9-ify. Apparently this means replacing :'s with ;'s.
55
+
56
+ == 1.7.1 / 2008-01-07
57
+ * Documentation improvements
58
+
59
+ == 1.7 / 2007-06-17
60
+ * Fix incorrect error message for multiple missing required arguments
61
+ (thanks to Neill Zero)
62
+
63
+ == 1.6 / 2007-04-01
64
+ * Don't attempt curses screen-width magic unless running on a terminal.
65
+
66
+ == 1.5 / 2007-03-31
67
+ * --help and --version do the right thing even if the rest of the
68
+ command line is incorrect.
69
+ * Added #conflicts and #depends to model dependencies and exclusivity
70
+ between arguments.
71
+ * Minor bugfixes.
72
+
73
+ == 1.4 / 2007-03-26
74
+ * Disable short options with :short => :none.
75
+ * Minor bugfixes and error message improvements.
76
+
77
+ == 1.3 / 2007-01-31
78
+ * Wrap at (screen width - 1) instead of screen width.
79
+ * User can override --help and --version.
80
+ * Bugfix in handling of -v and -h.
81
+ * More tests to confirm the above.
82
+
83
+ == 1.2 / 2007-01-31
84
+ * Minor documentation tweaks.
85
+ * Removed hoe dependency.
86
+
87
+ == 1.1 / 2007-01-30
88
+ * Trollop::options now passes any arguments as block arguments. Since
89
+ instance variables are not properly captured by the block, this
90
+ makes it slightly less noisy to pass them in as local variables.
91
+ (A real-life use for _why's cloaker!)
92
+ * Help display now preserves original argument order.
93
+ * Trollop::die now also has a single string form in case death is not
94
+ due to a single argument.
95
+ * Parser#text now an alias for Parser#banner, and can be called
96
+ multiple times, with the output being placed in the right position
97
+ in the help text.
98
+ * Slightly more indicative formatting for parameterized arguments.
99
+
100
+ == 1.0 / 2007-01-29
101
+ * Initial release.
@@ -0,0 +1,7 @@
1
+ FAQ.txt
2
+ History.txt
3
+ Manifest.txt
4
+ README.txt
5
+ Rakefile
6
+ lib/trollop.rb
7
+ test/test_trollop.rb