rhoconnect 3.1.2 → 3.2.0.beta1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (248) hide show
  1. data/CHANGELOG.md +14 -2
  2. data/CREDITS +151 -10
  3. data/Gemfile +16 -5
  4. data/Gemfile.lock +58 -23
  5. data/Rakefile +70 -50
  6. data/bench/bench_runner.rb +2 -2
  7. data/bench/benchapp/Gemfile +6 -0
  8. data/bench/benchapp/Gemfile.lock +5 -0
  9. data/bench/benchapp/config.ru +2 -0
  10. data/bench/lib/bench/cli.rb +2 -0
  11. data/bench/lib/bench/distr_runner.rb +3 -2
  12. data/bench/lib/bench/runner.rb +1 -1
  13. data/bench/lib/bench.rb +10 -1
  14. data/bench/run_bench.sh +1 -1
  15. data/bench/scripts/test_query_script.rb +2 -1
  16. data/bench/spec/bench_spec_helper.rb +1 -0
  17. data/bin/rhoconnect +9 -27
  18. data/bin/rhoconnect-benchmark +10 -1
  19. data/commands/commands/dtach_commands/dtach_about.rb +6 -0
  20. data/commands/commands/dtach_commands/dtach_install.rb +30 -0
  21. data/commands/commands/redis_commands/redis_about.rb +6 -0
  22. data/commands/commands/redis_commands/redis_attach.rb +6 -0
  23. data/commands/commands/redis_commands/redis_download.rb +33 -0
  24. data/commands/commands/redis_commands/redis_install.rb +26 -0
  25. data/commands/commands/redis_commands/redis_make.rb +9 -0
  26. data/commands/commands/redis_commands/redis_restart.rb +7 -0
  27. data/commands/commands/redis_commands/redis_runner.rb +67 -0
  28. data/commands/commands/redis_commands/redis_start.rb +6 -0
  29. data/commands/commands/redis_commands/redis_startbg.rb +6 -0
  30. data/commands/commands/redis_commands/redis_stop.rb +6 -0
  31. data/commands/commands/rhoconnect/attach.rb +7 -0
  32. data/commands/commands/rhoconnect/clean_start.rb +9 -0
  33. data/commands/commands/rhoconnect/config.rb +15 -0
  34. data/commands/commands/rhoconnect/console.rb +15 -0
  35. data/commands/commands/rhoconnect/console_helper.rb +3 -0
  36. data/commands/commands/rhoconnect/create_user.rb +18 -0
  37. data/commands/commands/rhoconnect/delete_device.rb +9 -0
  38. data/commands/commands/rhoconnect/delete_user.rb +8 -0
  39. data/commands/commands/rhoconnect/flushdb.rb +14 -0
  40. data/commands/commands/rhoconnect/get_token.rb +25 -0
  41. data/commands/commands/rhoconnect/reset.rb +16 -0
  42. data/commands/commands/rhoconnect/reset_refresh.rb +11 -0
  43. data/commands/commands/rhoconnect/restart.rb +7 -0
  44. data/commands/commands/rhoconnect/secret.rb +11 -0
  45. data/commands/commands/rhoconnect/set_admin_password.rb +26 -0
  46. data/commands/commands/rhoconnect/spec.rb +15 -0
  47. data/commands/commands/rhoconnect/start.rb +18 -0
  48. data/commands/commands/rhoconnect/startbg.rb +34 -0
  49. data/commands/commands/rhoconnect/startdebug.rb +35 -0
  50. data/commands/commands/rhoconnect/stop.rb +11 -0
  51. data/commands/commands/rhoconnect/war.rb +32 -0
  52. data/commands/commands/rhoconnect/web.rb +7 -0
  53. data/commands/execute.rb +35 -0
  54. data/commands/generators/app.rb +6 -0
  55. data/commands/generators/source.rb +6 -0
  56. data/commands/utilities/dtach_installed.rb +10 -0
  57. data/doc/benchmarks-running.txt +5 -0
  58. data/doc/command-line.txt +216 -27
  59. data/doc/heroku-addon.txt +1 -1
  60. data/doc/preparing-production.txt +20 -1
  61. data/doc/public/cli.txt +191 -0
  62. data/doc/push-backend-setup.txt +148 -0
  63. data/doc/push-client-setup.txt +61 -0
  64. data/doc/push-server-setup.txt +91 -0
  65. data/doc/push.txt +8 -137
  66. data/doc/rest-api.txt +96 -0
  67. data/doc/settings.txt +1 -1
  68. data/doc/supported-platforms.txt +2 -1
  69. data/doc/tutorial.txt +6 -4
  70. data/examples/simple/Gemfile +39 -0
  71. data/examples/simple/Rakefile +7 -12
  72. data/examples/simple/config.ru +16 -31
  73. data/examples/simple/settings/settings.yml +5 -4
  74. data/examples/simple/sources/product.rb +51 -0
  75. data/generators/templates/application/Gemfile +7 -0
  76. data/generators/templates/application/Rakefile +5 -18
  77. data/generators/templates/application/config.ru +11 -19
  78. data/install.sh +24 -49
  79. data/installer/unix-like/create_texts.rb +71 -123
  80. data/installer/unix-like/post_install.sh +3 -0
  81. data/installer/unix-like/post_uninstall.sh +2 -0
  82. data/installer/unix-like/pre_install.sh +5 -3
  83. data/installer/unix-like/pre_uninstall.sh +14 -6
  84. data/installer/unix-like/rho_connect_install_checkers.rb +1 -1
  85. data/installer/unix-like/rho_connect_install_constants.rb +6 -10
  86. data/installer/unix-like/rho_connect_install_debian.rb +2 -2
  87. data/installer/unix-like/rho_connect_install_dnd.rb +2 -5
  88. data/installer/unix-like/rho_connect_install_installers.rb +15 -23
  89. data/installer/unix-like/rho_connect_install_yum.rb +2 -2
  90. data/installer/utils/constants.rb +4 -4
  91. data/installer/utils/create_sha1.rb +1 -1
  92. data/installer/utils/nix_install_test.rb +32 -31
  93. data/installer/utils/nix_installation.rake +1 -1
  94. data/installer/utils/package_upload/repos.rake +34 -30
  95. data/installer/utils/package_upload/s3_upload.rb +3 -3
  96. data/lib/rhoconnect/api/source/fast_delete.rb +10 -0
  97. data/lib/rhoconnect/api/source/fast_insert.rb +10 -0
  98. data/lib/rhoconnect/api/source/fast_update.rb +10 -0
  99. data/lib/rhoconnect/api/source/get_source_params.rb +1 -1
  100. data/lib/rhoconnect/api/source/list_sources.rb +2 -2
  101. data/lib/rhoconnect/api/source/save_adapter.rb +1 -1
  102. data/lib/rhoconnect/api/source/update_source_params.rb +6 -0
  103. data/lib/rhoconnect/async.rb +82 -0
  104. data/lib/rhoconnect/bulk_data/bulk_data.rb +5 -1
  105. data/lib/rhoconnect/client_sync.rb +18 -3
  106. data/lib/rhoconnect/console/rhoconnect_api.rb +2 -2
  107. data/lib/rhoconnect/console/server.rb +5 -32
  108. data/lib/rhoconnect/console.rb +2 -2
  109. data/lib/rhoconnect/graph_helper.rb +225 -0
  110. data/lib/rhoconnect/jobs/bulk_data_job.rb +24 -2
  111. data/lib/rhoconnect/server.rb +31 -11
  112. data/lib/rhoconnect/source.rb +10 -5
  113. data/lib/rhoconnect/source_sync.rb +32 -2
  114. data/lib/rhoconnect/tasks.rb +19 -108
  115. data/lib/rhoconnect/test_methods.rb +20 -0
  116. data/lib/rhoconnect/utilities.rb +118 -0
  117. data/lib/rhoconnect/version.rb +1 -1
  118. data/lib/rhoconnect/web-console/controllers/admins.js +245 -0
  119. data/lib/rhoconnect/web-console/models/adapter.js +53 -0
  120. data/lib/rhoconnect/web-console/models/client.js +105 -0
  121. data/lib/rhoconnect/web-console/models/doc.js +113 -0
  122. data/lib/rhoconnect/web-console/models/session.js +40 -0
  123. data/lib/rhoconnect/web-console/models/source.js +115 -0
  124. data/lib/rhoconnect/web-console/models/stats.js +84 -0
  125. data/lib/rhoconnect/web-console/models/user.js +111 -0
  126. data/lib/rhoconnect/web-console/public/backbone.js +1432 -0
  127. data/lib/rhoconnect/web-console/public/bootstrap.css +3990 -0
  128. data/lib/rhoconnect/{console/app → web-console}/public/jqplot/excanvas.min.js +0 -0
  129. data/lib/rhoconnect/{console/app → web-console}/public/jqplot/jqplot.barRenderer.min.js +0 -0
  130. data/lib/rhoconnect/{console/app → web-console}/public/jqplot/jqplot.canvasAxisLabelRenderer.js +0 -0
  131. data/lib/rhoconnect/{console/app → web-console}/public/jqplot/jqplot.canvasAxisTickRenderer.js +0 -0
  132. data/lib/rhoconnect/{console/app → web-console}/public/jqplot/jqplot.canvasTextRenderer.js +0 -0
  133. data/lib/rhoconnect/{console/app → web-console}/public/jqplot/jqplot.categoryAxisRenderer.min.js +0 -0
  134. data/lib/rhoconnect/{console/app → web-console}/public/jqplot/jqplot.cursor.js +0 -0
  135. data/lib/rhoconnect/{console/app → web-console}/public/jqplot/jqplot.dateAxisRenderer.js +0 -0
  136. data/lib/rhoconnect/{console/app → web-console}/public/jqplot/jqplot.dateAxisRenderer.min.js +0 -0
  137. data/lib/rhoconnect/{console/app → web-console}/public/jqplot/jqplot.pointLabels.min.js +0 -0
  138. data/lib/rhoconnect/{console/app → web-console}/public/jqplot/jquery-1.4.2.min.js +0 -0
  139. data/lib/rhoconnect/{console/app → web-console}/public/jqplot/jquery.jqplot.min.css +0 -0
  140. data/lib/rhoconnect/{console/app → web-console}/public/jqplot/jquery.jqplot.min.js +0 -0
  141. data/lib/rhoconnect/web-console/public/jquery-1.7.1.min.js +154 -0
  142. data/lib/rhoconnect/web-console/public/rhoconnect-web.js +15 -0
  143. data/lib/rhoconnect/web-console/public/underscore.js +999 -0
  144. data/lib/rhoconnect/web-console/server.rb +55 -0
  145. data/lib/rhoconnect/web-console/templates/index.erb +90 -0
  146. data/lib/rhoconnect/web-console/templates/jqplot.erb +60 -0
  147. data/lib/rhoconnect/web-console/views/api_token.js +16 -0
  148. data/lib/rhoconnect/web-console/views/doc.js +63 -0
  149. data/lib/rhoconnect/web-console/views/edit_user.js +43 -0
  150. data/lib/rhoconnect/web-console/views/home.js +56 -0
  151. data/lib/rhoconnect/web-console/views/index.js +63 -0
  152. data/lib/rhoconnect/web-console/views/new_ping.js +58 -0
  153. data/lib/rhoconnect/web-console/views/new_user.js +29 -0
  154. data/lib/rhoconnect/web-console/views/server_doc.js +103 -0
  155. data/lib/rhoconnect/web-console/views/set_adapter.js +38 -0
  156. data/lib/rhoconnect/web-console/views/settings.js +53 -0
  157. data/lib/rhoconnect/web-console/views/show_device.js +56 -0
  158. data/lib/rhoconnect/web-console/views/show_user.js +38 -0
  159. data/lib/rhoconnect/web-console/views/source_docs.js +30 -0
  160. data/lib/rhoconnect/web-console/views/stats.js +69 -0
  161. data/lib/rhoconnect/web-console/views/users.js +20 -0
  162. data/lib/rhoconnect.rb +2 -1
  163. data/rhoconnect.gemspec +3 -1
  164. data/spec/api/application/rhoconnect_api_spec.rb +3 -5
  165. data/spec/api/source/fast_delete_spec.rb +27 -0
  166. data/spec/api/source/fast_insert_spec.rb +28 -0
  167. data/spec/api/source/fast_update_spec.rb +51 -0
  168. data/spec/api/source/get_source_params_spec.rb +1 -0
  169. data/spec/api/source/update_source_params_spec.rb +24 -0
  170. data/spec/async_spec.rb +19 -0
  171. data/spec/client_sync_spec.rb +19 -2
  172. data/spec/javascripts/PlayerSpec.js +58 -0
  173. data/spec/javascripts/admins_routes_spec.js +117 -0
  174. data/spec/javascripts/admins_spec.js +27 -0
  175. data/spec/javascripts/doc_view_spec.js +37 -0
  176. data/spec/javascripts/edit_user_view_spec.js +44 -0
  177. data/spec/javascripts/helpers/SpecHelper.js +9 -0
  178. data/spec/javascripts/helpers/jasmine-jquery.js +305 -0
  179. data/spec/javascripts/helpers/jasmine-sinon.js +43 -0
  180. data/spec/javascripts/helpers/sinon-1.3.2.js +3551 -0
  181. data/spec/javascripts/home_view_spec.js +39 -0
  182. data/spec/javascripts/index_view_spec.js +42 -0
  183. data/spec/javascripts/new_ping_view_spec.js +48 -0
  184. data/spec/javascripts/new_user_view_spec.js +42 -0
  185. data/spec/javascripts/server_doc_view_spec.js +39 -0
  186. data/spec/javascripts/set_adapter_view_spec.js +32 -0
  187. data/spec/javascripts/show_device_view_spec.js +41 -0
  188. data/spec/javascripts/show_user_view_spec.js +46 -0
  189. data/spec/javascripts/source_docs_view_spec.js +36 -0
  190. data/spec/javascripts/support/jasmine.yml +79 -0
  191. data/spec/javascripts/support/jasmine_config.rb +23 -0
  192. data/spec/javascripts/support/jasmine_runner.rb +32 -0
  193. data/spec/javascripts/users_view_spec.js +35 -0
  194. data/spec/jobs/bulk_data_job_spec.rb +10 -2
  195. data/spec/perf/bulk_data_perf_spec.rb +1 -0
  196. data/spec/server/server_spec.rb +3 -1
  197. data/spec/source_sync_spec.rb +14 -1
  198. data/spec/spec_helper.rb +51 -0
  199. data/spec/store_spec.rb +6 -0
  200. data/spec/test_methods_spec.rb +11 -0
  201. data/tasks/redis.rake +3 -1
  202. metadata +172 -64
  203. data/doc/contributing.txt +0 -60
  204. data/lib/rhoconnect/console/app/helpers/auth_helper.rb +0 -22
  205. data/lib/rhoconnect/console/app/helpers/extensions.rb +0 -19
  206. data/lib/rhoconnect/console/app/helpers/helpers.rb +0 -57
  207. data/lib/rhoconnect/console/app/public/ThickBox.css +0 -649
  208. data/lib/rhoconnect/console/app/public/home.css +0 -431
  209. data/lib/rhoconnect/console/app/public/images/foot_logo_rhoconnect.png +0 -0
  210. data/lib/rhoconnect/console/app/public/images/header_halo.jpg +0 -0
  211. data/lib/rhoconnect/console/app/public/images/land_separator.gif +0 -0
  212. data/lib/rhoconnect/console/app/public/images/landing_header.jpg +0 -0
  213. data/lib/rhoconnect/console/app/public/images/logo_rhoconnect.png +0 -0
  214. data/lib/rhoconnect/console/app/public/images/tabs_separator.png +0 -0
  215. data/lib/rhoconnect/console/app/public/main.css +0 -7
  216. data/lib/rhoconnect/console/app/public/reset.css +0 -76
  217. data/lib/rhoconnect/console/app/public/style.css +0 -2201
  218. data/lib/rhoconnect/console/app/public/text.txt +0 -0
  219. data/lib/rhoconnect/console/app/routes/adapter.rb +0 -28
  220. data/lib/rhoconnect/console/app/routes/auth.rb +0 -29
  221. data/lib/rhoconnect/console/app/routes/client.rb +0 -31
  222. data/lib/rhoconnect/console/app/routes/docs.rb +0 -145
  223. data/lib/rhoconnect/console/app/routes/heroku.rb +0 -19
  224. data/lib/rhoconnect/console/app/routes/home.rb +0 -63
  225. data/lib/rhoconnect/console/app/routes/timing.rb +0 -242
  226. data/lib/rhoconnect/console/app/routes/user.rb +0 -122
  227. data/lib/rhoconnect/console/app/views/adapter.erb +0 -16
  228. data/lib/rhoconnect/console/app/views/client.erb +0 -30
  229. data/lib/rhoconnect/console/app/views/content.erb +0 -14
  230. data/lib/rhoconnect/console/app/views/doc.erb +0 -8
  231. data/lib/rhoconnect/console/app/views/docdata.erb +0 -28
  232. data/lib/rhoconnect/console/app/views/docs.erb +0 -30
  233. data/lib/rhoconnect/console/app/views/edituser.erb +0 -13
  234. data/lib/rhoconnect/console/app/views/headermenu.erb +0 -40
  235. data/lib/rhoconnect/console/app/views/home.erb +0 -24
  236. data/lib/rhoconnect/console/app/views/index.erb +0 -58
  237. data/lib/rhoconnect/console/app/views/jqplot.erb +0 -52
  238. data/lib/rhoconnect/console/app/views/layout.erb +0 -153
  239. data/lib/rhoconnect/console/app/views/login.erb +0 -26
  240. data/lib/rhoconnect/console/app/views/newuser.erb +0 -17
  241. data/lib/rhoconnect/console/app/views/ping.erb +0 -40
  242. data/lib/rhoconnect/console/app/views/result.erb +0 -11
  243. data/lib/rhoconnect/console/app/views/rightboxlinks.erb +0 -15
  244. data/lib/rhoconnect/console/app/views/select_doc.erb +0 -17
  245. data/lib/rhoconnect/console/app/views/upload_doc.erb +0 -23
  246. data/lib/rhoconnect/console/app/views/user.erb +0 -29
  247. data/lib/rhoconnect/console/app/views/users.erb +0 -19
  248. data/lib/rhoconnect/server/views/index.erb +0 -13
