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,31 @@
1
+ module PoolParty
2
+ module Pinger
3
+ module ClassMethods
4
+ # Test to see if the host has the available port open
5
+ # for response.
6
+ def ping_port(host, port=22, retry_times=400)
7
+ connected = false
8
+ retry_times.times do |i|
9
+ begin
10
+ break if connected = TCPSocket.new(host, port).is_a?(TCPSocket)
11
+ rescue Exception => e
12
+ sleep(2)
13
+ end
14
+ end
15
+ connected
16
+ end
17
+ end
18
+
19
+ module InstanceMethods
20
+ def ping_port(ip, port=22, retry_times=500);self.class.ping_port(ip, port, retry_times);end
21
+ def ping_port_and(ip, port=22, retry_times=500, &block)
22
+ block.call if ping_port(ip, port, retry_times) && block
23
+ end
24
+ end
25
+
26
+ def self.included(receiver)
27
+ receiver.extend ClassMethods
28
+ receiver.send :include, InstanceMethods
29
+ end
30
+ end
31
+ end
@@ -0,0 +1,35 @@
1
+ =begin rdoc
2
+ Binaries helper moduel
3
+ =end
4
+ module Printing
5
+ # print_msg
6
+ # Params
7
+ # msg_array - Array of strings
8
+ # Usage:
9
+ # msg = ["hello", "world"]
10
+ # print_msg(msg)
11
+ def print_msg(msg_array)
12
+ arr = msg_array.map {|line| Colors.process(line) }
13
+ max_size = arr.sort {|a,b| a.size <=> b.size }.last.size
14
+ arr.each do |line|
15
+ puts line.ljust(max_size)
16
+ end
17
+ Colors.reset!
18
+ end
19
+
20
+ # Ask for response
21
+ def are_you_sure?(msg)
22
+ puts msg
23
+ resp = STDIN.gets.chomp
24
+
25
+ case resp
26
+ when "Y"
27
+ when "yes"
28
+ when "y"
29
+ return true
30
+ else
31
+ return false
32
+ end
33
+ end
34
+
35
+ end
@@ -0,0 +1,87 @@
1
+ =begin rdoc
2
+ Abstracts out the searchable path for a resource such as a
3
+ template file, key, or clouds.rb
4
+
5
+ NOTE: this is currently _only_ implemented on templates
6
+ (PoolParty::Resources::File) and not yet working on clouds.rb or key files.
7
+ These will eventually be refactored to use this class.
8
+ =end
9
+
10
+ module SearchablePaths
11
+ def self.included(mod)
12
+ mod.extend(ClassMethods)
13
+ end
14
+
15
+ module ClassMethods
16
+ # Specify that a particular class has methods for searchable paths.
17
+ #
18
+ # Options:
19
+ # * <tt>:dirs</tt>: array of directories to look in *under* the search paths. (default: <tt>["/"]</tt>)
20
+ # * <tt>:dir</tt>: set the directory to look in *under* the search paths. Use either dir or dirs, not both. (default: +/+)
21
+ # * <tt>:paths</tt>: overwrite all default paths and set the paths to this array exactly
22
+ # * <tt>:append_paths</tt>: append these paths to any existing paths
23
+ # * <tt>:prepend_paths</tt>: prepend these paths to any existing paths
24
+ def has_searchable_paths(opts={})
25
+ class_eval do
26
+ @searchable_paths_dirs = [opts[:dir]] if opts[:dir]
27
+ @searchable_paths_dirs = opts[:dirs] if opts[:dirs]
28
+ @paths_override = opts[:paths] if opts[:paths]
29
+ @paths_prepend = opts[:prepend_paths] || []
30
+ @paths_append = opts[:append_paths] || []
31
+ end
32
+ extend SearchablePaths::SingletonMethods
33
+ include SearchablePaths::InstanceMethods
34
+ end
35
+
36
+ def searchable_paths_dir; @searchable_paths_dirs.first; end
37
+ def searchable_paths_dirs
38
+ @searchable_paths_dirs && @searchable_paths_dirs.size > 0 ? @searchable_paths_dirs : ["/"]
39
+ end
40
+
41
+ # These are the default search paths in order:
42
+ #
43
+ # * current working directory (Dir.pwd)
44
+ def default_paths
45
+ [
46
+ Dir.pwd
47
+ ]
48
+ end
49
+
50
+ # returns the full set of valid searchable paths, given the options
51
+ def searchable_paths
52
+ return @paths_override if @paths_override && @paths_override.size > 0
53
+ @searchable_paths ||= @paths_prepend + default_paths + @paths_append
54
+ end
55
+ end
56
+
57
+ module SingletonMethods
58
+ end
59
+
60
+ module InstanceMethods
61
+
62
+ # Searches for +filepath+ in the <tt>searchable_paths</tt> iff +filepath+
63
+ # doesn't exist. e.g. +filepath+ is interpreted *first* as an absolute
64
+ # path, if +filepath+ doesn't exist verbatim then it looks for the file
65
+ # in the searchable_paths.
66
+ #
67
+ # Returns +nil+ if the file cannot be found.
68
+ def search_in_known_locations(filepath, additional_search_paths=[])
69
+ return filepath if File.exists?(filepath) # return the file if its an absolute path
70
+ additional_search_paths.each do |path|
71
+ full_path = File.expand_path(path / filepath)
72
+ return full_path if File.exists?(full_path)
73
+ end
74
+ self.class.searchable_paths.each do |path|
75
+ self.class.searchable_paths_dirs.each do |dir|
76
+ next if path.nil?
77
+ full_path = File.expand_path(path / dir / filepath)
78
+ return full_path if File.exists?(full_path)
79
+ end
80
+ end
81
+ nil
82
+ end
83
+ alias_method :find_file, :search_in_known_locations
84
+
85
+ end
86
+
87
+ end
@@ -0,0 +1,232 @@
1
+ =begin rdoc
2
+ Base class for all PoolParty objects
3
+ =end
4
+ module PoolParty
5
+
6
+ # Global storage for the current context_stack
7
+ def context_stack
8
+ $context_stack ||= []
9
+ end
10
+
11
+ class Base
12
+ attr_reader :init_opts, :base_name
13
+
14
+ include Parenting, Dslify
15
+ include SearchablePaths
16
+ include Callbacks
17
+ include Delayed
18
+
19
+ default_options Default.default_options
20
+
21
+ def initialize(opts={}, extra_opts={}, &block)
22
+ @init_block = block
23
+ @init_opts = compile_opts(opts, extra_opts)
24
+
25
+ run_with_callbacks(init_opts, &block)
26
+ @base_name = self.name
27
+ end
28
+
29
+ # Overloading the parent run_in_context
30
+ # First, push ourself to the stack
31
+ # then set all the variables given with the init
32
+ # and then eval the block and pop ourselves off the stack
33
+ # During runtime, the stack looks like
34
+ #
35
+ # - self
36
+ # - instance_eval block
37
+ # - stack
38
+ def run_in_context(o={}, &block)
39
+ proc = Proc.new do
40
+ set_vars_from_options(o)
41
+ instance_eval &block if block
42
+ end
43
+ super(&proc)
44
+ end
45
+
46
+ # Run the block in the context of self
47
+ # and call the block after calling
48
+ # before_load
49
+ # and afterwards calling
50
+ # after_loaded
51
+ def run_with_callbacks(o, &block)
52
+ run_in_context(o) do
53
+ callback :before_load, o, &block
54
+ instance_eval &block if block
55
+ callback :after_loaded, o, &block
56
+ end
57
+ end
58
+
59
+ # Base callbacks for run_with_callbacks
60
+ # before_load
61
+ # This is called before the block is yielded
62
+ def before_load(o={}, &block)
63
+ end
64
+
65
+ # after_loaded
66
+ # This is run immediately after the block given
67
+ # on init is yielded
68
+ def after_loaded(o={}, &block)
69
+ end
70
+
71
+ # Try to extract the name from the options
72
+ # Either the first parameter is a string or it is a hash
73
+ # if it is a hash, just merge the two hashes
74
+ # If it is a string, then merge it in as the name of the
75
+ # instance on the hash
76
+ def compile_opts(o={}, extra={})
77
+ case o
78
+ when Symbol, String
79
+ extra.merge(:name => o.to_s)
80
+ when NilClass
81
+ extra
82
+ else
83
+ extra.merge(o)
84
+ end
85
+ end
86
+
87
+ # Validation checks
88
+ # if all of the validations pass, the object is considered valid
89
+ # the validations are responsible for raising a PoolPartyError (StandardError)
90
+ def valid?
91
+ validations.each {|validation| self.send(validation.to_sym) }
92
+ end
93
+
94
+ # The array of validations that the instances must pass
95
+ # to be considered valid. These must be methods available on the instance
96
+ def validations
97
+ []
98
+ end
99
+
100
+ # Ordered resources
101
+ # are the resources associated with this base
102
+
103
+ # Resources are all the resources attached to this resource
104
+ def resources
105
+ @resources ||= []
106
+ end
107
+
108
+ # Order the resources_graph using a top-sort iterator
109
+ def ordered_resources
110
+ resources_graph.topsort.to_a
111
+ end
112
+
113
+ # Get a resource, based on it's type
114
+ # Used for INTERNAL use
115
+ def get_resource(ty, nm)
116
+ o = self.send "#{ty}s".to_sym
117
+ o.detect {|r| r.name == nm }
118
+ end
119
+
120
+ def to_s
121
+ "#{self.respond_to?(:has_method_name) ? self.has_method_name : self.class.to_s.top_level_class}:#{name}"
122
+ end
123
+
124
+ # Create a directed adjacency graph of each of the dependencies
125
+ # Add all the resources in order and their resources as well
126
+ # and then create the graph from the rest of the resources
127
+ # to create edges on the graph
128
+ def resources_graph(force=false)
129
+ return @resources_graph if @resources_graph && !force
130
+ result = Digraph.new
131
+
132
+ add_ordered_resources_to_result(resources, result)
133
+
134
+ create_graph(resources, nil, result)
135
+
136
+ @resources_graph = result
137
+ end
138
+
139
+ # Add all the resources as edges of each other
140
+ def add_ordered_resources_to_result(resources, result)
141
+ arr_of_resources = resources.zip_offset(1)
142
+
143
+ arr_of_resources.each do |first, second|
144
+ result.add_edge!(first, second)
145
+ add_ordered_resources_to_result(first.resources, result)
146
+ end
147
+ end
148
+
149
+ # Create the graph of resources. Blow up if a resource isn't found
150
+ # that is required. If it is found, add it as an edge to the
151
+ # dependency graph
152
+ def create_graph(resources, on, result)
153
+ resources.each_with_index do |resource, idx|
154
+
155
+ resource.dependencies.each do |dep_type, deps_array|
156
+ deps_array.each do |dep_name|
157
+ dep = get_resource(dep_type, dep_name)
158
+ raise PoolPartyError.create("ResourceNotFound", "A resource required for #{resource.has_method_name}(#{resource.name}) was not found: #{dep_type}(#{dep_name}). Please make sure you've specified this in your configuration.") unless dep
159
+ result.add_edge!(dep, resource, dep.name) unless result.edge?(dep, resource)
160
+ end
161
+ end
162
+
163
+ if on
164
+ result.add_edge!(resource, on, resource.name) unless result.edge?(resource, on)
165
+ else
166
+ result.add_vertex!(resource)
167
+ end
168
+
169
+ create_graph(resource.resources, resource, result)
170
+ end
171
+ end
172
+
173
+ # All the dependencies that are required by this resource
174
+ # This is a hash of the dependencies required by the resource
175
+ def dependencies
176
+ @dependencies ||= {}
177
+ end
178
+
179
+ def all_resources
180
+ resources.map do |res|
181
+ [res, res.all_resources ]
182
+ end.flatten
183
+ end
184
+
185
+ # Write the cloud dependency graph
186
+ def output_resources_graph(fmt='png', dotfile=name, params={})
187
+ p = {
188
+ 'bgcolor' => 'white',
189
+ 'label' => "#{name}",
190
+ 'pad' => '0.5',
191
+ 'rankdir' => 'LR',
192
+ 'overlap' => 'false',
193
+ 'node_params' => {
194
+ 'color' => '"#111111"',
195
+ 'style' => "rounded"
196
+ }
197
+ }.merge(params)
198
+ resources_graph.write_to_graphic_file(fmt, dotfile, p)
199
+ end
200
+
201
+ # The clouds.rb file
202
+ def clouds_dot_rb_file(n=nil); self.class.clouds_dot_rb_file(n); end
203
+ def self.clouds_dot_rb_file(n=nil)
204
+ Pool.clouds_dot_rb_file(n)
205
+ end
206
+
207
+ # If the method is missing from ourself, check the Default
208
+ # class for the corresponding method.
209
+ # If the Default class has the method, inquire from the Default
210
+ # class, otherwise, call super
211
+ def method_missing(m,*a,&block)
212
+ if Default.respond_to?(m)
213
+ Default.send(m,*a,&block)
214
+ else
215
+ super
216
+ end
217
+ end
218
+
219
+ def has_searchable_paths(opts={})
220
+ default_searchable_paths = [
221
+ Dir.pwd,
222
+ PoolParty::Default.poolparty_home_path,
223
+ PoolParty::Default.poolparty_src_path,
224
+ PoolParty::Default.poolparty_src_path/:lib/:poolparty,
225
+ PoolParty::Default.base_config_directory,
226
+ PoolParty::Default.remote_storage_path
227
+ ]
228
+ super(opts.merge(:paths => (opts.delete(:paths) || default_searchable_paths)))
229
+ end
230
+
231
+ end
232
+ end
@@ -0,0 +1,246 @@
1
+ module PoolParty
2
+ class Cloud < DslBase
3
+ has_searchable_paths
4
+
5
+ # Options we want on the output of the compiled script
6
+ # but want to take the options from the parent if they
7
+ # are nil on the cloud
8
+ default_options(
9
+ :minimum_instances => 2, # minimum_instances default
10
+ :maximum_instances => 5, # maximum_instances default
11
+ :minimum_runtime => 3600, # minimum_instances default: 1 hour
12
+ :contract_when => nil,
13
+ :expand_when => nil,
14
+ :cloud_provider_name => :ec2,
15
+ :dependency_resolver_name => nil,
16
+ :os => nil,
17
+ :bootstrap_script => nil
18
+ )
19
+
20
+ # Define what gets run on the callbacks
21
+ # This is where we can specify what gets called
22
+ # on callbacks
23
+ # parameters: cld, time
24
+ # cld - the cloud the callback came from
25
+ # callback - the callback called (i.e. :after_provision)
26
+ callback_block do |cld, callback|
27
+ end
28
+
29
+ # Freeze the cloud_name so we can't modify it at all, set the plugin_directory
30
+ # call and run instance_eval on the block and then call the after_create callback
31
+ def initialize(n, o={}, &block)
32
+ @cloud_name = n
33
+ @cloud_name.freeze
34
+
35
+ # @init_block = block
36
+ @init_opts = compile_opts(o)
37
+
38
+ @init_block = Proc.new do
39
+ super(n,o,&block)
40
+ end
41
+
42
+ end
43
+
44
+ # returns an instance of Keypair
45
+ # You can pass either a filename which will be searched for in ~/.ec2/ and ~/.ssh/
46
+ # Or you can pass a full filepath
47
+ def keypair(n=nil)
48
+ @keypair ||= Keypair.new(n)
49
+ end
50
+
51
+ # Declare the CloudProvider for a cloud
52
+ # Create an instance of the cloud provider this cloud is using
53
+ def using(provider_symbol, o={}, &block)
54
+ return @cloud_provider if @cloud_provider
55
+ self.cloud_provider_name = provider_symbol
56
+ cloud_provider(o, &block)
57
+ end
58
+
59
+ # Cloud provider methods
60
+ def nodes(o={}); delayed_action {cloud_provider.nodes(o)}; end
61
+ def run_instance(o={}); cloud_provider.run_instance(o);end
62
+ def terminate_instance!(o={}); cloud_provider.terminate_instance!(o);end
63
+ def describe_instances(o={}); cloud_provider.describe_instances(o);end
64
+ def describe_instance(o={}); cloud_provider.describe_instance(o);end
65
+
66
+ # Terminate all instances in the cloud
67
+ def terminate!
68
+ nodes.collect{|n| n.terminate! }
69
+ end
70
+
71
+ # The actual cloud_provider instance
72
+ def cloud_provider(opts={}, &block)
73
+ return @cloud_provider if @cloud_provider
74
+ klass_name = "CloudProviders::#{cloud_provider_name}".classify
75
+ if provider_klass = CloudProviders.all.detect {|k| k.to_s == klass_name }
76
+ opts.merge!(:cloud => self, :keypair_name => self.keypair.basename)
77
+ @cloud_provider = provider_klass.new(dsl_options.merge(opts), &block)
78
+ else
79
+ raise PoolParty::PoolPartyError.create("UnknownCloudProviderError", "Unknown cloud_provider: #{cloud_provider_name}")
80
+ end
81
+ @cloud_provider
82
+ end
83
+
84
+ # 1.) Launches a new instance,
85
+ # 2.) Waits for the instance to get an ip address
86
+ # 3.) Waits for port 22 to be open
87
+ # 4.) Calls call_after_launch_instance callbacks
88
+ # 5.) Executes passed &block, if any
89
+ # 6.) Returns the new instance object
90
+ def expand(opts={}, &block)
91
+ timeout = opts.delete(:timeout) || 300
92
+ callback :before_launch_instance
93
+ instance = cloud_provider.run_instance(opts)
94
+ instance.cloud = self
95
+ @instance = instance
96
+ #wait for an ip and then wait for ssh port, then configure instance
97
+ if instance.wait_for_public_ip(timeout) && instance.wait_for_port(22, :timeout=>timeout)
98
+ callback :after_launch_instance
99
+ instance.callback :before_bootstrap
100
+ instance.bootstrap!
101
+ instance.callback :after_bootstrap
102
+ instance.callback :before_configure
103
+ instance.configure!
104
+ instance.callback :after_configure
105
+ block.call(instance) if block
106
+ instance
107
+ else
108
+ raise StandardError.new("Instance port 22 not available")
109
+ end
110
+ instance.refresh!
111
+ instance
112
+ end
113
+
114
+ # Contract the cloud
115
+ def contract!(hsh={})
116
+ inst=nodes(hsh).last
117
+ inst.callback :before_terminate
118
+ inst.terminate!
119
+ inst.callback :after_terminate
120
+ inst
121
+ end
122
+
123
+ # convenience method to loop thru all the nodes and configure them
124
+ def configure!(opts={}, threaded=true)
125
+ nodes.collect{|n| n.configure!}
126
+ end
127
+
128
+ # Run command/s on all nodes in the cloud.
129
+ # Returns a hash of instance_id=>result pairs
130
+ def run(commands, opts={})
131
+ results = {}
132
+ threads = nodes.collect do |n|
133
+ Thread.new{ results[n.name] = n.run(commands, opts) }
134
+ end
135
+ threads.each{ |aThread| aThread.join }
136
+ results
137
+ # Serial implementation #
138
+ # nodes.inject({})do |results, n|
139
+ # results[n.instance_id] = n.run(commands, opts)
140
+ # results
141
+ # end
142
+ end
143
+
144
+ # Temporary path
145
+ # Starts at the global default tmp path and appends the pool name
146
+ # and the cloud name
147
+ def tmp_path
148
+ Default.tmp_path / pool.name / name
149
+ end
150
+
151
+ # The pool this cloud belongs to
152
+ def pool
153
+ parent
154
+ end
155
+
156
+ # compile
157
+
158
+ # Resolve with the dependency resolver
159
+ def resolve_with(a)
160
+ if DependencyResolvers.const_defined?(a.classify)
161
+ dependency_resolver DependencyResolvers.module_eval("#{a.classify}")
162
+ else
163
+ raise PoolParty::PoolPartyError.create("DependencyResolverError", "Undefined dependency resolver: #{a}. Please specify one of the following: #{DependencyResolvers.all.join(", ")}")
164
+ end
165
+ end
166
+
167
+ # Set the dependency resolver
168
+ def dependency_resolver(sym=nil)
169
+ @dependency_resolver ||= case sym
170
+ when :chef, nil
171
+ dsl_options[:dependency_resolver_name] = :chef
172
+ DependencyResolvers::Chef
173
+ end
174
+ end
175
+
176
+ # Take the cloud's resources and compile them down using
177
+ # the defined (or the default dependency_resolver, chef)
178
+ def compile(caller=nil)
179
+ FileUtils.mkdir_p tmp_path unless File.directory?(tmp_path)
180
+ ddputs("Compiling cloud #{self.name} to #{tmp_path/"etc"/"#{dependency_resolver_name}"}")
181
+ dependency_resolver.compile_to(ordered_resources, tmp_path/"etc"/"#{dependency_resolver_name}", caller)
182
+ end
183
+
184
+ # Get the os of the first node if it was not explicity defined, we'll assume they are
185
+ # all homogenous
186
+ def os(sym=nil)
187
+ if sym
188
+ dsl_options[:os] = sym
189
+ else
190
+ nodes.size > 0 ? nodes.first.os : dsl_options[:os]
191
+ end
192
+ end
193
+ alias :platform :os
194
+
195
+ # The public_ip of the cloud is equivalent to the public_ip
196
+ # of the cloud's oldest node
197
+ def public_ip
198
+ nodes.first.public_ip
199
+ end
200
+
201
+ ### MONITORS ###
202
+ # Create a new monitor on the cloud
203
+ # == Usage
204
+ # monitor :cpu do |v|
205
+ # vote_for(:expand) if v > 0.8
206
+ # end
207
+ def monitor(monitor_symbol, &block)
208
+ monitors[monitor_symbol] ||= PoolParty::Monitor.new(monitor_symbol, &block)
209
+ end
210
+
211
+ # Run the monitor logic
212
+ def run_monitor(monitor_name, value)
213
+ mon = monitors[monitor_name.to_sym]
214
+ if mon
215
+ mon.run(value.to_f)
216
+ else
217
+ "unhandled monitor"
218
+ end
219
+ end
220
+
221
+ # Store the monitors in an array
222
+ def monitors
223
+ @monitors ||= {}
224
+ end
225
+
226
+ ##### Internal methods #####
227
+ # Methods that only the cloud itself will use
228
+ # and thus are private
229
+
230
+ # Form the cloud
231
+ # Run the init block with the init_opts
232
+ # on the cloud
233
+ # This is run after the cloud.rb file has been consumed
234
+ def form_clouds
235
+ run_with_callbacks(@init_opts, &@init_block)
236
+ loaded!
237
+ end
238
+
239
+ def after_all_loaded
240
+ run_after_loaded do |b|
241
+ run_in_context(&b)
242
+ end
243
+ end
244
+
245
+ end
246
+ end
@@ -0,0 +1,32 @@
1
+ =begin rdoc
2
+ Default class
3
+
4
+ Hangs on and defines defaults for PoolParty
5
+ =end
6
+
7
+ module PoolParty
8
+ class Default
9
+ include Dslify
10
+
11
+ default_options(
12
+ :user => "root",
13
+ :os => :ubuntu,
14
+ :tmp_path => "/tmp/poolparty",
15
+ :poolparty_home_path => "#{ENV["HOME"]}/.poolparty",
16
+ :ec2_home => "#{ENV["HOME"]}/.ec2",
17
+ :poolparty_src_path => File.expand_path("#{::File.dirname(__FILE__)}/../../"),
18
+ :base_config_directory => "/etc/poolparty",
19
+ :remote_storage_path => "/var/poolparty",
20
+ :poolparty_log_path => "#{File.dirname(__FILE__)}/log/poolparty.log",
21
+ :verbose => false,
22
+ :debug => false,
23
+ :very_debugging => false
24
+ )
25
+
26
+ # Method missing
27
+ def self.method_missing(m,*a,&block)
28
+ dsl_options.include?(m) ? dsl_options[m] : super
29
+ end
30
+
31
+ end
32
+ end
@@ -0,0 +1,36 @@
1
+ =begin rdoc
2
+ Dsl Base class for all cloud dsl methods
3
+
4
+ Pool and Cloud both are taken from the DslBase so that both
5
+ carry the same dsl. The methods that apply to either/or
6
+ are defined in the respective classes
7
+ =end
8
+
9
+ module PoolParty
10
+ class DslBase < Base
11
+
12
+ default_options(
13
+ :minimum_instances => 2,
14
+ :maximum_instances => 5
15
+ )
16
+
17
+ # Set instances with a range or a number
18
+ # if passed with a hash, call nodes(hash) to return filtered list of
19
+ # instances
20
+ def instances(arg)
21
+ case arg
22
+ when Range
23
+ minimum_instances arg.first
24
+ maximum_instances arg.last
25
+ when Fixnum
26
+ minimum_instances arg
27
+ maximum_instances arg
28
+ when Hash
29
+ nodes(arg)
30
+ else
31
+ raise PoolParty::PoolPartyError.create("DslMethodCall", "You must call instances with either a number, a range or a hash (for a list of nodes)")
32
+ end
33
+ end
34
+
35
+ end
36
+ end