nogara-rubber 1.7.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (389) hide show
  1. data/CHANGELOG +448 -0
  2. data/COPYING +339 -0
  3. data/README +6 -0
  4. data/TODO +11 -0
  5. data/VERSION +1 -0
  6. data/bin/vulcanize +25 -0
  7. data/generators/vulcanize/USAGE +6 -0
  8. data/generators/vulcanize/templates/apache/config/rubber/deploy-apache.rb +51 -0
  9. data/generators/vulcanize/templates/apache/config/rubber/role/apache/deflate.conf +10 -0
  10. data/generators/vulcanize/templates/apache/config/rubber/role/apache/expires.conf +9 -0
  11. data/generators/vulcanize/templates/apache/config/rubber/role/apache/headers.conf +6 -0
  12. data/generators/vulcanize/templates/apache/config/rubber/role/apache/monit-apache.conf +8 -0
  13. data/generators/vulcanize/templates/apache/config/rubber/role/apache/ports.conf +8 -0
  14. data/generators/vulcanize/templates/apache/config/rubber/role/apache/setenvif.conf +52 -0
  15. data/generators/vulcanize/templates/apache/config/rubber/role/web_tools/tools-apache-vhost.conf +79 -0
  16. data/generators/vulcanize/templates/apache/config/rubber/role/web_tools/tools-apache.auth +7 -0
  17. data/generators/vulcanize/templates/apache/config/rubber/role/web_tools/tools-index.html +34 -0
  18. data/generators/vulcanize/templates/apache/config/rubber/rubber-apache.yml +6 -0
  19. data/generators/vulcanize/templates/apache/templates.yml +1 -0
  20. data/generators/vulcanize/templates/base/Capfile +14 -0
  21. data/generators/vulcanize/templates/base/Rakefile +23 -0
  22. data/generators/vulcanize/templates/base/config/deploy.rb +56 -0
  23. data/generators/vulcanize/templates/base/config/rubber/common/crontab +22 -0
  24. data/generators/vulcanize/templates/base/config/rubber/common/monit-postfix.conf +8 -0
  25. data/generators/vulcanize/templates/base/config/rubber/common/rubber.profile +13 -0
  26. data/generators/vulcanize/templates/base/config/rubber/deploy-setup.rb +92 -0
  27. data/generators/vulcanize/templates/base/config/rubber/deploy-util.rb +97 -0
  28. data/generators/vulcanize/templates/base/config/rubber/rubber-dns.yml +78 -0
  29. data/generators/vulcanize/templates/base/config/rubber/rubber-rvm.yml +33 -0
  30. data/generators/vulcanize/templates/base/config/rubber/rubber.yml +233 -0
  31. data/generators/vulcanize/templates/base/lib/tasks/rubber.rake +15 -0
  32. data/generators/vulcanize/templates/base/script/cron-rake +18 -0
  33. data/generators/vulcanize/templates/base/script/cron-runner +18 -0
  34. data/generators/vulcanize/templates/base/script/cron-sh +67 -0
  35. data/generators/vulcanize/templates/base/templates.rb +11 -0
  36. data/generators/vulcanize/templates/base/templates.yml +6 -0
  37. data/generators/vulcanize/templates/cassandra/config/rubber/deploy-cassandra.rb +88 -0
  38. data/generators/vulcanize/templates/cassandra/config/rubber/role/cassandra/cassandra.in.sh +60 -0
  39. data/generators/vulcanize/templates/cassandra/config/rubber/role/cassandra/cassandra.yaml +210 -0
  40. data/generators/vulcanize/templates/cassandra/config/rubber/role/cassandra/log4j-server.properties +45 -0
  41. data/generators/vulcanize/templates/cassandra/config/rubber/role/cassandra/monit-cassandra.conf +8 -0
  42. data/generators/vulcanize/templates/cassandra/config/rubber/rubber-cassandra.yml +18 -0
  43. data/generators/vulcanize/templates/cassandra/templates.yml +1 -0
  44. data/generators/vulcanize/templates/complete_mongrel_mysql/config/rubber/role/haproxy/haproxy-mongrel.conf +23 -0
  45. data/generators/vulcanize/templates/complete_mongrel_mysql/config/rubber/role/nginx/nginx-mongrel.conf +113 -0
  46. data/generators/vulcanize/templates/complete_mongrel_mysql/config/rubber/rubber-complete.yml +41 -0
  47. data/generators/vulcanize/templates/complete_mongrel_mysql/templates.yml +6 -0
  48. data/generators/vulcanize/templates/complete_passenger/config/rubber/role/haproxy/haproxy-passenger.conf +21 -0
  49. data/generators/vulcanize/templates/complete_passenger/config/rubber/rubber-complete.yml +40 -0
  50. data/generators/vulcanize/templates/complete_passenger/templates.rb +9 -0
  51. data/generators/vulcanize/templates/complete_passenger/templates.yml +9 -0
  52. data/generators/vulcanize/templates/complete_passenger_mysql/templates.yml +4 -0
  53. data/generators/vulcanize/templates/complete_passenger_postgresql/templates.yml +4 -0
  54. data/generators/vulcanize/templates/cruise/config/rubber/deploy-cruise.rb +72 -0
  55. data/generators/vulcanize/templates/cruise/config/rubber/role/cruise/cruise +40 -0
  56. data/generators/vulcanize/templates/cruise/config/rubber/role/cruise/my.cnf +165 -0
  57. data/generators/vulcanize/templates/cruise/config/rubber/role/cruise/production.rb +8 -0
  58. data/generators/vulcanize/templates/cruise/config/rubber/role/cruise/site_config.rb +76 -0
  59. data/generators/vulcanize/templates/cruise/config/rubber/role/web_tools/cruise-nginx.conf +11 -0
  60. data/generators/vulcanize/templates/cruise/config/rubber/rubber-cruise.yml +18 -0
  61. data/generators/vulcanize/templates/cruise/templates.yml +1 -0
  62. data/generators/vulcanize/templates/haproxy/config/rubber/deploy-haproxy.rb +45 -0
  63. data/generators/vulcanize/templates/haproxy/config/rubber/role/haproxy/haproxy-base.conf +26 -0
  64. data/generators/vulcanize/templates/haproxy/config/rubber/role/haproxy/haproxy-default.conf +8 -0
  65. data/generators/vulcanize/templates/haproxy/config/rubber/role/haproxy/monit-haproxy.conf +9 -0
  66. data/generators/vulcanize/templates/haproxy/config/rubber/role/haproxy/syslog-haproxy.conf +11 -0
  67. data/generators/vulcanize/templates/haproxy/config/rubber/role/haproxy/syslogd-default.conf +21 -0
  68. data/generators/vulcanize/templates/haproxy/config/rubber/role/web_tools/haproxy-nginx.conf +10 -0
  69. data/generators/vulcanize/templates/haproxy/config/rubber/rubber-haproxy.yml +7 -0
  70. data/generators/vulcanize/templates/haproxy/templates.yml +1 -0
  71. data/generators/vulcanize/templates/jetty/config/rubber/deploy-jetty.rb +59 -0
  72. data/generators/vulcanize/templates/jetty/config/rubber/role/jetty/jetty.sh +589 -0
  73. data/generators/vulcanize/templates/jetty/config/rubber/role/jetty/jetty.xml +199 -0
  74. data/generators/vulcanize/templates/jetty/config/rubber/role/jetty/monit-jetty.conf +9 -0
  75. data/generators/vulcanize/templates/jetty/config/rubber/rubber-jetty.yml +10 -0
  76. data/generators/vulcanize/templates/jetty/templates.yml +1 -0
  77. data/generators/vulcanize/templates/memcached/config/memcached.yml +28 -0
  78. data/generators/vulcanize/templates/memcached/config/rubber/common/memcached.yml +14 -0
  79. data/generators/vulcanize/templates/memcached/config/rubber/role/memcached/memcached.conf +52 -0
  80. data/generators/vulcanize/templates/memcached/config/rubber/role/memcached/memcached_munin_plugin +249 -0
  81. data/generators/vulcanize/templates/memcached/config/rubber/rubber-memcached.yml +7 -0
  82. data/generators/vulcanize/templates/memcached/templates.yml +1 -0
  83. data/generators/vulcanize/templates/minimal_mysql/templates.yml +7 -0
  84. data/generators/vulcanize/templates/minimal_nodb/templates.yml +6 -0
  85. data/generators/vulcanize/templates/mongrel/config/rubber/deploy-mongrel.rb +75 -0
  86. data/generators/vulcanize/templates/mongrel/config/rubber/role/mongrel/mongrel_cluster.yml +12 -0
  87. data/generators/vulcanize/templates/mongrel/config/rubber/role/mongrel/monit-mongrel.conf +20 -0
  88. data/generators/vulcanize/templates/mongrel/config/rubber/rubber-mongrel.yml +9 -0
  89. data/generators/vulcanize/templates/mongrel/templates.yml +1 -0
  90. data/generators/vulcanize/templates/monit/config/rubber/common/monit-default.conf +15 -0
  91. data/generators/vulcanize/templates/monit/config/rubber/common/monit.conf +252 -0
  92. data/generators/vulcanize/templates/monit/config/rubber/deploy-monit.rb +33 -0
  93. data/generators/vulcanize/templates/monit/config/rubber/role/web_tools/monit-admin-nginx.conf +10 -0
  94. data/generators/vulcanize/templates/monit/config/rubber/rubber-monit.yml +6 -0
  95. data/generators/vulcanize/templates/monit/templates.yml +1 -0
  96. data/generators/vulcanize/templates/munin/config/rubber/common/monit-munin.conf +8 -0
  97. data/generators/vulcanize/templates/munin/config/rubber/common/munin-node.conf +48 -0
  98. data/generators/vulcanize/templates/munin/config/rubber/common/munin-plugins.conf +11 -0
  99. data/generators/vulcanize/templates/munin/config/rubber/deploy-munin.rb +46 -0
  100. data/generators/vulcanize/templates/munin/config/rubber/role/web_tools/munin-nginx.conf +8 -0
  101. data/generators/vulcanize/templates/munin/config/rubber/role/web_tools/munin-plugins.conf +31 -0
  102. data/generators/vulcanize/templates/munin/config/rubber/role/web_tools/munin.conf +115 -0
  103. data/generators/vulcanize/templates/munin/config/rubber/rubber-munin.yml +8 -0
  104. data/generators/vulcanize/templates/munin/script/munin/example_mysql_query.rb +55 -0
  105. data/generators/vulcanize/templates/munin/script/munin/example_simple.rb +24 -0
  106. data/generators/vulcanize/templates/munin/templates.yml +1 -0
  107. data/generators/vulcanize/templates/mysql/config/rubber/common/database.yml +12 -0
  108. data/generators/vulcanize/templates/mysql/config/rubber/deploy-mysql.rb +169 -0
  109. data/generators/vulcanize/templates/mysql/config/rubber/role/db/apparmor-mysql.conf +46 -0
  110. data/generators/vulcanize/templates/mysql/config/rubber/role/db/crontab +14 -0
  111. data/generators/vulcanize/templates/mysql/config/rubber/role/db/monit-mysql.cnf +10 -0
  112. data/generators/vulcanize/templates/mysql/config/rubber/role/db/my.cnf +163 -0
  113. data/generators/vulcanize/templates/mysql/config/rubber/role/mysql_slave/mysql_slave_munin_plugin +51 -0
  114. data/generators/vulcanize/templates/mysql/config/rubber/rubber-mysql.yml +47 -0
  115. data/generators/vulcanize/templates/mysql/templates.yml +1 -0
  116. data/generators/vulcanize/templates/mysql_cluster/config/rubber/common/mysql_cluster_migrations.rb +13 -0
  117. data/generators/vulcanize/templates/mysql_cluster/config/rubber/deploy-mysql_cluster.rb +177 -0
  118. data/generators/vulcanize/templates/mysql_cluster/config/rubber/role/mysql_data/my.cnf +15 -0
  119. data/generators/vulcanize/templates/mysql_cluster/config/rubber/role/mysql_mgm/ndb_mgmd.cnf +39 -0
  120. data/generators/vulcanize/templates/mysql_cluster/config/rubber/role/mysql_sql/monit-mysql_cluster_sql.cnf +10 -0
  121. data/generators/vulcanize/templates/mysql_cluster/config/rubber/role/mysql_sql/my.cnf +23 -0
  122. data/generators/vulcanize/templates/mysql_cluster/config/rubber/rubber-mysql_cluster.yml +32 -0
  123. data/generators/vulcanize/templates/mysql_cluster/templates.yml +1 -0
  124. data/generators/vulcanize/templates/mysql_proxy/config/rubber/common/database.yml +16 -0
  125. data/generators/vulcanize/templates/mysql_proxy/config/rubber/common/monit-mysql_proxy.cnf +10 -0
  126. data/generators/vulcanize/templates/mysql_proxy/config/rubber/common/mysql-proxy +153 -0
  127. data/generators/vulcanize/templates/mysql_proxy/config/rubber/common/mysql-proxy.conf +10 -0
  128. data/generators/vulcanize/templates/mysql_proxy/config/rubber/common/mysql-proxy.lua +5 -0
  129. data/generators/vulcanize/templates/mysql_proxy/config/rubber/deploy-mysql_proxy.rb +52 -0
  130. data/generators/vulcanize/templates/mysql_proxy/config/rubber/rubber-mysql_proxy.yml +11 -0
  131. data/generators/vulcanize/templates/mysql_proxy/templates.yml +1 -0
  132. data/generators/vulcanize/templates/nginx/config/rubber/deploy-nginx.rb +45 -0
  133. data/generators/vulcanize/templates/nginx/config/rubber/role/nginx/crontab +9 -0
  134. data/generators/vulcanize/templates/nginx/config/rubber/role/nginx/monit-nginx.conf +8 -0
  135. data/generators/vulcanize/templates/nginx/config/rubber/role/nginx/nginx.conf +42 -0
  136. data/generators/vulcanize/templates/nginx/config/rubber/role/web_tools/nginx-tools.conf +55 -0
  137. data/generators/vulcanize/templates/nginx/config/rubber/role/web_tools/tools-index.html +30 -0
  138. data/generators/vulcanize/templates/nginx/config/rubber/role/web_tools/tools-nginx.auth +7 -0
  139. data/generators/vulcanize/templates/nginx/config/rubber/rubber-nginx.yml +10 -0
  140. data/generators/vulcanize/templates/nginx/templates.yml +1 -0
  141. data/generators/vulcanize/templates/passenger/config/rubber/deploy-passenger.rb +46 -0
  142. data/generators/vulcanize/templates/passenger/config/rubber/role/passenger/munin-passenger-memory.conf +34 -0
  143. data/generators/vulcanize/templates/passenger/config/rubber/role/passenger/munin-passenger-sudoers.conf +7 -0
  144. data/generators/vulcanize/templates/passenger/config/rubber/role/passenger/munin-passenger.conf +47 -0
  145. data/generators/vulcanize/templates/passenger/config/rubber/role/passenger/passenger-apache-vhost.conf +46 -0
  146. data/generators/vulcanize/templates/passenger/config/rubber/role/passenger/passenger.conf +35 -0
  147. data/generators/vulcanize/templates/passenger/config/rubber/rubber-passenger.yml +15 -0
  148. data/generators/vulcanize/templates/passenger/templates.yml +3 -0
  149. data/generators/vulcanize/templates/postgresql/config/rubber/common/database.yml +12 -0
  150. data/generators/vulcanize/templates/postgresql/config/rubber/deploy-postgresql.rb +131 -0
  151. data/generators/vulcanize/templates/postgresql/config/rubber/role/db/crontab +14 -0
  152. data/generators/vulcanize/templates/postgresql/config/rubber/role/db/monit-postgresql.conf +10 -0
  153. data/generators/vulcanize/templates/postgresql/config/rubber/role/db/pg_hba.conf +89 -0
  154. data/generators/vulcanize/templates/postgresql/config/rubber/role/db/postgresql-sysctl.conf +6 -0
  155. data/generators/vulcanize/templates/postgresql/config/rubber/role/db/postgresql.conf +504 -0
  156. data/generators/vulcanize/templates/postgresql/config/rubber/rubber-postgresql.yml +45 -0
  157. data/generators/vulcanize/templates/postgresql/templates.yml +1 -0
  158. data/generators/vulcanize/templates/redis/config/rubber/deploy-redis.rb +37 -0
  159. data/generators/vulcanize/templates/redis/config/rubber/role/redis/crontab +8 -0
  160. data/generators/vulcanize/templates/redis/config/rubber/role/redis/monit-redis.conf +9 -0
  161. data/generators/vulcanize/templates/redis/config/rubber/role/redis/redis.conf +141 -0
  162. data/generators/vulcanize/templates/redis/config/rubber/rubber-redis.yml +4 -0
  163. data/generators/vulcanize/templates/redis/templates.yml +1 -0
  164. data/generators/vulcanize/templates/resque/config/initializers/resque.rb +15 -0
  165. data/generators/vulcanize/templates/resque/config/rubber/common/resque.yml +5 -0
  166. data/generators/vulcanize/templates/resque/config/rubber/deploy-resque.rb +58 -0
  167. data/generators/vulcanize/templates/resque/config/rubber/role/resque_web/monit-resque_web.conf +14 -0
  168. data/generators/vulcanize/templates/resque/config/rubber/role/resque_worker/monit-resque_worker.conf +19 -0
  169. data/generators/vulcanize/templates/resque/config/rubber/rubber-resque.yml +18 -0
  170. data/generators/vulcanize/templates/resque/script/resque_worker_management.rb +144 -0
  171. data/generators/vulcanize/templates/resque/templates.rb +1 -0
  172. data/generators/vulcanize/templates/resque/templates.yml +3 -0
  173. data/generators/vulcanize/templates/sphinx/config/rubber/common/sphinx.yml +46 -0
  174. data/generators/vulcanize/templates/sphinx/config/rubber/deploy-sphinx.rb +112 -0
  175. data/generators/vulcanize/templates/sphinx/config/rubber/role/sphinx/crontab +11 -0
  176. data/generators/vulcanize/templates/sphinx/config/rubber/role/sphinx/monit-sphinx.conf +13 -0
  177. data/generators/vulcanize/templates/sphinx/config/rubber/rubber-sphinx.yml +6 -0
  178. data/generators/vulcanize/templates/sphinx/templates.yml +1 -0
  179. data/generators/vulcanize/vulcanize_generator.rb +184 -0
  180. data/lib/capistrano/hostcmd.rb +12 -0
  181. data/lib/generators/vulcanize/USAGE +6 -0
  182. data/lib/generators/vulcanize/templates/apache/config/rubber/deploy-apache.rb +51 -0
  183. data/lib/generators/vulcanize/templates/apache/config/rubber/role/apache/deflate.conf +10 -0
  184. data/lib/generators/vulcanize/templates/apache/config/rubber/role/apache/expires.conf +9 -0
  185. data/lib/generators/vulcanize/templates/apache/config/rubber/role/apache/headers.conf +6 -0
  186. data/lib/generators/vulcanize/templates/apache/config/rubber/role/apache/monit-apache.conf +8 -0
  187. data/lib/generators/vulcanize/templates/apache/config/rubber/role/apache/ports.conf +8 -0
  188. data/lib/generators/vulcanize/templates/apache/config/rubber/role/apache/setenvif.conf +52 -0
  189. data/lib/generators/vulcanize/templates/apache/config/rubber/role/web_tools/tools-apache-vhost.conf +79 -0
  190. data/lib/generators/vulcanize/templates/apache/config/rubber/role/web_tools/tools-apache.auth +7 -0
  191. data/lib/generators/vulcanize/templates/apache/config/rubber/role/web_tools/tools-index.html +34 -0
  192. data/lib/generators/vulcanize/templates/apache/config/rubber/rubber-apache.yml +6 -0
  193. data/lib/generators/vulcanize/templates/apache/templates.yml +1 -0
  194. data/lib/generators/vulcanize/templates/base/Capfile +14 -0
  195. data/lib/generators/vulcanize/templates/base/Rakefile +23 -0
  196. data/lib/generators/vulcanize/templates/base/config/deploy.rb +56 -0
  197. data/lib/generators/vulcanize/templates/base/config/rubber/common/crontab +22 -0
  198. data/lib/generators/vulcanize/templates/base/config/rubber/common/monit-postfix.conf +8 -0
  199. data/lib/generators/vulcanize/templates/base/config/rubber/common/rubber.profile +13 -0
  200. data/lib/generators/vulcanize/templates/base/config/rubber/deploy-setup.rb +92 -0
  201. data/lib/generators/vulcanize/templates/base/config/rubber/deploy-util.rb +97 -0
  202. data/lib/generators/vulcanize/templates/base/config/rubber/rubber-dns.yml +78 -0
  203. data/lib/generators/vulcanize/templates/base/config/rubber/rubber-rvm.yml +33 -0
  204. data/lib/generators/vulcanize/templates/base/config/rubber/rubber.yml +233 -0
  205. data/lib/generators/vulcanize/templates/base/lib/tasks/rubber.rake +15 -0
  206. data/lib/generators/vulcanize/templates/base/script/cron-rake +18 -0
  207. data/lib/generators/vulcanize/templates/base/script/cron-runner +18 -0
  208. data/lib/generators/vulcanize/templates/base/script/cron-sh +67 -0
  209. data/lib/generators/vulcanize/templates/base/templates.rb +11 -0
  210. data/lib/generators/vulcanize/templates/base/templates.yml +6 -0
  211. data/lib/generators/vulcanize/templates/cassandra/config/rubber/deploy-cassandra.rb +88 -0
  212. data/lib/generators/vulcanize/templates/cassandra/config/rubber/role/cassandra/cassandra.in.sh +60 -0
  213. data/lib/generators/vulcanize/templates/cassandra/config/rubber/role/cassandra/cassandra.yaml +210 -0
  214. data/lib/generators/vulcanize/templates/cassandra/config/rubber/role/cassandra/log4j-server.properties +45 -0
  215. data/lib/generators/vulcanize/templates/cassandra/config/rubber/role/cassandra/monit-cassandra.conf +8 -0
  216. data/lib/generators/vulcanize/templates/cassandra/config/rubber/rubber-cassandra.yml +18 -0
  217. data/lib/generators/vulcanize/templates/cassandra/templates.yml +1 -0
  218. data/lib/generators/vulcanize/templates/complete_mongrel_mysql/config/rubber/role/haproxy/haproxy-mongrel.conf +23 -0
  219. data/lib/generators/vulcanize/templates/complete_mongrel_mysql/config/rubber/role/nginx/nginx-mongrel.conf +113 -0
  220. data/lib/generators/vulcanize/templates/complete_mongrel_mysql/config/rubber/rubber-complete.yml +41 -0
  221. data/lib/generators/vulcanize/templates/complete_mongrel_mysql/templates.yml +6 -0
  222. data/lib/generators/vulcanize/templates/complete_passenger/config/rubber/role/haproxy/haproxy-passenger.conf +21 -0
  223. data/lib/generators/vulcanize/templates/complete_passenger/config/rubber/rubber-complete.yml +40 -0
  224. data/lib/generators/vulcanize/templates/complete_passenger/templates.rb +9 -0
  225. data/lib/generators/vulcanize/templates/complete_passenger/templates.yml +9 -0
  226. data/lib/generators/vulcanize/templates/complete_passenger_mysql/templates.yml +4 -0
  227. data/lib/generators/vulcanize/templates/complete_passenger_postgresql/templates.yml +4 -0
  228. data/lib/generators/vulcanize/templates/cruise/config/rubber/deploy-cruise.rb +72 -0
  229. data/lib/generators/vulcanize/templates/cruise/config/rubber/role/cruise/cruise +40 -0
  230. data/lib/generators/vulcanize/templates/cruise/config/rubber/role/cruise/my.cnf +165 -0
  231. data/lib/generators/vulcanize/templates/cruise/config/rubber/role/cruise/production.rb +8 -0
  232. data/lib/generators/vulcanize/templates/cruise/config/rubber/role/cruise/site_config.rb +76 -0
  233. data/lib/generators/vulcanize/templates/cruise/config/rubber/role/web_tools/cruise-nginx.conf +11 -0
  234. data/lib/generators/vulcanize/templates/cruise/config/rubber/rubber-cruise.yml +18 -0
  235. data/lib/generators/vulcanize/templates/cruise/templates.yml +1 -0
  236. data/lib/generators/vulcanize/templates/haproxy/config/rubber/deploy-haproxy.rb +45 -0
  237. data/lib/generators/vulcanize/templates/haproxy/config/rubber/role/haproxy/haproxy-base.conf +26 -0
  238. data/lib/generators/vulcanize/templates/haproxy/config/rubber/role/haproxy/haproxy-default.conf +8 -0
  239. data/lib/generators/vulcanize/templates/haproxy/config/rubber/role/haproxy/monit-haproxy.conf +9 -0
  240. data/lib/generators/vulcanize/templates/haproxy/config/rubber/role/haproxy/syslog-haproxy.conf +11 -0
  241. data/lib/generators/vulcanize/templates/haproxy/config/rubber/role/haproxy/syslogd-default.conf +21 -0
  242. data/lib/generators/vulcanize/templates/haproxy/config/rubber/role/web_tools/haproxy-nginx.conf +10 -0
  243. data/lib/generators/vulcanize/templates/haproxy/config/rubber/rubber-haproxy.yml +7 -0
  244. data/lib/generators/vulcanize/templates/haproxy/templates.yml +1 -0
  245. data/lib/generators/vulcanize/templates/jetty/config/rubber/deploy-jetty.rb +59 -0
  246. data/lib/generators/vulcanize/templates/jetty/config/rubber/role/jetty/jetty.sh +589 -0
  247. data/lib/generators/vulcanize/templates/jetty/config/rubber/role/jetty/jetty.xml +199 -0
  248. data/lib/generators/vulcanize/templates/jetty/config/rubber/role/jetty/monit-jetty.conf +9 -0
  249. data/lib/generators/vulcanize/templates/jetty/config/rubber/rubber-jetty.yml +10 -0
  250. data/lib/generators/vulcanize/templates/jetty/templates.yml +1 -0
  251. data/lib/generators/vulcanize/templates/memcached/config/memcached.yml +28 -0
  252. data/lib/generators/vulcanize/templates/memcached/config/rubber/common/memcached.yml +14 -0
  253. data/lib/generators/vulcanize/templates/memcached/config/rubber/role/memcached/memcached.conf +52 -0
  254. data/lib/generators/vulcanize/templates/memcached/config/rubber/role/memcached/memcached_munin_plugin +249 -0
  255. data/lib/generators/vulcanize/templates/memcached/config/rubber/rubber-memcached.yml +7 -0
  256. data/lib/generators/vulcanize/templates/memcached/templates.yml +1 -0
  257. data/lib/generators/vulcanize/templates/minimal_mysql/templates.yml +7 -0
  258. data/lib/generators/vulcanize/templates/minimal_nodb/templates.yml +6 -0
  259. data/lib/generators/vulcanize/templates/mongrel/config/rubber/deploy-mongrel.rb +75 -0
  260. data/lib/generators/vulcanize/templates/mongrel/config/rubber/role/mongrel/mongrel_cluster.yml +12 -0
  261. data/lib/generators/vulcanize/templates/mongrel/config/rubber/role/mongrel/monit-mongrel.conf +20 -0
  262. data/lib/generators/vulcanize/templates/mongrel/config/rubber/rubber-mongrel.yml +9 -0
  263. data/lib/generators/vulcanize/templates/mongrel/templates.yml +1 -0
  264. data/lib/generators/vulcanize/templates/monit/config/rubber/common/monit-default.conf +15 -0
  265. data/lib/generators/vulcanize/templates/monit/config/rubber/common/monit.conf +252 -0
  266. data/lib/generators/vulcanize/templates/monit/config/rubber/deploy-monit.rb +33 -0
  267. data/lib/generators/vulcanize/templates/monit/config/rubber/role/web_tools/monit-admin-nginx.conf +10 -0
  268. data/lib/generators/vulcanize/templates/monit/config/rubber/rubber-monit.yml +6 -0
  269. data/lib/generators/vulcanize/templates/monit/templates.yml +1 -0
  270. data/lib/generators/vulcanize/templates/munin/config/rubber/common/monit-munin.conf +8 -0
  271. data/lib/generators/vulcanize/templates/munin/config/rubber/common/munin-node.conf +48 -0
  272. data/lib/generators/vulcanize/templates/munin/config/rubber/common/munin-plugins.conf +11 -0
  273. data/lib/generators/vulcanize/templates/munin/config/rubber/deploy-munin.rb +46 -0
  274. data/lib/generators/vulcanize/templates/munin/config/rubber/role/web_tools/munin-nginx.conf +8 -0
  275. data/lib/generators/vulcanize/templates/munin/config/rubber/role/web_tools/munin-plugins.conf +31 -0
  276. data/lib/generators/vulcanize/templates/munin/config/rubber/role/web_tools/munin.conf +115 -0
  277. data/lib/generators/vulcanize/templates/munin/config/rubber/rubber-munin.yml +8 -0
  278. data/lib/generators/vulcanize/templates/munin/script/munin/example_mysql_query.rb +55 -0
  279. data/lib/generators/vulcanize/templates/munin/script/munin/example_simple.rb +24 -0
  280. data/lib/generators/vulcanize/templates/munin/templates.yml +1 -0
  281. data/lib/generators/vulcanize/templates/mysql/config/rubber/common/database.yml +12 -0
  282. data/lib/generators/vulcanize/templates/mysql/config/rubber/deploy-mysql.rb +169 -0
  283. data/lib/generators/vulcanize/templates/mysql/config/rubber/role/db/apparmor-mysql.conf +46 -0
  284. data/lib/generators/vulcanize/templates/mysql/config/rubber/role/db/crontab +14 -0
  285. data/lib/generators/vulcanize/templates/mysql/config/rubber/role/db/monit-mysql.cnf +10 -0
  286. data/lib/generators/vulcanize/templates/mysql/config/rubber/role/db/my.cnf +163 -0
  287. data/lib/generators/vulcanize/templates/mysql/config/rubber/role/mysql_slave/mysql_slave_munin_plugin +51 -0
  288. data/lib/generators/vulcanize/templates/mysql/config/rubber/rubber-mysql.yml +47 -0
  289. data/lib/generators/vulcanize/templates/mysql/templates.yml +1 -0
  290. data/lib/generators/vulcanize/templates/mysql_cluster/config/rubber/common/mysql_cluster_migrations.rb +13 -0
  291. data/lib/generators/vulcanize/templates/mysql_cluster/config/rubber/deploy-mysql_cluster.rb +177 -0
  292. data/lib/generators/vulcanize/templates/mysql_cluster/config/rubber/role/mysql_data/my.cnf +15 -0
  293. data/lib/generators/vulcanize/templates/mysql_cluster/config/rubber/role/mysql_mgm/ndb_mgmd.cnf +39 -0
  294. data/lib/generators/vulcanize/templates/mysql_cluster/config/rubber/role/mysql_sql/monit-mysql_cluster_sql.cnf +10 -0
  295. data/lib/generators/vulcanize/templates/mysql_cluster/config/rubber/role/mysql_sql/my.cnf +23 -0
  296. data/lib/generators/vulcanize/templates/mysql_cluster/config/rubber/rubber-mysql_cluster.yml +32 -0
  297. data/lib/generators/vulcanize/templates/mysql_cluster/templates.yml +1 -0
  298. data/lib/generators/vulcanize/templates/mysql_proxy/config/rubber/common/database.yml +16 -0
  299. data/lib/generators/vulcanize/templates/mysql_proxy/config/rubber/common/monit-mysql_proxy.cnf +10 -0
  300. data/lib/generators/vulcanize/templates/mysql_proxy/config/rubber/common/mysql-proxy +153 -0
  301. data/lib/generators/vulcanize/templates/mysql_proxy/config/rubber/common/mysql-proxy.conf +10 -0
  302. data/lib/generators/vulcanize/templates/mysql_proxy/config/rubber/common/mysql-proxy.lua +5 -0
  303. data/lib/generators/vulcanize/templates/mysql_proxy/config/rubber/deploy-mysql_proxy.rb +52 -0
  304. data/lib/generators/vulcanize/templates/mysql_proxy/config/rubber/rubber-mysql_proxy.yml +11 -0
  305. data/lib/generators/vulcanize/templates/mysql_proxy/templates.yml +1 -0
  306. data/lib/generators/vulcanize/templates/nginx/config/rubber/deploy-nginx.rb +45 -0
  307. data/lib/generators/vulcanize/templates/nginx/config/rubber/role/nginx/crontab +9 -0
  308. data/lib/generators/vulcanize/templates/nginx/config/rubber/role/nginx/monit-nginx.conf +8 -0
  309. data/lib/generators/vulcanize/templates/nginx/config/rubber/role/nginx/nginx.conf +42 -0
  310. data/lib/generators/vulcanize/templates/nginx/config/rubber/role/web_tools/nginx-tools.conf +55 -0
  311. data/lib/generators/vulcanize/templates/nginx/config/rubber/role/web_tools/tools-index.html +30 -0
  312. data/lib/generators/vulcanize/templates/nginx/config/rubber/role/web_tools/tools-nginx.auth +7 -0
  313. data/lib/generators/vulcanize/templates/nginx/config/rubber/rubber-nginx.yml +10 -0
  314. data/lib/generators/vulcanize/templates/nginx/templates.yml +1 -0
  315. data/lib/generators/vulcanize/templates/passenger/config/rubber/deploy-passenger.rb +46 -0
  316. data/lib/generators/vulcanize/templates/passenger/config/rubber/role/passenger/munin-passenger-memory.conf +34 -0
  317. data/lib/generators/vulcanize/templates/passenger/config/rubber/role/passenger/munin-passenger-sudoers.conf +7 -0
  318. data/lib/generators/vulcanize/templates/passenger/config/rubber/role/passenger/munin-passenger.conf +47 -0
  319. data/lib/generators/vulcanize/templates/passenger/config/rubber/role/passenger/passenger-apache-vhost.conf +46 -0
  320. data/lib/generators/vulcanize/templates/passenger/config/rubber/role/passenger/passenger.conf +35 -0
  321. data/lib/generators/vulcanize/templates/passenger/config/rubber/rubber-passenger.yml +15 -0
  322. data/lib/generators/vulcanize/templates/passenger/templates.yml +3 -0
  323. data/lib/generators/vulcanize/templates/postgresql/config/rubber/common/database.yml +12 -0
  324. data/lib/generators/vulcanize/templates/postgresql/config/rubber/deploy-postgresql.rb +131 -0
  325. data/lib/generators/vulcanize/templates/postgresql/config/rubber/role/db/crontab +14 -0
  326. data/lib/generators/vulcanize/templates/postgresql/config/rubber/role/db/monit-postgresql.conf +10 -0
  327. data/lib/generators/vulcanize/templates/postgresql/config/rubber/role/db/pg_hba.conf +89 -0
  328. data/lib/generators/vulcanize/templates/postgresql/config/rubber/role/db/postgresql-sysctl.conf +6 -0
  329. data/lib/generators/vulcanize/templates/postgresql/config/rubber/role/db/postgresql.conf +504 -0
  330. data/lib/generators/vulcanize/templates/postgresql/config/rubber/rubber-postgresql.yml +45 -0
  331. data/lib/generators/vulcanize/templates/postgresql/templates.yml +1 -0
  332. data/lib/generators/vulcanize/templates/redis/config/rubber/deploy-redis.rb +37 -0
  333. data/lib/generators/vulcanize/templates/redis/config/rubber/role/redis/crontab +8 -0
  334. data/lib/generators/vulcanize/templates/redis/config/rubber/role/redis/monit-redis.conf +9 -0
  335. data/lib/generators/vulcanize/templates/redis/config/rubber/role/redis/redis.conf +141 -0
  336. data/lib/generators/vulcanize/templates/redis/config/rubber/rubber-redis.yml +4 -0
  337. data/lib/generators/vulcanize/templates/redis/templates.yml +1 -0
  338. data/lib/generators/vulcanize/templates/resque/config/initializers/resque.rb +15 -0
  339. data/lib/generators/vulcanize/templates/resque/config/rubber/common/resque.yml +5 -0
  340. data/lib/generators/vulcanize/templates/resque/config/rubber/deploy-resque.rb +58 -0
  341. data/lib/generators/vulcanize/templates/resque/config/rubber/role/resque_web/monit-resque_web.conf +14 -0
  342. data/lib/generators/vulcanize/templates/resque/config/rubber/role/resque_worker/monit-resque_worker.conf +19 -0
  343. data/lib/generators/vulcanize/templates/resque/config/rubber/rubber-resque.yml +18 -0
  344. data/lib/generators/vulcanize/templates/resque/script/resque_worker_management.rb +144 -0
  345. data/lib/generators/vulcanize/templates/resque/templates.rb +1 -0
  346. data/lib/generators/vulcanize/templates/resque/templates.yml +3 -0
  347. data/lib/generators/vulcanize/templates/sphinx/config/rubber/common/sphinx.yml +46 -0
  348. data/lib/generators/vulcanize/templates/sphinx/config/rubber/deploy-sphinx.rb +112 -0
  349. data/lib/generators/vulcanize/templates/sphinx/config/rubber/role/sphinx/crontab +11 -0
  350. data/lib/generators/vulcanize/templates/sphinx/config/rubber/role/sphinx/monit-sphinx.conf +13 -0
  351. data/lib/generators/vulcanize/templates/sphinx/config/rubber/rubber-sphinx.yml +6 -0
  352. data/lib/generators/vulcanize/templates/sphinx/templates.yml +1 -0
  353. data/lib/generators/vulcanize/vulcanize_generator.rb +184 -0
  354. data/lib/rubber.rb +76 -0
  355. data/lib/rubber/capistrano.rb +1 -0
  356. data/lib/rubber/cloud.rb +13 -0
  357. data/lib/rubber/cloud/aws.rb +355 -0
  358. data/lib/rubber/cloud/base.rb +16 -0
  359. data/lib/rubber/configuration.rb +47 -0
  360. data/lib/rubber/dns.rb +13 -0
  361. data/lib/rubber/dns/base.rb +84 -0
  362. data/lib/rubber/dns/dyndns.rb +77 -0
  363. data/lib/rubber/dns/nettica.rb +117 -0
  364. data/lib/rubber/dns/zerigo.rb +115 -0
  365. data/lib/rubber/environment.rb +177 -0
  366. data/lib/rubber/generator.rb +209 -0
  367. data/lib/rubber/instance.rb +176 -0
  368. data/lib/rubber/railtie.rb +14 -0
  369. data/lib/rubber/recipes/rubber.rb +96 -0
  370. data/lib/rubber/recipes/rubber/bundles.rb +30 -0
  371. data/lib/rubber/recipes/rubber/deploy.rb +90 -0
  372. data/lib/rubber/recipes/rubber/instances.rb +445 -0
  373. data/lib/rubber/recipes/rubber/load_balancers.rb +44 -0
  374. data/lib/rubber/recipes/rubber/security_groups.rb +189 -0
  375. data/lib/rubber/recipes/rubber/setup.rb +534 -0
  376. data/lib/rubber/recipes/rubber/spot_requests.rb +23 -0
  377. data/lib/rubber/recipes/rubber/static_ips.rb +190 -0
  378. data/lib/rubber/recipes/rubber/utils.rb +226 -0
  379. data/lib/rubber/recipes/rubber/volumes.rb +264 -0
  380. data/lib/rubber/tasks/rubber.rb +279 -0
  381. data/lib/rubber/util.rb +72 -0
  382. data/rails/init.rb +6 -0
  383. data/test/environment_test.rb +144 -0
  384. data/test/generator_test.rb +370 -0
  385. data/test/instance_test.rb +96 -0
  386. data/test/test_helper.rb +14 -0
  387. data/test/util_test.rb +19 -0
  388. data/test/zerigo_test.rb +88 -0
  389. metadata +494 -0
