openshift-origin-console 1.3.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (291) hide show
  1. data/COPYRIGHT +1 -0
  2. data/Gemfile +21 -0
  3. data/LICENSE +203 -0
  4. data/README.md +123 -0
  5. data/Rakefile +44 -0
  6. data/app/assets/images/cartridge-edge.gif +0 -0
  7. data/app/assets/images/console/arrow-down.png +0 -0
  8. data/app/assets/images/console/console-sprite.png +0 -0
  9. data/app/assets/images/favicon-32.png +0 -0
  10. data/app/assets/images/loader-dark.gif +0 -0
  11. data/app/assets/images/loader.gif +0 -0
  12. data/app/assets/images/sprite-vert.png +0 -0
  13. data/app/assets/javascripts/console.js +10 -0
  14. data/app/assets/javascripts/console/form.js.coffee +51 -0
  15. data/app/assets/stylesheets/_alerts.scss +84 -0
  16. data/app/assets/stylesheets/_breadcrumbs.scss +31 -0
  17. data/app/assets/stylesheets/_buttons.scss +229 -0
  18. data/app/assets/stylesheets/_code.scss +86 -0
  19. data/app/assets/stylesheets/_custom.scss +207 -0
  20. data/app/assets/stylesheets/_footer.scss +54 -0
  21. data/app/assets/stylesheets/_forms.scss +710 -0
  22. data/app/assets/stylesheets/_grid.scss +28 -0
  23. data/app/assets/stylesheets/_input-prepend-append.scss +138 -0
  24. data/app/assets/stylesheets/_labels.scss +40 -0
  25. data/app/assets/stylesheets/_mixins.scss +76 -0
  26. data/app/assets/stylesheets/_override-variables.scss +1 -0
  27. data/app/assets/stylesheets/_responsive.scss +438 -0
  28. data/app/assets/stylesheets/_ribbon.scss +57 -0
  29. data/app/assets/stylesheets/_type.scss +306 -0
  30. data/app/assets/stylesheets/_utilities.scss +10 -0
  31. data/app/assets/stylesheets/_variables.scss +131 -0
  32. data/app/assets/stylesheets/common.css.scss +82 -0
  33. data/app/assets/stylesheets/console/_application.scss +194 -0
  34. data/app/assets/stylesheets/console/_base.scss +26 -0
  35. data/app/assets/stylesheets/console/_breadcrumbs.scss +32 -0
  36. data/app/assets/stylesheets/console/_buttons.scss +214 -0
  37. data/app/assets/stylesheets/console/_core.scss +1002 -0
  38. data/app/assets/stylesheets/console/_dropdowns.scss +63 -0
  39. data/app/assets/stylesheets/console/_help.scss +54 -0
  40. data/app/assets/stylesheets/console/_mixins.scss +11 -0
  41. data/app/assets/stylesheets/console/_navbar.scss +415 -0
  42. data/app/assets/stylesheets/console/_ribbon.scss +82 -0
  43. data/app/assets/stylesheets/console/_tile.scss +122 -0
  44. data/app/assets/stylesheets/origin.css.scss +37 -0
  45. data/app/controllers/account/dashboard.rb +13 -0
  46. data/app/controllers/account_controller.rb +3 -0
  47. data/app/controllers/application_types_controller.rb +80 -0
  48. data/app/controllers/applications_controller.rb +183 -0
  49. data/app/controllers/building_controller.rb +81 -0
  50. data/app/controllers/capability_aware.rb +18 -0
  51. data/app/controllers/cartridge_types_controller.rb +53 -0
  52. data/app/controllers/cartridges_controller.rb +43 -0
  53. data/app/controllers/console/auth/basic.rb +65 -0
  54. data/app/controllers/console/auth/none.rb +5 -0
  55. data/app/controllers/console/auth/remote_user.rb +69 -0
  56. data/app/controllers/console/rescue.rb +48 -0
  57. data/app/controllers/console_controller.rb +19 -0
  58. data/app/controllers/console_index_controller.rb +14 -0
  59. data/app/controllers/domain_aware.rb +26 -0
  60. data/app/controllers/domain_session_sweeper.rb +29 -0
  61. data/app/controllers/domains_controller.rb +30 -0
  62. data/app/controllers/keys_controller.rb +43 -0
  63. data/app/controllers/scaling_controller.rb +46 -0
  64. data/app/controllers/sshkey_aware.rb +23 -0
  65. data/app/controllers/sshkey_session_sweeper.rb +29 -0
  66. data/app/controllers/user_session_sweeper.rb +29 -0
  67. data/app/helpers/console/community_helper.rb +78 -0
  68. data/app/helpers/console/console_helper.rb +26 -0
  69. data/app/helpers/console/help_helper.rb +270 -0
  70. data/app/helpers/console/html5_boilerplate_helper.rb +63 -0
  71. data/app/helpers/console/layout_helper.rb +277 -0
  72. data/app/helpers/console/model_helper.rb +106 -0
  73. data/app/helpers/console/secured_helper.rb +5 -0
  74. data/app/models/alias.rb +10 -0
  75. data/app/models/application.rb +148 -0
  76. data/app/models/application_associations.rb +36 -0
  77. data/app/models/application_template.rb +90 -0
  78. data/app/models/application_type.rb +258 -0
  79. data/app/models/async_aware.rb +60 -0
  80. data/app/models/capabilities.rb +62 -0
  81. data/app/models/cartridge.rb +122 -0
  82. data/app/models/cartridge_type.rb +140 -0
  83. data/app/models/domain.rb +44 -0
  84. data/app/models/domain_associations.rb +33 -0
  85. data/app/models/embedded.rb +11 -0
  86. data/app/models/gear.rb +13 -0
  87. data/app/models/gear_group.rb +104 -0
  88. data/app/models/key.rb +87 -0
  89. data/app/models/quickstart.rb +135 -0
  90. data/app/models/rest_api.rb +130 -0
  91. data/app/models/rest_api/base.rb +781 -0
  92. data/app/models/rest_api/cacheable.rb +91 -0
  93. data/app/models/rest_api/environment.rb +13 -0
  94. data/app/models/rest_api/info.rb +34 -0
  95. data/app/models/rest_api/log_subscriber.rb +29 -0
  96. data/app/models/rest_api/railties/controller_runtime.rb +37 -0
  97. data/app/models/user.rb +27 -0
  98. data/app/models/user_associations.rb +6 -0
  99. data/app/views/account/_domain.html.haml +14 -0
  100. data/app/views/account/_keys.html.haml +20 -0
  101. data/app/views/account/_user.html.haml +5 -0
  102. data/app/views/account/show.html.haml +15 -0
  103. data/app/views/application_templates/_application_template.html.haml +5 -0
  104. data/app/views/application_types/_application_type.html.haml +19 -0
  105. data/app/views/application_types/_custom.html.haml +19 -0
  106. data/app/views/application_types/_persisted.html.haml +26 -0
  107. data/app/views/application_types/_tile.html.haml +9 -0
  108. data/app/views/application_types/index.html.haml +87 -0
  109. data/app/views/application_types/search.html.haml +67 -0
  110. data/app/views/application_types/show.html.haml +219 -0
  111. data/app/views/applications/_application.html.haml +34 -0
  112. data/app/views/applications/_applications_filter.html.haml +8 -0
  113. data/app/views/applications/_footer.html.haml +0 -0
  114. data/app/views/applications/_name.html.haml +28 -0
  115. data/app/views/applications/delete.html.haml +19 -0
  116. data/app/views/applications/get_started.html.haml +145 -0
  117. data/app/views/applications/index.html.haml +55 -0
  118. data/app/views/applications/show.html.haml +193 -0
  119. data/app/views/building/delete.html.haml +22 -0
  120. data/app/views/building/new.html.haml +57 -0
  121. data/app/views/building/show.html.haml +12 -0
  122. data/app/views/cartridge_types/_cartridge_type.html.haml +61 -0
  123. data/app/views/cartridge_types/index.html.haml +37 -0
  124. data/app/views/cartridge_types/show.html.haml +21 -0
  125. data/app/views/cartridges/next_steps.html.haml +58 -0
  126. data/app/views/cartridges/show.html.haml +1 -0
  127. data/app/views/console/error.html.haml +58 -0
  128. data/app/views/console/help.html.haml +90 -0
  129. data/app/views/console/not_found.html.haml +69 -0
  130. data/app/views/console/unauthorized.html.haml +7 -0
  131. data/app/views/domains/_domain.html.haml +14 -0
  132. data/app/views/domains/_form.html.haml +13 -0
  133. data/app/views/domains/edit.html.haml +5 -0
  134. data/app/views/domains/new.html.haml +6 -0
  135. data/app/views/keys/_form.html.haml +14 -0
  136. data/app/views/keys/_simple_form.html.haml +14 -0
  137. data/app/views/keys/new.html.haml +2 -0
  138. data/app/views/layouts/_footer.html.haml +38 -0
  139. data/app/views/layouts/_head.html.haml +35 -0
  140. data/app/views/layouts/console.html.haml +60 -0
  141. data/app/views/layouts/console/_header.html.haml +44 -0
  142. data/app/views/layouts/console/_identity.html.haml +7 -0
  143. data/app/views/layouts/console/_javascripts.html.haml +5 -0
  144. data/app/views/layouts/console/_stylesheets.html.haml +6 -0
  145. data/app/views/scaling/delete.html.haml +17 -0
  146. data/app/views/scaling/new.html.haml +24 -0
  147. data/app/views/scaling/show.html.haml +81 -0
  148. data/app/views/shared/_tracking.html.haml +0 -0
  149. data/conf/console.conf.example +108 -0
  150. data/conf/openshift_console.conf +10 -0
  151. data/config/cartridge_types.yml +54 -0
  152. data/config/initializers/barista_config.rb +86 -0
  153. data/config/initializers/cartridge_types.rb +5 -0
  154. data/config/initializers/console_security.rb +1 -0
  155. data/config/initializers/date_helper.rb +5 -0
  156. data/config/initializers/extended_logger.rb +51 -0
  157. data/config/initializers/formtastic.rb +100 -0
  158. data/config/initializers/inflections.rb +38 -0
  159. data/config/initializers/rdiscount.rb +8 -0
  160. data/config/initializers/rest_api.rb +22 -0
  161. data/config/initializers/sass.rb +30 -0
  162. data/config/initializers/session_trace.rb +32 -0
  163. data/config/initializers/x_frame_options.rb +53 -0
  164. data/config/locales/en.yml +12 -0
  165. data/lib/active_resource/associations.rb +107 -0
  166. data/lib/active_resource/associations/builder/association.rb +35 -0
  167. data/lib/active_resource/associations/builder/belongs_to.rb +5 -0
  168. data/lib/active_resource/associations/builder/has_many.rb +5 -0
  169. data/lib/active_resource/associations/builder/has_one.rb +5 -0
  170. data/lib/active_resource/persistent_connection.rb +341 -0
  171. data/lib/active_resource/persistent_http_mock.rb +68 -0
  172. data/lib/active_resource/reflection.rb +78 -0
  173. data/lib/console.rb +8 -0
  174. data/lib/console/config_file.rb +13 -0
  175. data/lib/console/configuration.rb +163 -0
  176. data/lib/console/engine.rb +28 -0
  177. data/lib/console/formtastic/bootstrap_form_builder.rb +369 -0
  178. data/lib/console/rails/app_redirector.rb +40 -0
  179. data/lib/console/rails/filter_hash.rb +15 -0
  180. data/lib/console/rails/routes.rb +51 -0
  181. data/lib/console/version.rb +5 -0
  182. data/lib/tasks/assets.rake +79 -0
  183. data/lib/tasks/stats.rake +18 -0
  184. data/lib/tasks/test_suites.rake +73 -0
  185. data/test/coverage_helper.rb +27 -0
  186. data/test/fixtures/cartridges.json +1 -0
  187. data/test/fixtures/quickstarts.csv +3 -0
  188. data/test/functional/account_controller_test.rb +14 -0
  189. data/test/functional/application_types_controller_test.rb +251 -0
  190. data/test/functional/applications_controller_sanity_test.rb +26 -0
  191. data/test/functional/applications_controller_test.rb +365 -0
  192. data/test/functional/building_controller_test.rb +203 -0
  193. data/test/functional/cartridge_types_controller_isolation_test.rb +68 -0
  194. data/test/functional/cartridge_types_controller_test.rb +48 -0
  195. data/test/functional/cartridges_controller_test.rb +83 -0
  196. data/test/functional/console_auth_basic_controller_test.rb +82 -0
  197. data/test/functional/console_auth_remote_user_controller_test.rb +90 -0
  198. data/test/functional/console_index_controller_test.rb +22 -0
  199. data/test/functional/domains_controller_test.rb +194 -0
  200. data/test/functional/keys_controller_test.rb +163 -0
  201. data/test/functional/quickstarts.json +18 -0
  202. data/test/functional/scaling_controller_test.rb +153 -0
  203. data/test/integration/assets_test.rb +34 -0
  204. data/test/integration/help_link_test.rb +43 -0
  205. data/test/integration/quickstarts_test.rb +24 -0
  206. data/test/integration/rescue_from_test.rb +25 -0
  207. data/test/integration/rest_api/application_test.rb +115 -0
  208. data/test/integration/rest_api/cartridge_test.rb +44 -0
  209. data/test/integration/rest_api/cartridge_type_test.rb +143 -0
  210. data/test/integration/rest_api/domain_test.rb +91 -0
  211. data/test/integration/rest_api/info_test.rb +9 -0
  212. data/test/integration/rest_api/key_test.rb +85 -0
  213. data/test/integration/static_pages_test.rb +44 -0
  214. data/test/rails_app/Rakefile +7 -0
  215. data/test/rails_app/app/controllers/application_controller.rb +5 -0
  216. data/test/rails_app/config.ru +4 -0
  217. data/test/rails_app/config/application.rb +48 -0
  218. data/test/rails_app/config/boot.rb +10 -0
  219. data/test/rails_app/config/database.yml +25 -0
  220. data/test/rails_app/config/environment.rb +5 -0
  221. data/test/rails_app/config/environments/development.rb +38 -0
  222. data/test/rails_app/config/environments/production.rb +70 -0
  223. data/test/rails_app/config/environments/test.rb +43 -0
  224. data/test/rails_app/config/initializers/auth.rb +0 -0
  225. data/test/rails_app/config/initializers/backtrace_silencers.rb +7 -0
  226. data/test/rails_app/config/initializers/inflections.rb +10 -0
  227. data/test/rails_app/config/initializers/mime_types.rb +5 -0
  228. data/test/rails_app/config/initializers/secret_token.rb +7 -0
  229. data/test/rails_app/config/initializers/session_store.rb +8 -0
  230. data/test/rails_app/config/locales/en.yml +5 -0
  231. data/test/rails_app/config/routes.rb +4 -0
  232. data/test/rails_app/script/rails +6 -0
  233. data/test/support/auth.rb +111 -0
  234. data/test/support/base.rb +142 -0
  235. data/test/support/errors.rb +28 -0
  236. data/test/support/rest_api.rb +189 -0
  237. data/test/test_helper.rb +14 -0
  238. data/test/unit/active_model_compliance_test.rb +23 -0
  239. data/test/unit/async_aware_test.rb +55 -0
  240. data/test/unit/configuration_test.rb +158 -0
  241. data/test/unit/filter_hash_test.rb +64 -0
  242. data/test/unit/helpers/model_helper_test.rb +61 -0
  243. data/test/unit/overrides_test.rb +9 -0
  244. data/test/unit/rest_api_test.rb +1590 -0
  245. data/vendor/assets/javascripts/MIT-LICENSE.txt +20 -0
  246. data/vendor/assets/javascripts/bootstrap-collapse.js +157 -0
  247. data/vendor/assets/javascripts/bootstrap-dropdown.js +100 -0
  248. data/vendor/assets/javascripts/bootstrap-tab.js +135 -0
  249. data/vendor/assets/javascripts/bootstrap-transition.js +61 -0
  250. data/vendor/assets/javascripts/jquery.spin.js +47 -0
  251. data/vendor/assets/javascripts/jquery.ui.widget.js +16 -0
  252. data/vendor/assets/javascripts/jquery_cookie.js +41 -0
  253. data/vendor/assets/javascripts/jquery_validate_min.js +51 -0
  254. data/vendor/assets/javascripts/modernizr.min.js +2 -0
  255. data/vendor/assets/javascripts/plugins.js +16 -0
  256. data/vendor/assets/stylesheets/bootstrap/_accordion.scss +28 -0
  257. data/vendor/assets/stylesheets/bootstrap/_alerts.scss +70 -0
  258. data/vendor/assets/stylesheets/bootstrap/_breadcrumbs.scss +22 -0
  259. data/vendor/assets/stylesheets/bootstrap/_button-groups.scss +147 -0
  260. data/vendor/assets/stylesheets/bootstrap/_buttons.scss +183 -0
  261. data/vendor/assets/stylesheets/bootstrap/_carousel.scss +121 -0
  262. data/vendor/assets/stylesheets/bootstrap/_close.scss +18 -0
  263. data/vendor/assets/stylesheets/bootstrap/_code.scss +57 -0
  264. data/vendor/assets/stylesheets/bootstrap/_component-animations.scss +18 -0
  265. data/vendor/assets/stylesheets/bootstrap/_dropdowns.scss +130 -0
  266. data/vendor/assets/stylesheets/bootstrap/_forms.scss +522 -0
  267. data/vendor/assets/stylesheets/bootstrap/_grid.scss +8 -0
  268. data/vendor/assets/stylesheets/bootstrap/_hero-unit.scss +20 -0
  269. data/vendor/assets/stylesheets/bootstrap/_labels.scss +32 -0
  270. data/vendor/assets/stylesheets/bootstrap/_layouts.scss +17 -0
  271. data/vendor/assets/stylesheets/bootstrap/_mixins.scss +602 -0
  272. data/vendor/assets/stylesheets/bootstrap/_modals.scss +84 -0
  273. data/vendor/assets/stylesheets/bootstrap/_navbar.scss +299 -0
  274. data/vendor/assets/stylesheets/bootstrap/_navs.scss +353 -0
  275. data/vendor/assets/stylesheets/bootstrap/_pager.scss +30 -0
  276. data/vendor/assets/stylesheets/bootstrap/_pagination.scss +55 -0
  277. data/vendor/assets/stylesheets/bootstrap/_popovers.scss +49 -0
  278. data/vendor/assets/stylesheets/bootstrap/_progress-bars.scss +95 -0
  279. data/vendor/assets/stylesheets/bootstrap/_reset.scss +126 -0
  280. data/vendor/assets/stylesheets/bootstrap/_scaffolding.scss +33 -0
  281. data/vendor/assets/stylesheets/bootstrap/_sprites.scss +158 -0
  282. data/vendor/assets/stylesheets/bootstrap/_tables.scss +150 -0
  283. data/vendor/assets/stylesheets/bootstrap/_thumbnails.scss +35 -0
  284. data/vendor/assets/stylesheets/bootstrap/_tooltip.scss +35 -0
  285. data/vendor/assets/stylesheets/bootstrap/_type.scss +218 -0
  286. data/vendor/assets/stylesheets/bootstrap/_utilities.scss +23 -0
  287. data/vendor/assets/stylesheets/bootstrap/_variables.scss +107 -0
  288. data/vendor/assets/stylesheets/bootstrap/_wells.scss +17 -0
  289. data/vendor/assets/stylesheets/bootstrap/bootstrap.scss +66 -0
  290. data/vendor/assets/stylesheets/bootstrap/responsive.scss +334 -0
  291. metadata +506 -0