data/CHANGELOG.md CHANGED
@@ -1,7 +1,19 @@
1
+ ## 3.2.0.beta1 (2012-04-20)
2
+ * Rhoconnect commands (replacement for rake tasks)
3
+ * Async framework is introduced for rubies 1.9.x (no 1.8.7 or JRuby support)
4
+ * 26384435 - Rhoconnect Linux installer should use ruby-1.9.3-p125 as a default ruby
5
+ * 27612327 - Bulk Sync Not Returning Errors from Zendesk ticket #2336
6
+ * Rhoconnect production stack is updated for full support of async framework (nginx as reverse proxy server, thin app server)
7
+ * #28219647 - Schema Change Error from Zendesk ticket #2353
8
+ * #28328057 - Feature Request: Adding a Bulk Data Job after_perform hook from Zendesk ticket #2367
9
+ * #28330213 - Implementing fast_insert/update/delete API
10
+
1
11
  ## 3.1.2 (2012-04-02)
2
- * #19297819 - Refactor server middleware loading to be static
3
- * #25292219 - Ensure that Store.get_zdata always returns valid array (even if it is empty)
12
+ * #19297819 - Refactor server middleware loading to be static
13
+ * #25292219 - Ensure that Store.get_zdata always returns valid array (even if it is empty)
14
+ * #26310661 - No test_search
4
15
  * #26868157 - bug in install.sh in rhoconnect installer