@@ -0,0 +1,589 @@
1
+ <%-
2
+ @path = "#{rubber_env.jetty_dir}/bin/jetty.sh"
3
+ @perms = 0744
4
+ %>
5
+
6
+ #!/bin/bash
7
+ #
8
+ # Startup script for jetty under *nix systems (it works under NT/cygwin too).
9
+
10
+ # To get the service to restart correctly on reboot, uncomment below (3 lines):
11
+ # ========================
12
+ # chkconfig: 3 99 99
13
+ # description: Jetty 7 webserver
14
+ # processname: jetty
15
+ # ========================
16
+
17
+ # Configuration files
18
+ #
19
+ # /etc/default/jetty
20
+ # If it exists, this is read at the start of script. It may perform any
21
+ # sequence of shell commands, like setting relevant environment variables.
22
+ #
23
+ # $HOME/.jettyrc
24
+ # If it exists, this is read at the start of script. It may perform any
25
+ # sequence of shell commands, like setting relevant environment variables.
26
+ #
27
+ # /etc/jetty.conf
28
+ # If found, and no configurations were given on the command line,
29
+ # the file will be used as this script's configuration.
30
+ # Each line in the file may contain:
31
+ # - A comment denoted by the pound (#) sign as first non-blank character.
32
+ # - The path to a regular file, which will be passed to jetty as a
33
+ # config.xml file.
34
+ # - The path to a directory. Each *.xml file in the directory will be
35
+ # passed to jetty as a config.xml file.
36
+ #
37
+ # The files will be checked for existence before being passed to jetty.
38
+ #
39
+ # $JETTY_HOME/etc/jetty.xml
40
+ # If found, used as this script's configuration file, but only if
41
+ # /etc/jetty.conf was not present. See above.
42
+ #
43
+ # Configuration variables
44
+ #
45
+ # JAVA_HOME
46
+ # Home of Java installation.
47
+ #
48
+ # JAVA
49
+ # Command to invoke Java. If not set, $JAVA_HOME/bin/java will be
50
+ # used.
51
+ #
52
+ # JAVA_OPTIONS
53
+ # Extra options to pass to the JVM
54
+
55
+ JAVA_OPTIONS="<%= rubber_env.jetty_jvm_options %>"
56
+
57
+ #
58
+ # JETTY_HOME
59
+ # Where Jetty is installed. If not set, the script will try go
60
+ # guess it by first looking at the invocation path for the script,
61
+ # and then by looking in standard locations as $HOME/opt/jetty
62
+ # and /opt/jetty. The java system property "jetty.home" will be
63
+ # set to this value for use by configure.xml files, f.e.:
64
+ #
65
+ # <Arg><SystemProperty name="jetty.home" default="."/>/webapps/jetty.war</Arg>
66
+ #
67
+ # JETTY_PORT
68
+ # Override the default port for Jetty servers. If not set then the
69
+ # default value in the xml configuration file will be used. The java
70
+ # system property "jetty.port" will be set to this value for use in
71
+ # configure.xml files. For example, the following idiom is widely
72
+ # used in the demo config files to respect this property in Listener
73
+ # configuration elements:
74
+ #
75
+ # <Set name="Port"><SystemProperty name="jetty.port" default="8080"/></Set>
76
+ #
77
+ # Note: that the config file could ignore this property simply by saying:
78
+ #
79
+ # <Set name="Port">8080</Set>
80
+ #
81
+ # JETTY_RUN
82
+ # Where the jetty.pid file should be stored. It defaults to the
83
+ # first available of /var/run, /usr/var/run, and /tmp if not set.
84
+ #
85
+ # JETTY_PID
86
+ # The Jetty PID file, defaults to $JETTY_RUN/jetty.pid
87
+ #
88
+ # JETTY_ARGS
89
+ # The default arguments to pass to jetty.
90
+ #
91
+ # JETTY_USER
92
+ # if set, then used as a username to run the server as
93
+ #
94
+ # Set to 0 if you do not want to use start-stop-daemon (especially on SUSE boxes)
95
+ START_STOP_DAEMON=1
96
+
97
+ usage()
98
+ {
99
+ echo "Usage: $0 {start|stop|run|restart|check|supervise} [ CONFIGS ... ] "
100
+ exit 1
101
+ }
102
+
103
+ [ $# -gt 0 ] || usage
104
+
105
+
106
+ ##################################################
107
+ # Some utility functions
108
+ ##################################################
109
+ findDirectory()
110
+ {
111
+ OP=$1
112
+ shift
113
+ for L in $* ; do
114
+ [ $OP $L ] || continue
115
+ echo $L
116
+ break
117
+ done
118
+ }
119
+
120
+ running()
121
+ {
122
+ [ -f $1 ] || return 1
123
+ PID=$(cat $1)
124
+ ps -p $PID >/dev/null 2>/dev/null || return 1
125
+ return 0
126
+ }
127
+
128
+ ##################################################
129
+ # Get the action & configs
130
+ ##################################################
131
+
132
+ ACTION=$1
133
+ shift
134
+ ARGS="$*"
135
+ NO_START=0
136
+
137
+ ##################################################
138
+ # See if there's a default configuration file
139
+ ##################################################
140
+ if [ -f /etc/default/jetty7 ] ; then
141
+ . /etc/default/jetty7
142
+ elif [ -f /etc/default/jetty ] ; then
143
+ . /etc/default/jetty
144
+ fi
145
+
146
+
147
+ ##################################################
148
+ # See if there's a user-specific configuration file
149
+ ##################################################
150
+ if [ -f $HOME/.jettyrc ] ; then
151
+ . $HOME/.jettyrc
152
+ fi
153
+
154
+ ##################################################
155
+ # Set tmp if not already set.
156
+ ##################################################
157
+
158
+ if [ -z "$TMP" ]
159
+ then
160
+ TMP=/tmp
161
+ fi
162
+
163
+ ##################################################
164
+ # Jetty's hallmark
165
+ ##################################################
166
+ JETTY_INSTALL_TRACE_FILE="etc/jetty.xml"
167
+ TMPJ=$TMP/j$$
168
+
169
+
170
+ ##################################################
171
+ # Try to determine JETTY_HOME if not set
172
+ ##################################################
173
+ if [ -z "$JETTY_HOME" ]
174
+ then
175
+ JETTY_HOME_1=`dirname "$0"`
176
+ JETTY_HOME_1=`dirname "$JETTY_HOME_1"`
177
+ if [ -f "${JETTY_HOME_1}/${JETTY_INSTALL_TRACE_FILE}" ] ;
178
+ then
179
+ JETTY_HOME=${JETTY_HOME_1}
180
+ fi
181
+ fi
182
+
183
+
184
+ ##################################################
185
+ # if no JETTY_HOME, search likely locations.
186
+ ##################################################
187
+ if [ "$JETTY_HOME" = "" ] ; then
188
+ STANDARD_LOCATIONS=" \
189
+ /usr/share \
190
+ /usr/share/java \
191
+ $HOME \
192
+ $HOME/src \
193
+ ${HOME}/opt/ \
194
+ /opt \
195
+ /java \
196
+ /usr/local \
197
+ /usr/local/share \
198
+ /usr/local/share/java \
199
+ /home \
200
+ "
201
+ JETTY_DIR_NAMES=" \
202
+ jetty-7 \
203
+ jetty7 \
204
+ jetty-7.* \
205
+ jetty \
206
+ Jetty-7 \
207
+ Jetty7 \
208
+ Jetty-7.* \
209
+ Jetty \
210
+ "
211
+
212
+ JETTY_HOME=
213
+ for L in $STANDARD_LOCATIONS
214
+ do
215
+ for N in $JETTY_DIR_NAMES
216
+ do
217
+ if [ -d $L/$N ] && [ -f "$L/${N}/${JETTY_INSTALL_TRACE_FILE}" ] ;
218
+ then
219
+ JETTY_HOME="$L/$N"
220
+ fi
221
+ done
222
+ [ ! -z "$JETTY_HOME" ] && break
223
+ done
224
+ fi
225
+
226
+
227
+ ##################################################
228
+ # No JETTY_HOME yet? We're out of luck!
229
+ ##################################################
230
+ if [ -z "$JETTY_HOME" ] ; then
231
+ echo "** ERROR: JETTY_HOME not set, you need to set it or install in a standard location"
232
+ exit 1
233
+ fi
234
+
235
+ cd $JETTY_HOME
236
+ JETTY_HOME=`pwd`
237
+
238
+ #####################################################
239
+ # Check that jetty is where we think it is
240
+ #####################################################
241
+ if [ ! -r $JETTY_HOME/$JETTY_INSTALL_TRACE_FILE ]
242
+ then
243
+ echo "** ERROR: Oops! Jetty doesn't appear to be installed in $JETTY_HOME"
244
+ echo "** ERROR: $JETTY_HOME/$JETTY_INSTALL_TRACE_FILE is not readable!"
245
+ exit 1
246
+ fi
247
+
248
+ ##################################################
249
+ # Try to find this script's configuration file,
250
+ # but only if no configurations were given on the
251
+ # command line.
252
+ ##################################################
253
+ if [ -z "$JETTY_CONF" ]
254
+ then
255
+ if [ -f /etc/jetty.conf ]
256
+ then
257
+ JETTY_CONF=/etc/jetty.conf
258
+ elif [ -f "${JETTY_HOME}/etc/jetty.conf" ]
259
+ then
260
+ JETTY_CONF="${JETTY_HOME}/etc/jetty.conf"
261
+ fi
262
+ fi
263
+
264
+ ##################################################
265
+ # Read the configuration file if one exists
266
+ ##################################################
267
+ CONFIG_LINES=
268
+ if [ -f "$JETTY_CONF" ] && [ -r "$JETTY_CONF" ]
269
+ then
270
+ CONFIG_LINES=`cat $JETTY_CONF | grep -v "^[:space:]*#" | tr "\n" " "`
271
+ fi
272
+
273
+ #####################################################
274
+ # Find a location for the pid file
275
+ #####################################################
276
+ if [ -z "$JETTY_RUN" ]
277
+ then
278
+ JETTY_RUN=`findDirectory -w /var/run /usr/var/run /tmp`
279
+ fi
280
+
281
+ #####################################################
282
+ # Find a PID for the pid file
283
+ #####################################################
284
+ if [ -z "$JETTY_PID" ]
285
+ then
286
+ JETTY_PID="$JETTY_RUN/jetty.pid"
287
+ fi
288
+
289
+
290
+ ##################################################
291
+ # Check for JAVA_HOME
292
+ ##################################################
293
+ if [ -z "$JAVA_HOME" ]
294
+ then
295
+ # If a java runtime is not defined, search the following
296
+ # directories for a JVM and sort by version. Use the highest
297
+ # version number.
298
+
299
+ # Java search path
300
+ JAVA_LOCATIONS="\
301
+ /usr/java \
302
+ /usr/bin \
303
+ /usr/local/bin \
304
+ /usr/local/java \
305
+ /usr/local/jdk \
306
+ /usr/local/jre \
307
+ /usr/lib/jvm \
308
+ /opt/java \
309
+ /opt/jdk \
310
+ /opt/jre \
311
+ "
312
+ JAVA_NAMES="java jdk jre"
313
+ for N in $JAVA_NAMES ; do
314
+ for L in $JAVA_LOCATIONS ; do
315
+ [ -d $L ] || continue
316
+ find $L -name "$N" ! -type d | grep -v threads | while read J ; do
317
+ [ -x $J ] || continue
318
+ VERSION=`eval $J -version 2>&1`
319
+ [ $? = 0 ] || continue
320
+ VERSION=`expr "$VERSION" : '.*"\(1.[0-9\.]*\)["_]'`
321
+ [ "$VERSION" = "" ] && continue
322
+ expr $VERSION \< 1.2 >/dev/null && continue
323
+ echo $VERSION:$J
324
+ done
325
+ done
326
+ done | sort | tail -1 > $TMPJ
327
+ JAVA=`cat $TMPJ | cut -d: -f2`
328
+ JVERSION=`cat $TMPJ | cut -d: -f1`
329
+
330
+ JAVA_HOME=`dirname $JAVA`
331
+ while [ ! -z "$JAVA_HOME" -a "$JAVA_HOME" != "/" -a ! -f "$JAVA_HOME/lib/tools.jar" ] ; do
332
+ JAVA_HOME=`dirname $JAVA_HOME`
333
+ done
334
+ [ "$JAVA_HOME" = "" ] && JAVA_HOME=
335
+
336
+ echo "Found JAVA=$JAVA in JAVA_HOME=$JAVA_HOME"
337
+ fi
338
+
339
+
340
+ ##################################################
341
+ # Determine which JVM of version >1.2
342
+ # Try to use JAVA_HOME
343
+ ##################################################
344
+ if [ "$JAVA" = "" -a "$JAVA_HOME" != "" ]
345
+ then
346
+ if [ ! -z "$JAVACMD" ]
347
+ then
348
+ JAVA="$JAVACMD"
349
+ else
350
+ [ -x $JAVA_HOME/bin/jre -a ! -d $JAVA_HOME/bin/jre ] && JAVA=$JAVA_HOME/bin/jre
351
+ [ -x $JAVA_HOME/bin/java -a ! -d $JAVA_HOME/bin/java ] && JAVA=$JAVA_HOME/bin/java
352
+ fi
353
+ fi
354
+
355
+ if [ "$JAVA" = "" ]
356
+ then
357
+ echo "Cannot find a JRE or JDK. Please set JAVA_HOME to a >=1.2 JRE" 2>&2
358
+ exit 1
359
+ fi
360
+
361
+ JAVA_VERSION=`expr "$($JAVA -version 2>&1 | head -1)" : '.*1\.\([0-9]\)'`
362
+
363
+ #####################################################
364
+ # See if JETTY_PORT is defined
365
+ #####################################################
366
+ if [ "$JETTY_PORT" != "" ]
367
+ then
368
+ JAVA_OPTIONS="$JAVA_OPTIONS -Djetty.port=$JETTY_PORT"
369
+ fi
370
+
371
+ #####################################################
372
+ # See if JETTY_LOGS is defined
373
+ #####################################################
374
+ if [ "$JETTY_LOGS" != "" ]
375
+ then
376
+ JAVA_OPTIONS="$JAVA_OPTIONS -Djetty.logs=$JETTY_LOGS"
377
+ fi
378
+
379
+ #####################################################
380
+ # Are we running on Windows? Could be, with Cygwin/NT.
381
+ #####################################################
382
+ case "`uname`" in
383
+ CYGWIN*) PATH_SEPARATOR=";";;
384
+ *) PATH_SEPARATOR=":";;
385
+ esac
386
+
387
+
388
+ #####################################################
389
+ # Add jetty properties to Java VM options.
390
+ #####################################################
391
+ JAVA_OPTIONS="$JAVA_OPTIONS -Djetty.home=$JETTY_HOME -Djava.io.tmpdir=$TMP"
392
+
393
+ [ -f $JETTY_HOME/etc/start.config ] && JAVA_OPTIONS="-DSTART=$JETTY_HOME/etc/start.config $JAVA_OPTIONS"
394
+
395
+ #####################################################
396
+ # This is how the Jetty server will be started
397
+ #####################################################
398
+
399
+ JETTY_START=$JETTY_HOME/start.jar
400
+ [ ! -f $JETTY_START ] && JETTY_START=$JETTY_HOME/lib/start.jar
401
+
402
+ RUN_ARGS="$JAVA_OPTIONS -jar $JETTY_START --fromDaemon $JETTY_ARGS $ARGS"
403
+ RUN_CMD="$JAVA $RUN_ARGS"
404
+
405
+ #####################################################
406
+ # Comment these out after you're happy with what
407
+ # the script is doing.
408
+ #####################################################
409
+ #echo "JETTY_HOME = $JETTY_HOME"
410
+ #echo "JETTY_CONF = $JETTY_CONF"
411
+ #echo "JETTY_RUN = $JETTY_RUN"
412
+ #echo "JETTY_PID = $JETTY_PID"
413
+ #echo "JETTY_ARGS = $JETTY_ARGS"
414
+ #echo "ARGS = $ARGS"
415
+ #echo "JAVA_OPTIONS = $JAVA_OPTIONS"
416
+ #echo "JAVA = $JAVA"
417
+
418
+
419
+ ##################################################
420
+ # Do the action
421
+ ##################################################
422
+ case "$ACTION" in
423
+ start)
424
+ echo -n "Starting Jetty: "
425
+
426
+ if [ "$NO_START" = "1" ]; then
427
+ echo "Not starting jetty - NO_START=1 in /etc/default/jetty7";
428
+ exit 0;
429
+ fi
430
+
431
+
432
+ if [ "$START_STOP_DAEMON" = "1" ] && type start-stop-daemon > /dev/null 2>&1
433
+ then
434
+ [ x$JETTY_USER = x ] && JETTY_USER=$(whoami)
435
+ [ $UID = 0 ] && CH_USER="-c $JETTY_USER"
436
+ if start-stop-daemon -S -p$JETTY_PID $CH_USER -d $JETTY_HOME -b -m -a $JAVA -- $RUN_ARGS
437
+ then
438
+ sleep 1
439
+ if running $JETTY_PID
440
+ then
441
+ echo OK
442
+ else
443
+ echo FAILED
444
+ fi
445
+ fi
446
+
447
+ else
448
+
449
+ if [ -f $JETTY_PID ]
450
+ then
451
+ if running $JETTY_PID
452
+ then
453
+ echo "Already Running!!"
454
+ exit 1
455
+ else
456
+ # dead pid file - remove
457
+ rm -f $JETTY_PID
458
+ fi
459
+ fi
460
+
461
+ if [ x$JETTY_USER != x ]
462
+ then
463
+ touch $JETTY_PID
464
+ chown $JETTY_USER $JETTY_PID
465
+ su - $JETTY_USER -c "
466
+ $RUN_CMD &
467
+ PID=\$!
468
+ disown \$PID
469
+ echo \$PID > $JETTY_PID"
470
+ else
471
+ $RUN_CMD &
472
+ PID=$!
473
+ disown $PID
474
+ echo $PID > $JETTY_PID
475
+ fi
476
+
477
+ echo "STARTED Jetty `date`"
478
+ fi
479
+
480
+ ;;
481
+
482
+ stop)
483
+ echo -n "Stopping Jetty: "
484
+ if [ "$START_STOP_DAEMON" = "1" ] && type start-stop-daemon > /dev/null 2>&1; then
485
+ start-stop-daemon -K -p $JETTY_PID -d $JETTY_HOME -a $JAVA -s HUP
486
+ sleep 1
487
+ if running $JETTY_PID
488
+ then
489
+ sleep 3
490
+ if running $JETTY_PID
491
+ then
492
+ sleep 30
493
+ if running $JETTY_PID
494
+ then
495
+ start-stop-daemon -K -p $JETTY_PID -d $JETTY_HOME -a $JAVA -s KILL
496
+ fi
497
+ fi
498
+ fi
499
+
500
+ rm -f $JETTY_PID
501
+ echo OK
502
+ else
503
+ PID=`cat $JETTY_PID 2>/dev/null`
504
+ TIMEOUT=30
505
+ while running $JETTY_PID && [ $TIMEOUT -gt 0 ]
506
+ do
507
+ kill $PID 2>/dev/null
508
+ sleep 1
509
+ let TIMEOUT=$TIMEOUT-1
510
+ done
511
+
512
+ [ $TIMEOUT -gt 0 ] || kill -9 $PID 2>/dev/null
513
+
514
+ rm -f $JETTY_PID
515
+ echo OK
516
+ fi
517
+ ;;
518
+
519
+ restart)
520
+ JETTY_SH=$0
521
+ if [ ! -f $JETTY_SH ]; then
522
+ if [ ! -f $JETTY_HOME/bin/jetty.sh ]; then
523
+ echo "$JETTY_HOME/bin/jetty.sh does not exist."
524
+ exit 1
525
+ fi
526
+ JETTY_SH=$JETTY_HOME/bin/jetty.sh
527
+ fi
528
+ $JETTY_SH stop $*
529
+ sleep 5
530
+ $JETTY_SH start $*
531
+ ;;
532
+
533
+ supervise)
534
+ #
535
+ # Under control of daemontools supervise monitor which
536
+ # handles restarts and shutdowns via the svc program.
537
+ #
538
+ exec $RUN_CMD
539
+ ;;
540
+
541
+ run|demo)
542
+ echo "Running Jetty: "
543
+
544
+ if [ -f $JETTY_PID ]
545
+ then
546
+ if running $JETTY_PID
547
+ then
548
+ echo "Already Running!!"
549
+ exit 1
550
+ else
551
+ # dead pid file - remove
552
+ rm -f $JETTY_PID
553
+ fi
554
+ fi
555
+
556
+ exec $RUN_CMD
557
+ ;;
558
+
559
+ check)
560
+ echo "Checking arguments to Jetty: "
561
+ echo "JETTY_HOME = $JETTY_HOME"
562
+ echo "JETTY_CONF = $JETTY_CONF"
563
+ echo "JETTY_RUN = $JETTY_RUN"
564
+ echo "JETTY_PID = $JETTY_PID"
565
+ echo "JETTY_PORT = $JETTY_PORT"
566
+ echo "JETTY_LOGS = $JETTY_LOGS"
567
+ echo "JAVA_OPTIONS = $JAVA_OPTIONS"
568
+ echo "JAVA = $JAVA"
569
+ echo "CLASSPATH = $CLASSPATH"
570
+ echo "RUN_CMD = $RUN_CMD"
571
+ echo
572
+
573
+ if [ -f $JETTY_RUN/jetty.pid ]
574
+ then
575
+ echo "Jetty running pid="`cat $JETTY_RUN/jetty.pid`
576
+ exit 0
577
+ fi
578
+ exit 1
579
+ ;;
580
+
581
+ *)
582
+ usage
583
+ ;;
584
+ esac
585
+
586
+ exit 0
587
+
588
+
589
+