@@ -0,0 +1,55 @@
1
+ - lots_of_applications = @applications.length > 10
2
+
3
+ - content_for :full_layout, true
4
+ - content_for :dark_layout, true
5
+ - content_for :footer do
6
+ = render :partial => 'applications/footer'
7
+
8
+ - content_for :top do
9
+ .grid-wrapper.section-header
10
+ %nav.span12.span-flush-right
11
+ %h1 All Applications
12
+
13
+
14
+ %section#app-list.span7
15
+ %header
16
+ %h3.invisible Application list
17
+ .row.tile-dark
18
+ - @applications.each do |application|
19
+ .grid-wrapper.tile-click
20
+ .span7.application-info
21
+ %h2.name= link_to application.name, application_path(application), :class => 'tile-target'
22
+ .url
23
+ %strong @
24
+ = link_to application.web_url, application.web_url
25
+ %i.sprite.tile-arrow
26
+
27
+ .btn-toolbar.base.right
28
+ = link_to application_types_path, :class => 'btn btn-primary btn-large' do
29
+ Add
30
+ %strong Application
31
+ %i.icon-add
32
+
33
+ %section#account-digest.span5
34
+ .digest-bg
35
+ %aside#secondary
36
+ #assistance
37
+ %h5 OpenShift Help
38
+ %ul.unstyled
39
+ - console_help_links.each do |l|
40
+ %li= link_to l[:name], l[:href]
41
+ %li= link_to 'More help »', console_help_path
42
+
43
+ %h5 Popular FAQs
44
+ %ul.unstyled
45
+ - console_faq_links.each do |l|
46
+ %li= link_to l[:name], l[:href]
47
+ %li= link_to 'More FAQs »', faq_url
48
+
49
+ -# FIXME: Refactor me into an unobtrusive javascript function
50
+ - content_for :javascripts do
51
+ :javascript
52
+ jQuery('.tile-click').click(function() {
53
+ a = $('h2 > a', this)[0];
54
+ window.location = a.href
55
+ });
@@ -0,0 +1,193 @@
1
+ - content_for :full_layout, true
2
+ - content_for :dark_layout, true
3
+
4
+ - breadcrumb_for_application @application
5
+
6
+ - content_for :top do
7
+ .grid-wrapper.section-header
8
+ %nav.span12.span-flush-right.application-info
9
+ %ul.pull-right.unstyled-flat.bits
10
+ %li
11
+ %h6 Gears
12
+ %span.data #{@application.gear_count} total
13
+ %h1.name= @application.name
14
+ .url
15
+ %strong @
16
+ = link_to @application.web_url, @application.web_url
17
+
18
+ -#
19
+ .emblem.span
20
+ %img{:src => '/app/images/console/gear-bars.png'}
21
+ .span
22
+ -# placeholder for gear info
23
+ .emblem.span
24
+ %img{:src => '/app/images/console/bolt.png'}
25
+ .span
26
+ -# placeholder for bolt info
27
+ .emblem.span
28
+ %img{:src => '/app/images/console/mark.png'}
29
+ .span
30
+ -# placeholder for mark info
31
+ .emblem.span
32
+ %img{:src => '/app/images/console/warning.png'}
33
+ .span
34
+ -# placeholder for warning info
35
+ .total-cost
36
+ -# cost placeholder
37
+
38
+ %section#app-specifics
39
+ %section#app-cartridges.span9
40
+ %header
41
+ %h3.pull-left Cartridges
42
+ .pull-right
43
+ = link_to application_cartridge_types_path(@application), :class => 'btn-add-cart' do
44
+ Add Cartridge
45
+ %span.sprite
46
+
47
+ -#.cartridge-block
48
+ .row
49
+ .span4
50
+ %h2.indent-left= @application.framework_name
51
+ .span5
52
+ %ul.unstyled-flat.bits.indent-right
53
+ %li
54
+ %h6 Created
55
+ %span.data
56
+ #{time_ago_in_words(@application.creation_time)} ago
57
+ -#
58
+ %li
59
+ %h6 Status
60
+ %span.data
61
+ normal
62
+ -#%li
63
+ %h6 Type
64
+ %span.data= @application.framework_name
65
+ -#
66
+ %li
67
+ %img{:src => "/app/images/console/gear-sm.png"}
68
+ .row
69
+ .span9
70
+ .indent-left.indent-right
71
+ %h6 Git Repository
72
+ %pre.command-line.git_url
73
+ = @application.git_url
74
+ - @gear_groups.each_with_index do |group,g|
75
+ .gear-group
76
+ - group.cartridges.each_with_index do |cartridge,c|
77
+ .cartridge-block
78
+ .cartridge-border
79
+ .cartridge-inset
80
+ .clearfix
81
+ %ul.pull-right.unstyled-flat.bits
82
+ - if c == 0
83
+ %li
84
+ %h6 Status
85
+ %span.data= gear_group_state(group.states)
86
+ %li
87
+ %h6 Gears
88
+ %span.data{:title => gear_group_count_title(group.gears.length)}= cartridge_gear_group_count(group)
89
+ - else
90
+ %li
91
+ %h6 Gears
92
+ %span.data{:title => 'This cartridge shares resources with the other cartridges it is grouped with.'} Shared
93
+
94
+ -#%li
95
+ %h6 Type
96
+ %span.data= cartridge.type
97
+ -#
98
+ %li
99
+ %img{:src => "/app/images/console/gear-sm.png"}
100
+ %h2= cartridge.display_name
101
+
102
+ - if cartridge.git_url
103
+ - if @has_keys
104
+ %h6
105
+ Git Repository
106
+ %p
107
+ %input#application_git_url.git-url{:readonly => 'readonly', :value => cartridge.git_url, :title => 'The code for your application will be available through this Git repository.'}
108
+ - content_for :javascripts do
109
+ :javascript
110
+ $('#application_git_url').focus(function() {this.select()});
111
+
112
+ %h6= link_to 'Want to log in to your application?', '#', :'data-unhide' => '.ssh.hidden'
113
+ .ssh.hidden
114
+ %p
115
+ The command below will open a Secure Shell (SSH) session to your application on most
116
+ operating systems. See our #{link_to 'SSH help page', ssh_help_url} for information
117
+ about connecting with Windows, Mac, and Linux computers.
118
+ %p
119
+ %input#application_ssh_url.git-url{:readonly => 'readonly', :value => "ssh #{cartridge.ssh_string}", :title => 'Cut and paste this command into a command shell to access your OpenShift application.'}
120
+ - content_for :javascripts do
121
+ :javascript
122
+ $('#application_ssh_url').focus(function() {this.select()});
123
+
124
+ - else
125
+ %p
126
+ You must #{link_to "add an SSH public key to your account", account_path}
127
+ before you can upload code or remotely access your application.
128
+
129
+ - if cartridge.scales? || cartridge.buildable?
130
+ .embedded
131
+ - if cartridge.scales?
132
+ .embedded-cart
133
+ - if cartridge.current_scale == 1
134
+ = link_to "Scales with HAProxy", application_scaling_path(@application), :title => 'Your web cartridge will automatically scale up when we detect you are receiving more web traffic'
135
+ - else
136
+ = link_to "Scaled up with HAProxy x#{cartridge.current_scale}",
137
+ application_scaling_path(@application),
138
+ :title => web_cartridge_scale_title(cartridge)
139
+ - if cartridge.builds?
140
+ .embedded-cart
141
+ =link_to 'See Jenkins Build jobs', @application.build_job_url, :title=> 'Jenkins is currently running builds for your application'
142
+ =link_to '(configure)', application_building_path(@application), :title => 'Remove or change your Jenkins configuration'
143
+ - elsif cartridge.buildable?
144
+ .embedded-cart= link_to "Enable Jenkins builds", application_building_path(@application), :title => 'Jenkins helps you run builds, tests, and deployment steps when you push changes to your application.'
145
+
146
+
147
+ .right.btn-toolbar
148
+ = link_to application_cartridge_types_path(@application), :class => 'btn btn-primary btn-large' do
149
+ Add
150
+ %strong Cartridge
151
+ %i.icon-add
152
+
153
+ %aside#app-unique-info.span3
154
+ %section#app-unique-info
155
+ -#%h5 Visibility
156
+ -#%ul.unstyled
157
+ %li External
158
+ %h5 Aliases
159
+ %ul.unstyled
160
+ - if @application.aliases.empty?
161
+ %li No alias set
162
+ - else
163
+ - alias_scheme = @application.web_url.split(':').first
164
+ - @application.aliases.each do |a|
165
+ %li= link_to a, "#{alias_scheme}://#{a}"
166
+
167
+ - if @application.initial_git_url.present?
168
+ %h5 Based On
169
+ %ul.unstyled
170
+ %li= link_to @application.initial_git_url, @application.initial_git_url
171
+
172
+ #assistance
173
+ %h5 New to OpenShift?
174
+ %ul.unstyled
175
+ %li= link_to 'See the getting started tips for this app →', get_started_application_path(@application)
176
+
177
+ %h5 Need Help?
178
+ %ul.unstyled
179
+ %li= link_to 'OpenShift User Guide', user_guide_url
180
+ %li= link_to 'Sync your OpenShift repo with an existing Git repo', sync_git_with_remote_repo_knowledge_base_url
181
+
182
+ -# %h5 Need Help? #restore later
183
+ %ul.unstyled
184
+ %li
185
+ - if @application_type.help_topics and not @application_type.help_topics.empty?
186
+ %h5= @application.framework_name + ' Help'
187
+ %ul.unstyled
188
+ - @application_type.help_topics.each do |key, value|
189
+ %li= link_to key, value
190
+
191
+ .btn-toolbar
192
+ = link_to 'Delete this application', delete_application_path(@application), :class => 'btn btn-small'
193
+
@@ -0,0 +1,22 @@
1
+ - breadcrumb_for_application @application, 'Disable Jenkins Builds'
2
+ - content_for :page_title, 'Disable Jenkins Builds'
3
+
4
+ %h1 Disable Jenkins Builds
5
+
6
+ = semantic_form_for @application, :url => application_building_path(@application), :html => {:method => :delete, :class => 'form'} do |f|
7
+ %p
8
+ OpenShift is configured to build this application with
9
+ #{link_to 'Jenkins', jenkins_help_url } when you make
10
+ changes through Git. If you remove the Jenkins cartridge
11
+ your build history and results are preserved, but new
12
+ changes to Git will no longer start builds.
13
+
14
+ %p
15
+ Are you sure you wish to disable builds for this
16
+ application?
17
+
18
+ = f.semantic_errors
19
+ = f.buttons do
20
+ = link_to 'Cancel', @referer || application_path(@application), :class => 'btn'
21
+ = f.commit_button :label => "Remove Jenkins", :button_html => {:class => 'btn btn-danger'}
22
+ = f.loading
@@ -0,0 +1,57 @@
1
+ - breadcrumb_for_application @application, 'Enable Builds'
2
+ - content_for :page_title, 'Enable Builds'
3
+
4
+ %h1 Enable Jenkins Builds
5
+ = flashes
6
+
7
+ %section
8
+ = semantic_form_for @jenkins_server, :url => application_building_path(@application), :html => {:method => :post, :class => 'form form-horizontal'} do |f|
9
+ %p
10
+ To build with Jenkins, OpenShift needs a server (created as a separate
11
+ application) and a Jenkins client cartridge attached to each buildable
12
+ application. Build jobs execute on the gear that contains the client cartridge,
13
+ while the Jenkins server schedules jobs and stores history and other build
14
+ results.
15
+
16
+ = f.semantic_errors
17
+
18
+ - if @jenkins_server.persisted?
19
+
20
+
21
+ %h2 Build server available
22
+ %p
23
+ You have created a #{link_to "Jenkins application (#{@jenkins_server.name})", application_path(@jenkins_server)} to
24
+ schedule and host builds. You can log in to Jenkins at:
25
+
26
+ %p.well.application-url.larger
27
+ = link_to @jenkins_server.web_url, @jenkins_server.web_url
28
+
29
+ - else
30
+ %h2 Create server
31
+ %p
32
+ You must create a Jenkins server to store build history. You can customize the name of the application within your domain:
33
+
34
+ - errors = @jenkins_server.errors.full_messages.present?
35
+ = f.inputs do
36
+ = f.semantic_errors :name, :not => :base
37
+ .control-group.control-group-important{:data => errors ? {:"server-error" => 'true'} : {}}
38
+ %h3.control-label Public URL
39
+ .controls
40
+ = render :partial => 'applications/name', :locals => {:form => f, :application => @jenkins_server}
41
+
42
+ %h2 Create cartridge
43
+ %p
44
+ The Jenkins client cartridge listens for changes to your Git source code repository and triggers new builds. If you remove
45
+ the cartridge later, your build history will remain but the job will be disabled.
46
+
47
+ - render :partial => @cartridge_type, :locals => {:hide_link => true, :extra_info => true, :application => @application}
48
+
49
+ - unless @jenkins_server.persisted?
50
+ %p Enabling the Jenkins server and configuring your build job may take a few minutes to complete while we wait for your new application to become available through DNS.
51
+ %p
52
+ Do you want to enable Jenkins for your application?
53
+
54
+ = f.buttons do
55
+ = link_to "Back", application_path(@application), :class => 'btn'
56
+ = f.commit_button("Add Jenkins")
57
+ = f.loading
@@ -0,0 +1,12 @@
1
+ - breadcrumb_for_application @application, 'Building your Application'
2
+ - content_for :page_title, 'Building your Application'
3
+
4
+ %h1 Building your Application
5
+
6
+ %section
7
+ %p OpenShift is configured to build this application with #{link_to 'Jenkins', jenkins_help_url } when you make changes through Git. You can track the progress of builds through the following Jenkins job:
8
+
9
+ %p.well.application-url.larger
10
+ = link_to @application.build_job_url, @application.build_job_url
11
+
12
+ %p If you no longer wish to run Jenkins builds, you can #{link_to "remove the Jenkins cartridge", delete_application_building_path(@application) }.
@@ -0,0 +1,61 @@
1
+ - inactive = inactive if defined? inactive
2
+ - reason = reason if defined? reason
3
+ - extra_info = extra_info if defined? extra_info
4
+ - hide_link = hide_link if defined? hide_link
5
+
6
+ - classes = "tile #{cartridge_type.tags.join(' ')}"
7
+ - classes += " inactive" if inactive
8
+ - classes += " tile-click" unless inactive or hide_link
9
+ = div_for cartridge_type, :class => classes do
10
+
11
+ - if not inactive and cartridge_type.tags.include? :experimental
12
+ %span.label.pull-right Experimental
13
+
14
+ %h3= cartridge_type.display_name
15
+
16
+ - if extra_info
17
+ %ul.unstyled.meta
18
+
19
+ -# if cartridge_type.license
20
+ %li.license
21
+ %label License:
22
+ - if cartridge_type.respond_to? :license_url
23
+ = link_to cartridge_type.license, cartridge_type.license_url
24
+ - else
25
+ %span= cartridge_type.license
26
+
27
+ - if cartridge_type.website
28
+ %li.website
29
+ %label Website:
30
+ = link_to cartridge_type.website, cartridge_type.website
31
+
32
+ - if cartridge_type.version
33
+ %li.version
34
+ %label Version:
35
+ %span= cartridge_type.version
36
+
37
+ - if not (inactive and reason == :installed) and cartridge_type.description.present?
38
+ %p= cartridge_type.description
39
+
40
+ - if cartridge_type.learn_more_url
41
+ = link_to "Learn more", cartridge_type.learn_more_url
42
+
43
+ - if extra_info and cartridge_type.provides
44
+ %div
45
+ %h4 What you get:
46
+ %ul
47
+ - cartridge_type.provides.each do |provided|
48
+ %li= provided
49
+
50
+ - if reason
51
+ - case reason
52
+ - when :requires
53
+ .warning Requires #{cartridge_type.requires.join(',')}
54
+ - when :conflicts
55
+ .warning Conflicts with #{cartridge_type.conflicts.join(',')}
56
+ - when :blocked
57
+ .warning Cannot be added to #{application.framework_name}
58
+
59
+ - unless hide_link or inactive
60
+ = link_to "Select »", application_cartridge_type_path(application, cartridge_type), :class => 'btn'
61
+
@@ -0,0 +1,37 @@
1
+ - breadcrumb_for_application @application, 'Add a Cartridge'
2
+ - content_for :page_title, 'Add a Cartridge'
3
+
4
+ %h1.invisible Add a New Cartridge
5
+ = cartridge_wizard_steps_create 0
6
+
7
+ %section.row
8
+ - if @carts.empty?
9
+ .alert.alert-info There are no cartridges that can be installed
10
+
11
+ - else
12
+ .span8
13
+ %p Choose a cartridge to add to your application.
14
+ .row
15
+ - @carts.in_groups(2, false).each do |types|
16
+ .span4
17
+ = render :collection => types, :partial => 'cartridge_types/cartridge_type', :locals => {:application => @application}
18
+
19
+
20
+ - unless @installed.empty? and @requires.empty? and @conflicts.empty? and @blocked.empty?
21
+ .span4
22
+ - unless @installed.empty?
23
+ %h3 Installed
24
+ = render :collection => @installed, :partial => 'cartridge_types/cartridge_type', :locals => {:application => @application, :inactive => true, :reason => :installed}
25
+
26
+ - unless @requires.empty? and @conflicts.empty? and @blocked.empty?
27
+ %h3 Has Dependencies
28
+ = render :collection => @requires, :partial => 'cartridge_types/cartridge_type', :locals => {:application => @application, :inactive => true, :reason => :requires}
29
+ = render :collection => @conflicts, :partial => 'cartridge_types/cartridge_type', :locals => {:application => @application, :inactive => true, :reason => :conflicts}
30
+ = render :collection => @blocked, :partial => 'cartridge_types/cartridge_type', :locals => {:application => @application, :inactive => true, :reason => :blocked}
31
+
32
+ - content_for :javascripts do
33
+ :javascript
34
+ jQuery('.cartridge_type').click(function() {
35
+ a = $('a.btn', this)[0];
36
+ window.location = a.href
37
+ });
@@ -0,0 +1,21 @@
1
+ - breadcrumb_for_application @application, 'Add a Cartridge'
2
+ - content_for :page_title, 'Add a Cartridge'
3
+
4
+ %h1.invisible Configure New Application
5
+ = cartridge_wizard_steps_create 1
6
+
7
+ = render :partial => @cartridge_type, :locals => {:hide_link => true, :extra_info => true, :application => @application}
8
+
9
+ = semantic_form_for @cartridge, :url => application_cartridges_path(@application), :html => {:class => 'form'} do |f|
10
+ = f.hidden_field :type, :value => @cartridge_type.type
11
+ = f.hidden_field :name, :value => @cartridge_type.name
12
+ = f.semantic_errors :name, :cartridge
13
+ %div
14
+ Do you want to add the
15
+ %strong
16
+ #{@cartridge_type.display_name}
17
+ cartridge to your application?
18
+ = f.buttons do
19
+ = link_to "Back", application_cartridge_types_path(@application), :class => 'btn'
20
+ = f.commit_button("Add Cartridge")
21
+ = f.loading