16
+ * #26384435 - Replace in rhoconnect installer Ruby Enterprise by latest stable Ruby 1.9.3
5
17
  * #27184633 - Fixing error with recursive loading of application.rb in ruby-1.8.7 and ree
6
18
  * use redis 2.4.10 by default
7
19
 
data/CREDITS CHANGED
@@ -3,25 +3,25 @@ RhoConnect uses following other projects:
3
3
  Ruby language 1.8.7 (http://www.ruby-lang.org/en/downloads/)
4
4
  License: GPL or Ruby own license (http://www.ruby-lang.org/en/about/license.txt)
5
5
 
6
- Redis 2.2.x (http://redis.io)
6
+ Redis 2.4.x (http://redis.io)
7
7
  License: BSD (https://github.com/antirez/redis/blob/master/COPYING)
8
8
 
9
- Resque 1.13.0 (https://github.com/defunkt/resque)
9
+ Resque 1.20.0 (https://github.com/defunkt/resque)
10
10
  License: MIT-like (https://github.com/defunkt/resque/blob/master/LICENSE)
11
11
 
12
- Sinatra 1.1.3 (http://www.sinatrarb.com/)
12
+ Sinatra 1.3.x (http://www.sinatrarb.com/)
13
13
  License: MIT-like (https://github.com/sinatra/sinatra/blob/master/LICENSE)
14
14
 
15
- sqlite3-ruby 1.2.5 (http://github.com/luislavena/sqlite3-ruby)
15
+ sqlite3 1.3.5 (http://github.com/luislavena/sqlite3-ruby)
16
16
  License: MIT-like (https://github.com/luislavena/sqlite3-ruby/blob/master/LICENSE)
17
17
 
18
18
  uuidtools 2.1.1 (https://github.com/sporkmonger/uuidtools/)
19
19
  License: MIT-like (https://github.com/sporkmonger/uuidtools/blob/master/LICENSE)
20
20
 
21
- rest-client 1.6.1 (https://github.com/archiloque/rest-client)
21
+ rest-client 1.6.7 (https://github.com/archiloque/rest-client)
22
22
  License: MIT (http://www.opensource.org/licenses/mit-license.php)
23
23
 
24
- json 1.4.6 (http://flori.github.com/json/)
24
+ json 1.6.6 (http://flori.github.com/json/)
25
25
  License: GPL2 or Ruby (http://www.ruby-lang.org/en/LICENSE.txt)
26
26
 
27
27
  templater 1.0.0 (https://github.com/jnicklas/templater)
@@ -30,14 +30,155 @@ RhoConnect uses following other projects:
30
30
  Apache 2.2 (http://httpd.apache.org)
31
31
  License: Apache License 2.0 (http://www.apache.org/licenses/LICENSE-2.0)
32
32
 
33
- thin 1.2.8 (https://github.com/macournoyer/thin)
33
+ thin 1.3.1 (https://github.com/macournoyer/thin)
34
34
  License: MIT (https://github.com/macournoyer/thin/blob/master/COPYING)
35
35
 
36
- bundler 1.0.10 (http://gembundler.com/)
36
+ bundler 1.1.3 (http://gembundler.com/)
37
37
  License: MIT (http://www.opensource.org/licenses/mit-license.php)
38
38
 
39
- Nginx 1.0.6 (http://www.nginx.org/)
39
+ Nginx 1.0.14 (http://www.nginx.org/)
40
40
  License: 2-clause BSD-like (http://nginx.org/LICENSE)
41
41
 
42
- fpm 0.3.9 (https://github.com/jordansissel/fpm)
42
+ fpm 0.4.5 (https://github.com/jordansissel/fpm)
43
43
  License: MIT (https://github.com/jordansissel/fpm/blob/master/LICENSE)
44
+
45
+
46
+ Ruby Enterprise Edition ree-1.8.7-2012.02 (http://www.rubyenterpriseedition.com/download.html)
47
+ Ruby language 1.9.2-p318 (http://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.2-p318.tar.gz)
48
+ Ruby language 1.9.3-p125 (http://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.3-p125.tar.gz)
49
+ License: GPL or Ruby own license (http://www.ruby-lang.org/en/about/license.txt)
50
+
51
+ Ruby language on JVM JRuby-1.6.7 (http://jruby.org/download)
52
+ License: A three-way CPL/GPL/LGP license (http://torquebox.org/2x/builds/html-docs/license-jruby.html)
53
+
54
+ sqlite 3.7.7.1 (http://www.sqlite.org/download.html)
55
+ License: Public domain (http://www.sqlite.org/copyright.html)
56
+
57
+ phusion passenger 3.0.11 (http://www.modrails.com/install.html)
58
+ License: MIT License (http://en.wikipedia.org/wiki/MIT_License)
59
+
60
+ rake 0.9.2.2 (http://rubygems.org/downloads/rake-0.9.2.2.gem)
61
+ License: MIT-style license (http://www.opensource.org/licenses/mit-license.php)
62
+
63
+ rack 1.4.1 (http://github.com/rack/rack)
64
+ License: MIT License (http://www.opensource.org/licenses/mit-license.php)
65
+
66
+ async-rack 0.5.1 (http://rubygems.org/downloads/async-rack-0.5.1.gem)
67
+ License: MIT License (https://github.com/rkh/async-rack/blob/master/LICENSE)
68
+
69
+ rack-fiber_pool 0.9.2 (http://rubygems.org/downloads/rack-fiber_pool-0.9.2.gem)
70
+ License: MIT License (https://github.com/mperham/rack-fiber_pool/blob/master/LICENSE)
71
+
72
+ rack-protection 1.2.0 (http://rubygems.org/downloads/rack-protection-1.2.0.gem)
73
+ License: MIT License (https://github.com/rkh/rack-protection/blob/master/License)
74
+
75
+ eventmachine 0.12.10 (http://rubygems.org/downloads/eventmachine-0.12.10.gem)
76
+ License: GPL or Ruby�s License (https://github.com/eventmachine/eventmachine/blob/master/LICENSE)
77
+
78
+ diff-lcs 1.1.3 (http://rubygems.org/downloads/diff-lcs-1.1.3.gem)
79
+ License: MIT license (https://github.com/halostatue/diff-lcs/blob/master/License.rdoc)
80
+
81
+ extlib 0.9.15 (http://rubygems.org/downloads/extlib-0.9.15.gem)
82
+ License: MIT license (https://github.com/datamapper/extlib/blob/master/LICENSE)
83
+
84
+ highline 1.6.11 (http://rubygems.org/downloads/highline-1.6.11.gem)
85
+ License: MIT license (https://github.com/JEG2/highline/blob/master/LICENSE)
86
+
87
+ mime-types 1.18 (http://rubygems.org/downloads/mime-types-1.18.gem)
88
+ License: Ruby�s licence, the Perl Artistic licence, or the GNU GPL version 2 (http://www.ruby-lang.org/en/LICENSE.txt)
89
+
90
+ multi_json 1.2.0 (http://rubygems.org/downloads/multi_json-1.2.0.gem)
91
+ License: MIT license (https://github.com/intridea/multi_json/blob/master/LICENSE.md)
92
+
93
+ redis 2.2.2 (http://rubygems.org/downloads/redis-2.2.2.gem)
94
+ License: MIT license (https://github.com/ezmobius/redis-rb/blob/master/LICENSE)
95
+
96
+ redis-namespace 1.0.3 (http://rubygems.org/downloads/redis-namespace-1.1.0.gem)
97
+ License: MIT license (https://github.com/defunkt/redis-namespace/blob/master/LICENSE)
98
+
99
+ rubyzip 0.9.6.1 (http://rubygems.org/downloads/rubyzip-0.9.6.1.gem)
100
+ License: Ruby own license (http://www.ruby-lang.org/en/LICENSE.txt)
101
+
102
+ tilt 1.3.3 (http://rubygems.org/downloads/tilt-1.3.3.gem)
103
+ License: MIT license (https://github.com/rtomayko/tilt/blob/master/COPYING)
104
+
105
+ vegas 0.1.11 (http://rubygems.org/downloads/vegas-0.1.11.gem)
106
+ License: MIT license (http://www.opensource.org/licenses/mit-license.php)
107
+
108
+ rspec 2.9.0 (http://rubygems.org/downloads/rspec-2.9.0.gem)
109
+ License: MIT license (https://github.com/rspec/rspec/blob/master/License.txt)
110
+
111
+ simplecov 0.6.1 (http://rubygems.org/downloads/simplecov-0.6.1.gem)
112
+ License: MIT license (https://github.com/colszowka/simplecov/blob/master/LICENSE)
113
+
114
+ webmock 1.8.6 (http://rubygems.org/downloads/webmock-1.8.6.gem)
115
+ License: MIT license (https://github.com/bblimke/webmock/blob/master/LICENSE)
116
+
117
+ addressable 2.2.7 (http://rubygems.org/downloads/addressable-2.2.7.gem)
118
+ License: Apache 2.0 (https://github.com/sporkmonger/addressable/blob/master/LICENSE)
119
+
120
+ arr-pm 0.0.7 (http://rubygems.org/downloads/arr-pm-0.0.7.gem)
121
+ License: Apache 2.0 (http://www.opensource.org/licenses/mit-license.php)
122
+
123
+ aws-s3 0.6.2 (http://rubygems.org/downloads/aws-s3-0.6.2.gem)
124
+ License: MIT license (https://github.com/marcel/aws-s3/blob/master/COPYING)
125
+
126
+ backports 2.3.0 (http://rubygems.org/downloads/backports-2.5.1.gem)
127
+ License: MIT license (https://github.com/marcandre/backports/blob/master/LICENSE)
128
+
129
+ builder 3.0.0 (http://rubygems.org/downloads/builder-3.0.0.gem)
130
+ License: MIT license (http://www.opensource.org/licenses/mit-license.html)
131
+
132
+ cabin 0.4.4 (http://rubygems.org/downloads/cabin-0.4.4.gem)
133
+ License: Apache 2.0 (https://github.com/jordansissel/ruby-cabin/blob/master/LICENSE)
134
+
135
+ clamp 0.3.1 (http://rubygems.org/downloads/clamp-0.3.1.gem)
136
+ License: MIT license (https://github.com/mdub/clamp/blob/master/README.markdown)
137
+
138
+ crack 0.3.1 (http://rubygems.org/downloads/crack-0.3.1.gem)
139
+ License: MIT license (https://github.com/jnunemaker/crack/blob/master/LICENSE)
140
+
141
+ excon 0.13.3 (http://rubygems.org/downloads/excon-0.13.3.gem)
142
+ License: MIT license (http://www.opensource.org/licenses/mit-license.html)
143
+
144
+ ffaker 1.14.0 (http://rubygems.org/downloads/ffaker-1.14.0.gem)
145
+ License: MIT license (https://github.com/EmmanuelOga/ffaker/blob/master/LICENSE)
146
+
147
+ fog 1.3.1 (http://rubygems.org/downloads/fog-1.3.1.gem)
148
+ License: MIT license (http://www.opensource.org/licenses/mit-license.html)
149
+
150
+ formatador 0.2.1 (http://rubygems.org/downloads/formatador-0.2.1.gem)
151
+ License: MIT license (http://www.opensource.org/licenses/mit-license.html)
152
+
153
+ xml-simple 1.1.1 (http://rubygems.org/downloads/xml-simple-1.1.1.gem)
154
+ License: MIT license (http://www.opensource.org/licenses/mit-license.html)
155
+
156
+ net-scp 1.0.4 (http://rubygems.org/downloads/net-scp-1.0.4.gem)
157
+ License: MIT license (https://github.com/net-ssh/net-scp/blob/master/README.rdoc)
158
+
159
+ net-ssh 2.3.0 (http://rubygems.org/downloads/net-ssh-2.3.0.gem)
160
+ License: MIT license (https://github.com/net-ssh/net-ssh/blob/master/README.rdoc)
161
+
162
+ nokogiri 1.5.2 (http://rubygems.org/downloads/nokogiri-1.5.2.gem)
163
+ License: MIT license (https://github.com/tenderlove/nokogiri/blob/master/README.rdoc)
164
+
165
+ thor 0.14.6 (http://rubygems.org/downloads/thor-0.14.6.gem)
166
+ License: MIT license (https://github.com/wycats/thor/blob/master/LICENSE.md)
167
+
168
+ SystemTimer 1.2.3 (http://rubygems.org/downloads/SystemTimer-1.2.3.gem)
169
+ License: The Ruby License (http://www.ruby-lang.org/en/about/license.txt)
170
+
171
+ jdbc-sqlite3 3.7.2 (http://rubygems.org/downloads/jdbc-sqlite3-3.7.2.gem)
172
+ License: BSD license (http://rubyforge.org/softwaremap/trove_list.php?form_cat=187)
173
+
174
+ dbi 0.4.5 (http://rubygems.org/downloads/dbi-0.4.5.gem)
175
+ License: BSD license (http://rubyforge.org/softwaremap/trove_list.php?form_cat=187)
176
+
177
+ dbd-jdbc 0.1.4 (http://rubygems.org/downloads/dbd-jdbc-0.1.4.gem)
178
+ License: BSD license (http://rubyforge.org/softwaremap/trove_list.php?form_cat=187)
179
+
180
+ jruby-openssl 0.7.4 (http://rubygems.org/downloads/jruby-openssl-0.7.6.1.gem)
181
+ License: the same license as JRuby (https://github.com/jruby/jruby-ossl/blob/master/License.txt)
182
+
183
+ warbler 1.3.5 (http://rubygems.org/downloads/warbler-1.3.5.gem)
184
+ License: MIT license (http://caldersphere.rubyforge.org/warbler/LICENSE_txt.html)
data/Gemfile CHANGED
@@ -5,6 +5,14 @@ gemspec
5
5
 
6
6
  gem 'win32-process', :platforms => [:mswin, :mingw]
7
7
 
8
+ # for async framework
9
+ # for Async, Eventful execution
10
+ platforms :ruby_19 do
11
+ gem 'eventmachine'
12
+ gem 'rack-fiber_pool'
13
+ gem 'async-rack'
14
+ end
15
+
8
16
  platforms :jruby do
9
17
  gem 'jdbc-sqlite3', ">= 3.7.2"
10
18
  gem 'dbi', ">= 0.4.5"
@@ -16,17 +24,20 @@ end
16
24
  group :development do
17
25
  gem 'aws-s3', '>= 0.6.2', :require => 'aws/s3'
18
26
  gem 'sqlite3', ">= 1.3.3", :platforms => [:ruby, :mswin, :mingw]
19
- gem 'fpm', '0.3.11'
20
27
  gem 'fog', '>= 1.1.0'
21
- gem 'ffaker', '~> 1.12.1'
22
- gem 'thor', '>= 0.13.6'
23
- gem 'webmock', '~> 1.6.4'
28
+ gem 'ffaker', '~> 1.14.0'
29
+ gem 'webmock', '~> 1.8.6'
24
30
  gem 'SystemTimer', '~> 1.2.3', :platforms => :ruby_18
25
31
  end
26
32
 
27
33
  group :test do
28
- gem 'rspec', '~> 2.8.0'
34
+ gem 'rspec', '~> 2.9.0'
29
35
  gem "rcov", '~> 1.0.0', :require => false, :platforms => :ruby_18
30
36
  gem 'simplecov', :require => false, :platforms => [:ruby_19,:jruby]
31
37
  gem 'rack-test', '>= 0.5.3', :require => 'rack/test'
38
+ gem 'jasmine'
39
+ end
40
+
41
+ group :build do
42
+ gem 'fpm', '>= 0.4.6'
32
43
  end
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- rhoconnect (3.1.2)
4
+ rhoconnect (3.2.0.beta1)
5
5
  bundler (~> 1.0)
6
6
  json (~> 1.6.0)
7
7
  rake (~> 0.9.2)
@@ -11,6 +11,7 @@ PATH
11
11
  rubyzip (~> 0.9.4)
12
12
  sinatra (~> 1.3)
13
13
  templater (~> 1.0.0)
14
+ thor (~> 0.14.6)
14
15
  uuidtools (>= 2.1.1)
15
16
 
16
17
  GEM
@@ -18,16 +19,28 @@ GEM
18
19
  specs:
19
20
  SystemTimer (1.2.3)
20
21
  addressable (2.2.7)
22
+ arr-pm (0.0.7)
23
+ cabin (> 0)
24
+ async-rack (0.5.1)
25
+ rack (~> 1.1)
21
26
  aws-s3 (0.6.2)
22
27
  builder
23
28
  mime-types
24
29
  xml-simple
30
+ backports (2.3.0)
25
31
  builder (3.0.0)
32
+ cabin (0.4.4)
33
+ json
34
+ childprocess (0.3.2)
35
+ ffi (~> 1.0.6)
36
+ clamp (0.3.1)
26
37
  crack (0.3.1)
27
38
  diff-lcs (1.1.3)
28
- excon (0.13.2)
39
+ eventmachine (0.12.10)
40
+ excon (0.13.4)
29
41
  extlib (0.9.15)
30
- ffaker (1.12.1)
42
+ ffaker (1.14.0)
43
+ ffi (1.0.11)
31
44
  fog (1.3.1)
32
45
  builder
33
46
  excon (~> 0.13.0)
@@ -39,17 +52,30 @@ GEM
39
52
  nokogiri (~> 1.5.0)
40
53
  ruby-hmac
41
54
  formatador (0.2.1)
42
- fpm (0.3.11)
55
+ fpm (0.4.6)
56
+ arr-pm (~> 0.0.7)
57
+ backports (= 2.3.0)
58
+ cabin (~> 0.4.3)
59
+ clamp
43
60
  json
44
61
  highline (1.6.11)
62
+ jasmine (1.1.2)
63
+ jasmine-core (>= 1.1.0)
64
+ rack (>= 1.1)
65
+ rspec (>= 1.3.1)
66
+ selenium-webdriver (>= 0.1.3)
67
+ jasmine-core (1.1.0)
45
68
  json (1.6.6)
69
+ libwebsocket (0.1.3)
70
+ addressable
46
71
  mime-types (1.18)
47
- multi_json (1.2.0)
72
+ multi_json (1.3.2)
48
73
  net-scp (1.0.4)
49
74
  net-ssh (>= 1.99.1)
50
75
  net-ssh (2.3.0)
51
76
  nokogiri (1.5.2)
52
77
  rack (1.4.1)
78
+ rack-fiber_pool (0.9.2)
53
79
  rack-protection (1.2.0)
54
80
  rack
55
81
  rack-test (0.6.1)
@@ -66,25 +92,31 @@ GEM
66
92
  vegas (~> 0.1.2)
67
93
  rest-client (1.6.7)
68
94
  mime-types (>= 1.16)
69
- rspec (2.8.0)
70
- rspec-core (~> 2.8.0)
71
- rspec-expectations (~> 2.8.0)
72
- rspec-mocks (~> 2.8.0)
73
- rspec-core (2.8.0)
74
- rspec-expectations (2.8.0)
75
- diff-lcs (~> 1.1.2)
76
- rspec-mocks (2.8.0)
95
+ rspec (2.9.0)
96
+ rspec-core (~> 2.9.0)
97
+ rspec-expectations (~> 2.9.0)
98
+ rspec-mocks (~> 2.9.0)
99
+ rspec-core (2.9.0)
100
+ rspec-expectations (2.9.1)
101
+ diff-lcs (~> 1.1.3)
102
+ rspec-mocks (2.9.0)
77
103
  ruby-hmac (0.4.0)
78
- rubyzip (0.9.6.1)
79
- simplecov (0.6.1)
104
+ rubyzip (0.9.7)
105
+ selenium-webdriver (2.21.2)
106
+ childprocess (>= 0.2.5)
107
+ ffi (~> 1.0)
108
+ libwebsocket (~> 0.1.3)
80
109
  multi_json (~> 1.0)
110
+ rubyzip
111
+ simplecov (0.6.2)
112
+ multi_json (~> 1.3)
81
113
  simplecov-html (~> 0.5.3)
82
114
  simplecov-html (0.5.3)
83
115
  sinatra (1.3.2)
84
116
  rack (~> 1.3, >= 1.3.6)
85
117
  rack-protection (~> 1.2)
86
118
  tilt (~> 1.3, >= 1.3.3)
87
- sqlite3 (1.3.5)
119
+ sqlite3 (1.3.6)
88
120
  templater (1.0.0)
89
121
  diff-lcs (>= 1.1.2)
90
122
  extlib (>= 0.9.5)
@@ -94,8 +126,8 @@ GEM
94
126
  uuidtools (2.1.2)
95
127
  vegas (0.1.11)
96
128
  rack (>= 1.0.0)
97
- webmock (1.6.4)
98
- addressable (~> 2.2, > 2.2.5)
129
+ webmock (1.8.6)
130
+ addressable (>= 2.2.7)
99
131
  crack (>= 0.1.7)
100
132
  xml-simple (1.1.1)
101
133
 
@@ -104,21 +136,24 @@ PLATFORMS
104
136
 
105
137
  DEPENDENCIES
106
138
  SystemTimer (~> 1.2.3)
139
+ async-rack
107
140
  aws-s3 (>= 0.6.2)
108
141
  dbd-jdbc (>= 0.1.4)
109
142
  dbi (>= 0.4.5)
110
- ffaker (~> 1.12.1)
143
+ eventmachine
144
+ ffaker (~> 1.14.0)
111
145
  fog (>= 1.1.0)
112
- fpm (= 0.3.11)
146
+ fpm (>= 0.4.6)
147
+ jasmine
113
148
  jdbc-sqlite3 (>= 3.7.2)
114
149
  jruby-openssl (>= 0.7.4)
150
+ rack-fiber_pool
115
151
  rack-test (>= 0.5.3)
116
152
  rcov (~> 1.0.0)
117
153
  rhoconnect!
118
- rspec (~> 2.8.0)
154
+ rspec (~> 2.9.0)
119
155
  simplecov
120
156
  sqlite3 (>= 1.3.3)
121
- thor (>= 0.13.6)
122
157
  warbler
123
- webmock (~> 1.6.4)
158
+ webmock (~> 1.8.6)
124
159
  win32-process
data/Rakefile CHANGED
@@ -1,6 +1,6 @@
1
1
  require 'rubygems'
2
2
  require 'bundler'
3
- Bundler.setup(:default, :development, :test)
3
+ Bundler.setup(:default, :development, :test, :build)
4
4
 
5
5
  load 'tasks/redis.rake'
6
6
  load 'installer/utils/nix_installation.rake'
@@ -17,17 +17,17 @@ task :spec => 'spec:spec'
17
17
  begin
18
18
  require 'rspec/core/rake_task'
19
19
 
20
- TYPES = {
21
- :spec => 'spec/*_spec.rb',
22
- :perf => 'spec/perf/*_spec.rb',
20
+ TYPES = {
21
+ :spec => 'spec/*_spec.rb',
22
+ :perf => 'spec/perf/*_spec.rb',
23
23
  :server => 'spec/server/*_spec.rb',
24
- :api => 'spec/api/**/*_spec.rb',
25
- :bulk => 'spec/bulk_data/*_spec.rb',
26
- :jobs => 'spec/jobs/*_spec.rb',
24
+ :api => 'spec/api/**/*_spec.rb',
25
+ :bulk => 'spec/bulk_data/*_spec.rb',
26
+ :jobs => 'spec/jobs/*_spec.rb',
27
27
  :stats => 'spec/stats/*_spec.rb',
28
- :ping => 'spec/ping/*_spec.rb',
28
+ :ping => 'spec/ping/*_spec.rb',
29
29
  :generator => 'spec/generator/*_spec.rb',
30
- :bench => 'bench/spec/*_spec.rb'
30
+ :bench => 'bench/spec/*_spec.rb'
31
31
  }
32
32
 
33
33
  TYPES.each do |type,files|
@@ -43,7 +43,6 @@ begin
43
43
  RSpec::Core::RakeTask.new('spec:all') do |t|
44
44
  t.rspec_opts = ["-b", "-c", "-fd"]
45
45
  t.pattern = FileList[TYPES.values]
46
- # FIXME: Ruby 1.9 is not supported by rcov. Please switch to simplecov
47
46
  unless RUBY_VERSION =~ /1.9/ || defined?(JRUBY_VERSION)
48
47
  require 'rcov/rcovtask'
49
48
  t.rcov = true
@@ -58,8 +57,17 @@ begin
58
57
  end
59
58
 
60
59
  rescue LoadError => e
61
- puts "rspec / rcov not available. Install with: "
62
- puts "gem install rspec rcov\n\n"
60
+ # Array of groups whose gems are not installed
61
+ # if bundle install called with the --without option
62
+ unless Bundler.settings.without.include? :test
63
+ if RUBY_VERSION =~ /1.9/
64
+ puts "rspec / simplecov not available. Install with: "
65
+ puts "gem install rspec simplecov\n\n"
66
+ else
67
+ puts "rspec / rcov not available. Install with: "
68
+ puts "gem install rspec rcov\n\n"
69
+ end
70
+ end
63
71
  end
64
72
 
65
73
  # desc "Build rhoconnect gem"
@@ -95,59 +103,60 @@ end
95
103
 
96
104
  # Debian and RPM package building tasks
97
105
  def build_pkg(dist, arch, deps, use_bench_tarball=false)
98
- start_dir = `pwd`.strip
99
- workspace = "#{start_dir}/pkg/workspace"
100
- version = Rhoconnect::VERSION
101
- description = '"Rhoconnect production environment"'
102
- post_install = "#{workspace}/unix-like/post-install.sh"
103
- prefix = "/opt/rhoconnect/installer"
104
- gem_name = "rhoconnect-#{version}.gem"
105
- pre_install = "#{workspace}/unix-like/pre_install.sh"
106
- post_install = "#{workspace}/unix-like/post_install.sh"
107
- pre_uninstall = "#{workspace}/unix-like/pre_uninstall.sh"
108
- post_uninstall = "#{workspace}/unix-like/post_uninstall.sh"
109
-
110
- Dir.mkdir("#{workspace}")
111
- Dir.mkdir("#{workspace}/unix-like")
112
-
113
- # Copy all necessary Files into the workspace
114
- system("cp install.sh Gemfile Gemfile.lock #{workspace}")
115
- system("cp -r installer/unix-like/* #{workspace}/unix-like")
116
- system("cp pkg/#{gem_name} #{workspace}")
106
+ build_dir = "/tmp/rhobuild"
107
+ version = Rhoconnect::VERSION
108
+ description = '"Rhoconnect production environment"'
109
+ prefix = "/opt/rhoconnect/installer"
110
+ gem_name = "rhoconnect-#{version}.gem"
111
+
112
+ before_install_script = "#{build_dir}/unix-like/pre_install.sh"
113
+ after_install_script = "#{build_dir}/unix-like/post_install.sh"
114
+ before_remove_script = "#{build_dir}/unix-like/pre_uninstall.sh"
115
+ after_remove_script = "#{build_dir}/unix-like/post_uninstall.sh"
116
+
117
+ `rm -rf #{build_dir}` if File.exist?("#{build_dir}")
118
+ Dir.mkdir("#{build_dir}")
119
+ Dir.mkdir("#{build_dir}/unix-like")
120
+
121
+ # Copy all necessary Files into the build_dir
122
+ Dir.chdir(File.expand_path(File.dirname(__FILE__)))
123
+ system("cp install.sh Gemfile Gemfile.lock #{build_dir}")
124
+ system("cp -r installer/unix-like/*.sh #{build_dir}/unix-like")
125
+ system("cp -r installer/unix-like/*.rb #{build_dir}/unix-like")
126
+ system("cp pkg/#{gem_name} #{build_dir}")
117
127
 
118
128
  # Create bench tarball
119
- `git archive --format=tar --prefix=bench/ HEAD:bench | gzip > #{workspace}/bench.tar.gz` if use_bench_tarball
129
+ `git archive --format=tar --prefix=bench/ HEAD:bench | gzip > #{build_dir}/bench.tar.gz` if use_bench_tarball
120
130
 
121
131
  # cd into the pkg dir so that fpm will create the package into the pkg dir.
122
132
  Dir.chdir("./pkg")
123
133
 
124
134
  # Construct fpm command
125
- fpm_cmd = "fpm -s dir -t #{dist} -n rhoconnect -v #{version} -a #{arch} -C #{workspace} " +
126
- "--pre-install #{pre_install} --post-install #{post_install} " +
127
- "--pre-uninstall #{pre_uninstall} --post-uninstall #{post_uninstall} " +
128
- "--prefix #{prefix} --description #{description}"
135
+ fpm_cmd = "fpm -s dir -t #{dist} -n rhoconnect -v #{version} -a #{arch} -C #{build_dir} " +
136
+ "--before-install #{before_install_script} --after-install #{after_install_script} " +
137
+ "--before-remove #{before_remove_script} --after-remove #{after_remove_script} " +
138
+ "--prefix #{prefix} --description #{description}"
129
139
 
130
140
  # Add the list of dependencies to the fpm call
131
- deps.each do |dep|
132
- fpm_cmd << " -d '#{dep}'"
133
- end #do
141
+ deps.each { |dep| fpm_cmd << " -d '#{dep}'" }
142
+ fpm_cmd << " './'"
134
143
 
135
144
  # Create the package
136
145
  system(fpm_cmd)
137
146
  # Leave no trace...
138
- system("rm -rf #{workspace}")
139
-
140
- Dir.chdir(start_dir)
141
- end #build_pkg
147
+ system("rm -rf #{build_dir}")
148
+ end
142
149
 
143
150
  DEB_DEPS = [
144
151
  "wget (>= 1.0)", "make (>= 3.0)", "patch (>= 2.0)",
145
- "build-essential (>= 0)",
152
+ "build-essential (>= 0)", "libc6-dev (>= 0)",
153
+ "autoconf (>= 0.0)", "automake (>= 0.0)", "libtool (>= 0.0)",
146
154
  "zlib1g (>= 1.2.3)", "zlib1g-dev (>= 1.2.3)",
147
- "libssl0.9.8 (>= 0)", "libssl-dev (>= 0.9.8)",
155
+ "openssl (>= 1.0.0)", "libssl1.0.0 (>= 0)", "libssl-dev (>= 1.0.0)",
148
156
  "libcurl4-openssl-dev (>= 0)",
149
- "libreadline6 (>= 0)", "libreadline6-dev (>= 0)"
150
- # "libsqlite3-0 (>= 3.6.22-1)", "libsqlite3-dev (>= 3.6.22-1)"
157
+ "libreadline6 (>= 0)", "libreadline6-dev (>= 0)",
158
+ "libyaml-dev (>= 0)", "libxml2-dev (>= 0)",
159
+ "libpcre3 (>=0)", "libpcre3-dev (>=0)"
151
160
  ]
152
161
 
153
162
  desc "Build Debian DEB rhoconnect-#{Rhoconnect::VERSION}_all.deb package into the pkg directory"
@@ -156,16 +165,27 @@ task "build:deb" => :build do
156
165
  end
157
166
 
158
167
  RPM_DEPS = [
159
- "wget >= 1.0", "make >= 3.0", "patch >= 2.0",
160
- "gcc-c++ >= 4.1.2",
168
+ "wget >= 1.0", "make >= 3.0", "patch >= 2.0", "gcc-c++ >= 4.1.2",
169
+ "autoconf >= 0.0", "automake >= 0.0", "libtool >= 0.0",
161
170
  "zlib >= 1.2.3", "zlib-devel >= 1.2.3",
162
171
  "curl >= 7.15.5", "curl-devel >= 7.15.5",
163
172
  "pcre >= 6.6", "pcre-devel >= 6.6",
164
173
  "openssl >= 0.9.8e", "openssl-devel >= 0.9.8e",
165
- "readline >= 5.1", "readline-devel >= 5.1"
174
+ "readline >= 5.1", "readline-devel >= 5.1",
175
+ "libyaml >= 0.0", "libyaml-devel >= 0.0",
176
+ "libffi >= 0", "libffi-devel >= 0"
166
177
  ]
167
178
 
168
179
  desc "Build Red Hat RPM rhoconnect-#{Rhoconnect::VERSION}.noarch.rpm package into the pkg directory"
169
180
  task "build:rpm" => :build do
170
181
  build_pkg "rpm", "noarch", RPM_DEPS
171
182
  end
183
+
184
+ begin
185
+ require 'jasmine'
186
+ load 'jasmine/tasks/jasmine.rake'
187
+ rescue LoadError
188
+ task :jasmine do
189
+ abort "Jasmine is not available. In order to run jasmine, you must: (sudo) gem install jasmine"
190
+ end
191
+ end
@@ -12,7 +12,7 @@ begin
12
12
  # Check for another instance of rhoconnect application
13
13
  raise "Another instance of bench application is running." unless `cat /tmp/benchapp.pid 2> /dev/null`.empty?
14
14
  raise "Another instance of rhoconnect application is running." unless `cat /tmp/rhoconnect.pid 2> /dev/null`.empty?
15
-
15
+
16
16
  ruby_version = `rvm current`
17
17
  puts "Ruby version: #{ruby_version}"
18
18
  puts
@@ -121,4 +121,4 @@ ensure
121
121
  puts ""
122
122
  $stdout = orig_stdout #restore stdout
123
123
  $sdterr = orig_stderr #restore stderr
124
- end
124
+ end
@@ -27,3 +27,9 @@ group :test do
27
27
  gem 'rack-test', '>= 0.5.3', :require => "rack/test"
28
28
  gem 'rspec', '~> 2.6.0'
29
29
  end
30
+
31
+ # for Async, Eventful execution
32
+ platforms :ruby_19 do
33
+ gem 'rack-fiber_pool'
34
+ gem 'async-rack'
35
+ end
@@ -2,6 +2,8 @@ GEM
2
2
  remote: http://rubygems.org/
3
3
  specs:
4
4
  SystemTimer (1.2.3)
5
+ async-rack (0.5.1)
6
+ rack (~> 1.1)
5
7
  daemons (1.1.8)
6
8
  diff-lcs (1.1.3)
7
9
  eventmachine (0.12.10)
@@ -11,6 +13,7 @@ GEM
11
13
  mime-types (1.17.2)
12
14
  multi_json (1.1.0)
13
15
  rack (1.4.1)
16
+ rack-fiber_pool (0.9.2)
14
17
  rack-protection (1.2.0)
15
18
  rack
16
19
  rack-test (0.6.1)
@@ -69,10 +72,12 @@ PLATFORMS
69
72
 
70
73
  DEPENDENCIES
71
74
  SystemTimer (~> 1.2.3)
75
+ async-rack
72
76
  dbd-jdbc (>= 0.1.4)
73
77
  dbi (>= 0.4.5)
74
78
  jdbc-sqlite3 (>= 3.7.2)
75
79
  jruby-openssl (>= 0.7.4)
80
+ rack-fiber_pool
76
81
  rack-test (>= 0.5.3)
77
82
  rhoconnect (~> 3.1.0)
78
83
  rspec (~> 2.6.0)