Bug 1010883 - [fork][origin_ui_72]There should be correct error message when adding cartridge to application with user has only "can view" role to the domain.
Summary: [fork][origin_ui_72]There should be correct error message when adding cartrid...
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: OpenShift Online
Classification: Red Hat
Component: Management Console
Version: 2.x
Hardware: Unspecified
OS: Unspecified
medium
medium
Target Milestone: ---
: ---
Assignee: Jordan Liggitt
QA Contact: libra bugs
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2013-09-23 09:04 UTC by Yujie Zhang
Modified: 2015-05-15 01:35 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2013-10-17 13:30:42 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)

Description Yujie Zhang 2013-09-23 09:04:17 UTC
Description of problem:

Added view scope of an application to an account, and tried to add cartridge to the application using the account, and met "We appear to be having technical difficulties" error.The error meseage "You are not permitted to perform this action (create_cartridge on application)" can be returned according to the log, but can not be rendered to console successfully.

Version-Release number of selected component (if applicable):

fork_ami_origin_ui_72_membership_844

How reproducible:

always

Steps to Reproduce:
1.Added view scope of an application to an account
2.Try to add cartridge to the application using the account
3.

Actual results:

Met "We appear to be having technical difficulties" error.Log is as following:

2013-09-23 04:19:37.752 [INFO ] Started POST "/app/console/application/523fd61a6311e78484000032-php53567456/cartridges" for 66.187.233.202 at 2013-09-23 04:19:37 -0400 (pid:12030)
2013-09-23 04:19:37.756 [INFO ] Processing by CartridgesController#create as HTML (pid:12030)
2013-09-23 04:19:37.757 [INFO ] Parameters: {"utf8"=>"✓", "authenticity_token"=>"XL4hEbyuTR6ySXqb4D86oe+hCiZYjeaX5cK8dJrheD8=", "cartridge"=>{"name"=>"mongodb-2.2", "url"=>""}, "application_id"=>"523fd61a6311e78484000032-php53567456"} (pid:12030)
2013-09-23 04:19:37.757 [DEBUG] Session contents: {"ticket"=>"0|SiIQrnJqfvi51TYib1sFIFG9WMFIeHvaoM6", "api_ticket"=>"8b03f2d478bbe1d6f027e2b3858cba794092f56613c783b20737dd13e1ca4506", "login"=>"yujzhang+forktest1", "streamline_type"=>:full, "terms"=>true, "session_id"=>"3fad6f6c196817c90c75837f6b1f3b62", "has_sshkey"=>false, "caps"=>[-1, 16, 16, 3, [:small, :medium], "silver", true], "_csrf_token"=>"XL4hEbyuTR6ySXqb4D86oe+hCiZYjeaX5cK8dJrheD8=", "currency_cd"=>"usd"} (pid:12030)
2013-09-23 04:19:37.820 [DEBUG] OpenShift API (60.3ms) get https://localhost:443/broker/rest/application/523fd61a6311e78484000032.json [ code: 200 ] (pid:12030)
2013-09-23 04:19:37.849 [DEBUG] OpenShift API (27.6ms) get https://localhost:443/broker/rest/cartridges.json [ code: 200 ] (pid:12030)
2013-09-23 04:19:37.918 [DEBUG] OpenShift API (54.4ms) post https://localhost:443/broker/rest/application/523fd61a6311e78484000032/cartridges.json [ code: 403 ] (pid:12030)
2013-09-23 04:19:37.918 [DEBUG] Server error: : #0: You are not permitted to perform this action (create_cartridge on application) (pid:12030)
2013-09-23 04:19:37.919 [DEBUG] Found errors on the response object: {:base=>["You are not permitted to perform this action (create_cartridge on application)"]} (pid:12030)
2013-09-23 04:19:37.919 [DEBUG] #<ActiveResource::Errors:0x000000074081a0 @base=#<Cartridge:0x000000073fcc38 @as=#<WebUser::Integrated:0x0000000704a978 @rhlogin="yujzhang+forktest1", @ticket="0|SiIQrnJqfvi51TYib1sFIFG9WMFIeHvaoM6", @api_ticket="8b03f2d478bbe1d6f027e2b3858cba794092f56613c783b20737dd13e1ca4506", @streamline_type=:full, @remote_ip="66.187.233.202", @errors=#<ActiveModel::Errors:0x000000070537a8 @base=#<WebUser::Integrated:0x0000000704a978 ...>, @messages={}>>, @attributes={"name"=>"mongodb-2.2", "url"=>nil}, @prefix_options={:application_id=>"523fd61a6311e78484000032", :application_name=>"php53567456", :domain_id=>"forktest2"}, @persisted=false, @messages=nil, @errors=#<ActiveResource::Errors:0x000000074081a0 ...>, @remote_errors=#<ActiveResource::ForbiddenAccess: Failed.  Response code = 403.  Response message = .>, @validation_context=nil, @connection=#<RestApi::UserAwareConnection:0x00000007407db8 @password=nil, @user=nil, @uri_parser=#<URI::Parser:0x00000007407d90>, @site=#<URI::HTTPS:0x00000003899948 URL:https://localhost/broker/rest>, @format=#<RestApi::OpenshiftJsonFormat:0x000000036af4e8 @root_attrs=[]>, @connection=#<ActiveResource::PersistentConnection:0x00000002465058 @password=nil, @user=nil, @uri_parser=#<URI::Parser:0x00000002465008>, @site=#<URI::HTTPS:0x00000003899948 URL:https://localhost/broker/rest>, @format=#<RestApi::OpenshiftJsonFormat:0x000000036af4e8 @root_attrs=[]>, @idle_timeout=4, @read_timeout=240, @open_timeout=3, @connection_name="rest_api", @http=#<Net::HTTP::Persistent:0x00000002644338 @name="rest_api", @debug_output=nil, @proxy_uri=nil, @headers={}, @override_headers={}, @http_versions={"localhost:443"=>"1.1"}, @keep_alive=30, @open_timeout=3, @read_timeout=240, @idle_timeout=4, @socket_options=[[6, 1, 1]], @generation_key=:net_http_persistent_rest_api_generations, @ssl_generation_key=:net_http_persistent_rest_api_ssl_generations, @request_key=:net_http_persistent_rest_api_requests, @timeout_key=:net_http_persistent_rest_api_timeouts, @certificate=nil, @ca_file=nil, @private_key=nil, @ssl_version=nil, @verify_callback=nil, @verify_mode=0, @cert_store=nil, @generation=0, @ssl_generation=1, @reuse_ssl_sessions=true, @retry_change_requests=false>, @default_header={}>, @as=#<WebUser::Integrated:0x0000000704a978 @rhlogin="yujzhang+forktest1", @ticket="0|SiIQrnJqfvi51TYib1sFIFG9WMFIeHvaoM6", @api_ticket="8b03f2d478bbe1d6f027e2b3858cba794092f56613c783b20737dd13e1ca4506", @streamline_type=:full, @remote_ip="66.187.233.202", @errors=#<ActiveModel::Errors:0x000000070537a8 @base=#<WebUser::Integrated:0x0000000704a978 ...>, @messages={}>>, @default_header={}>>, @messages={:base=>["You are not permitted to perform this action (create_cartridge on application)"]}, @codes={"base"=>[0]}> (pid:12030)
2013-09-23 04:19:37.988 [INFO ] Rendered /opt/rh/ruby193/root/usr/share/gems/gems/openshift-origin-console-1.15.1/app/views/cartridge_types/_cartridge_type.html.haml (65.6ms) (pid:12030)
2013-09-23 04:19:37.989 [INFO ] Rendered cartridge_types/_cartridge_type_notifications.html.haml (0.2ms) (pid:12030)
2013-09-23 04:19:37.999 [INFO ] Rendered /opt/rh/ruby193/root/usr/share/gems/gems/openshift-origin-console-1.15.1/app/views/cartridge_types/show.html.haml within layouts/console (79.2ms) (pid:12030)
2013-09-23 04:19:38.338 [ERROR] Unhandled exception reference #c13c8c40cc01aaa41eb1d6ff1ee99a09: undefined method `consumed_gears' for nil:NilClass
/var/www/openshift/site/app/helpers/application_helper.rb:71:in `gear_increase_cost'
  /opt/rh/ruby193/root/usr/share/gems/gems/openshift-origin-console-1.15.1/app/helpers/console/model_helper.rb:169:in `gear_increase_indicator'
  /opt/rh/ruby193/root/usr/share/gems/gems/openshift-origin-console-1.15.1/app/views/cartridge_types/show.html.haml:27:in `block (2 levels) in __opt_rh_ruby____root_usr_share_gems_gems_openshift_origin_console________app_views_cartridge_types_show_html_haml__1364516184419252990_58365160'
  /opt/rh/ruby193/root/usr/share/gems/gems/haml-3.1.7/lib/haml/helpers.rb:345:in `call'
  /opt/rh/ruby193/root/usr/share/gems/gems/haml-3.1.7/lib/haml/helpers.rb:345:in `block in capture_haml'
  /opt/rh/ruby193/root/usr/share/gems/gems/haml-3.1.7/lib/haml/helpers.rb:569:in `with_haml_buffer'
  /opt/rh/ruby193/root/usr/share/gems/gems/haml-3.1.7/lib/haml/helpers.rb:341:in `capture_haml'
  /opt/rh/ruby193/root/usr/share/gems/gems/haml-3.1.7/lib/haml/helpers/xss_mods.rb:61:in `capture_haml_with_haml_xss'
  /opt/rh/ruby193/root/usr/share/gems/gems/openshift-origin-console-1.15.1/lib/console/formtastic/bootstrap_form_builder.rb:40:in `field_set_and_list_wrapping'
  /opt/rh/ruby193/root/usr/share/gems/gems/formtastic-1.2.4/lib/formtastic.rb:319:in `buttons'
  /opt/rh/ruby193/root/usr/share/gems/gems/openshift-origin-console-1.15.1/lib/console/formtastic/bootstrap_form_builder.rb:21:in `buttons'
  /opt/rh/ruby193/root/usr/share/gems/gems/openshift-origin-console-1.15.1/app/views/cartridge_types/show.html.haml:23:in `block in __opt_rh_ruby____root_usr_share_gems_gems_openshift_origin_console________app_views_cartridge_types_show_html_haml__1364516184419252990_58365160'
  /opt/rh/ruby193/root/usr/share/gems/gems/haml-3.1.7/lib/haml/helpers/action_view_mods.rb:181:in `call'
  /opt/rh/ruby193/root/usr/share/gems/gems/haml-3.1.7/lib/haml/helpers/action_view_mods.rb:181:in `block (2 levels) in form_for_with_haml'
  /opt/rh/ruby193/root/usr/share/gems/gems/haml-3.1.7/lib/haml/helpers.rb:255:in `with_tabs'
  /opt/rh/ruby193/root/usr/share/gems/gems/haml-3.1.7/lib/haml/helpers/action_view_mods.rb:181:in `block in form_for_with_haml'
  /opt/rh/ruby193/root/usr/share/gems/gems/actionpack-3.2.8/lib/action_view/helpers/capture_helper.rb:40:in `block in capture'
  /opt/rh/ruby193/root/usr/share/gems/gems/actionpack-3.2.8/lib/action_view/helpers/capture_helper.rb:187:in `with_output_buffer'
  /opt/rh/ruby193/root/usr/share/gems/gems/haml-3.1.7/lib/haml/helpers/xss_mods.rb:109:in `with_output_buffer_with_haml_xss'
  /opt/rh/ruby193/root/usr/share/gems/gems/actionpack-3.2.8/lib/action_view/helpers/capture_helper.rb:40:in `capture'
  /opt/rh/ruby193/root/usr/share/gems/gems/haml-3.1.7/lib/haml/helpers/action_view_mods.rb:105:in `capture_with_haml'
  /opt/rh/ruby193/root/usr/share/gems/gems/actionpack-3.2.8/lib/action_view/helpers/form_helper.rb:607:in `fields_for'
  /opt/rh/ruby193/root/usr/share/gems/gems/actionpack-3.2.8/lib/action_view/helpers/form_helper.rb:378:in `form_for'
  /opt/rh/ruby193/root/usr/share/gems/gems/haml-3.1.7/lib/haml/helpers/action_view_mods.rb:183:in `form_for_with_haml'
  /opt/rh/ruby193/root/usr/share/gems/gems/haml-3.1.7/lib/haml/helpers/xss_mods.rb:132:in `form_for_with_haml_xss'
  /opt/rh/ruby193/root/usr/share/gems/gems/formtastic-1.2.4/lib/formtastic.rb:1943:in `block in semantic_form_for'
  /opt/rh/ruby193/root/usr/share/gems/gems/formtastic-1.2.4/lib/formtastic.rb:1908:in `with_custom_field_error_proc'
  /opt/rh/ruby193/root/usr/share/gems/gems/formtastic-1.2.4/lib/formtastic.rb:1942:in `semantic_form_for'
  /opt/rh/ruby193/root/usr/share/gems/gems/openshift-origin-console-1.15.1/app/views/cartridge_types/show.html.haml:11:in `__opt_rh_ruby____root_usr_share_gems_gems_openshift_origin_console________app_views_cartridge_types_show_html_haml__1364516184419252990_58365160'
  /opt/rh/ruby193/root/usr/share/gems/gems/actionpack-3.2.8/lib/action_view/template.rb:145:in `block in render'
  /opt/rh/ruby193/root/usr/share/gems/gems/activesupport-3.2.8/lib/active_support/notifications.rb:125:in `instrument'
  /opt/rh/ruby193/root/usr/share/gems/gems/actionpack-3.2.8/lib/action_view/template.rb:143:in `render'
  /opt/rh/ruby193/root/usr/share/gems/gems/actionpack-3.2.8/lib/action_view/renderer/template_renderer.rb:47:in `block (2 levels) in render_template'
  /opt/rh/ruby193/root/usr/share/gems/gems/actionpack-3.2.8/lib/action_view/renderer/abstract_renderer.rb:38:in `block in instrument'
  /opt/rh/ruby193/root/usr/share/gems/gems/activesupport-3.2.8/lib/active_support/notifications.rb:123:in `block in instrument'
  /opt/rh/ruby193/root/usr/share/gems/gems/activesupport-3.2.8/lib/active_support/notifications/instrumenter.rb:20:in `instrument'
  /opt/rh/ruby193/root/usr/share/gems/gems/activesupport-3.2.8/lib/active_support/notifications.rb:123:in `instrument'
  /opt/rh/ruby193/root/usr/share/gems/gems/actionpack-3.2.8/lib/action_view/renderer/abstract_renderer.rb:38:in `instrument'
  /opt/rh/ruby193/root/usr/share/gems/gems/actionpack-3.2.8/lib/action_view/renderer/template_renderer.rb:46:in `block in render_template'
  /opt/rh/ruby193/root/usr/share/gems/gems/actionpack-3.2.8/lib/action_view/renderer/template_renderer.rb:54:in `render_with_layout'
  /opt/rh/ruby193/root/usr/share/gems/gems/actionpack-3.2.8/lib/action_view/renderer/template_renderer.rb:45:in `render_template'
  /opt/rh/ruby193/root/usr/share/gems/gems/actionpack-3.2.8/lib/action_view/renderer/template_renderer.rb:18:in `render'
  /opt/rh/ruby193/root/usr/share/gems/gems/actionpack-3.2.8/lib/action_view/renderer/renderer.rb:36:in `render_template'
  /opt/rh/ruby193/root/usr/share/gems/gems/actionpack-3.2.8/lib/action_view/renderer/renderer.rb:17:in `render'
  /opt/rh/ruby193/root/usr/share/gems/gems/actionpack-3.2.8/lib/abstract_controller/rendering.rb:110:in `_render_template'
  /opt/rh/ruby193/root/usr/share/gems/gems/actionpack-3.2.8/lib/action_controller/metal/streaming.rb:225:in `_render_template'
  /opt/rh/ruby193/root/usr/share/gems/gems/actionpack-3.2.8/lib/abstract_controller/rendering.rb:103:in `render_to_body'
  /opt/rh/ruby193/root/usr/share/gems/gems/actionpack-3.2.8/lib/action_controller/metal/renderers.rb:28:in `render_to_body'
  /opt/rh/ruby193/root/usr/share/gems/gems/actionpack-3.2.8/lib/action_controller/metal/compatibility.rb:50:in `render_to_body'
  /opt/rh/ruby193/root/usr/share/gems/gems/actionpack-3.2.8/lib/abstract_controller/rendering.rb:88:in `render'
  /opt/rh/ruby193/root/usr/share/gems/gems/actionpack-3.2.8/lib/action_controller/metal/rendering.rb:16:in `render'
  /opt/rh/ruby193/root/usr/share/gems/gems/actionpack-3.2.8/lib/action_controller/metal/instrumentation.rb:40:in `block (2 levels) in render'
  /opt/rh/ruby193/root/usr/share/gems/gems/activesupport-3.2.8/lib/active_support/core_ext/benchmark.rb:5:in `block in ms'
  /opt/rh/ruby193/root/usr/share/ruby/benchmark.rb:295:in `realtime'
  /opt/rh/ruby193/root/usr/share/gems/gems/activesupport-3.2.8/lib/active_support/core_ext/benchmark.rb:5:in `ms'
  /opt/rh/ruby193/root/usr/share/gems/gems/actionpack-3.2.8/lib/action_controller/metal/instrumentation.rb:40:in `block in render'
  /opt/rh/ruby193/root/usr/share/gems/gems/actionpack-3.2.8/lib/action_controller/metal/instrumentation.rb:83:in `cleanup_view_runtime'
  /opt/rh/ruby193/root/usr/share/gems/gems/openshift-origin-console-1.15.1/app/models/rest_api/railties/controller_runtime.rb:17:in `cleanup_view_runtime'
  /var/www/openshift/site/lib/streamline/railties/controller_runtime.rb:17:in `cleanup_view_runtime'
  /opt/rh/ruby193/root/usr/share/gems/gems/actionpack-3.2.8/lib/action_controller/metal/instrumentation.rb:39:in `render'
  /opt/rh/ruby193/root/usr/share/gems/gems/openshift-origin-console-1.15.1/app/controllers/cartridges_controller.rb:32:in `create'
  /opt/rh/ruby193/root/usr/share/gems/gems/actionpack-3.2.8/lib/action_controller/metal/implicit_render.rb:4:in `send_action'
  /opt/rh/ruby193/root/usr/share/gems/gems/actionpack-3.2.8/lib/abstract_controller/base.rb:167:in `process_action'
  /opt/rh/ruby193/root/usr/share/gems/gems/actionpack-3.2.8/lib/action_controller/metal/rendering.rb:10:in `process_action'
  /opt/rh/ruby193/root/usr/share/gems/gems/actionpack-3.2.8/lib/abstract_controller/callbacks.rb:18:in `block in process_action'
  /opt/rh/ruby193/root/usr/share/gems/gems/activesupport-3.2.8/lib/active_support/callbacks.rb:428:in `block (3 levels) in _run__4023584100732116061__process_action__1757500840107276642__callbacks'
  /opt/rh/ruby193/root/usr/share/gems/gems/activesupport-3.2.8/lib/active_support/callbacks.rb:215:in `block in _conditional_callback_around_253'
  /opt/rh/ruby193/root/usr/share/gems/gems/activesupport-3.2.8/lib/active_support/callbacks.rb:326:in `around'
  /opt/rh/ruby193/root/usr/share/gems/gems/activesupport-3.2.8/lib/active_support/callbacks.rb:310:in `_callback_around_67'
  /opt/rh/ruby193/root/usr/share/gems/gems/activesupport-3.2.8/lib/active_support/callbacks.rb:214:in `_conditional_callback_around_253'
  /opt/rh/ruby193/root/usr/share/gems/gems/activesupport-3.2.8/lib/active_support/callbacks.rb:416:in `block (2 levels) in _run__4023584100732116061__process_action__1757500840107276642__callbacks'
  /opt/rh/ruby193/root/usr/share/gems/gems/activesupport-3.2.8/lib/active_support/callbacks.rb:215:in `block in _conditional_callback_around_252'
  /opt/rh/ruby193/root/usr/share/gems/gems/activesupport-3.2.8/lib/active_support/callbacks.rb:326:in `around'
  /opt/rh/ruby193/root/usr/share/gems/gems/activesupport-3.2.8/lib/active_support/callbacks.rb:310:in `_callback_around_65'
  /opt/rh/ruby193/root/usr/share/gems/gems/activesupport-3.2.8/lib/active_support/callbacks.rb:214:in `_conditional_callback_around_252'
  /opt/rh/ruby193/root/usr/share/gems/gems/activesupport-3.2.8/lib/active_support/callbacks.rb:415:in `block in _run__4023584100732116061__process_action__1757500840107276642__callbacks'
  /opt/rh/ruby193/root/usr/share/gems/gems/activesupport-3.2.8/lib/active_support/callbacks.rb:215:in `block in _conditional_callback_around_251'
  /opt/rh/ruby193/root/usr/share/gems/gems/activesupport-3.2.8/lib/active_support/callbacks.rb:326:in `around'
  /opt/rh/ruby193/root/usr/share/gems/gems/activesupport-3.2.8/lib/active_support/callbacks.rb:310:in `_callback_around_41'
  /opt/rh/ruby193/root/usr/share/gems/gems/activesupport-3.2.8/lib/active_support/callbacks.rb:214:in `_conditional_callback_around_251'
  /opt/rh/ruby193/root/usr/share/gems/gems/activesupport-3.2.8/lib/active_support/callbacks.rb:414:in `_run__4023584100732116061__process_action__1757500840107276642__callbacks'
  /opt/rh/ruby193/root/usr/share/gems/gems/activesupport-3.2.8/lib/active_support/callbacks.rb:405:in `__run_callback'
  /opt/rh/ruby193/root/usr/share/gems/gems/activesupport-3.2.8/lib/active_support/callbacks.rb:385:in `_run_process_action_callbacks'
  /opt/rh/ruby193/root/usr/share/gems/gems/activesupport-3.2.8/lib/active_support/callbacks.rb:81:in `run_callbacks'
  /opt/rh/ruby193/root/usr/share/gems/gems/actionpack-3.2.8/lib/abstract_controller/callbacks.rb:17:in `process_action'
  /opt/rh/ruby193/root/usr/share/gems/gems/actionpack-3.2.8/lib/action_controller/metal/rescue.rb:29:in `process_action'
  /opt/rh/ruby193/root/usr/share/gems/gems/actionpack-3.2.8/lib/action_controller/metal/instrumentation.rb:30:in `block in process_action'
  /opt/rh/ruby193/root/usr/share/gems/gems/activesupport-3.2.8/lib/active_support/notifications.rb:123:in `block in instrument'
  /opt/rh/ruby193/root/usr/share/gems/gems/activesupport-3.2.8/lib/active_support/notifications/instrumenter.rb:20:in `instrument'
  /opt/rh/ruby193/root/usr/share/gems/gems/activesupport-3.2.8/lib/active_support/notifications.rb:123:in `instrument'
  /opt/rh/ruby193/root/usr/share/gems/gems/actionpack-3.2.8/lib/action_controller/metal/instrumentation.rb:29:in `process_action'
  /opt/rh/ruby193/root/usr/share/gems/gems/actionpack-3.2.8/lib/action_controller/metal/params_wrapper.rb:207:in `process_action'
  /opt/rh/ruby193/root/usr/share/gems/gems/openshift-origin-console-1.15.1/app/models/rest_api/railties/controller_runtime.rb:12:in `process_action'
  /var/www/openshift/site/lib/streamline/railties/controller_runtime.rb:12:in `process_action'
  /opt/rh/ruby193/root/usr/share/gems/gems/actionpack-3.2.8/lib/abstract_controller/base.rb:121:in `process'
  /opt/rh/ruby193/root/usr/share/gems/gems/actionpack-3.2.8/lib/abstract_controller/rendering.rb:45:in `process'
  /opt/rh/ruby193/root/usr/share/gems/gems/actionpack-3.2.8/lib/action_controller/metal.rb:203:in `dispatch'
  /opt/rh/ruby193/root/usr/share/gems/gems/actionpack-3.2.8/lib/action_controller/metal/rack_delegation.rb:14:in `dispatch'
  /opt/rh/ruby193/root/usr/share/gems/gems/actionpack-3.2.8/lib/action_controller/metal.rb:246:in `block in action'
  /opt/rh/ruby193/root/usr/share/gems/gems/actionpack-3.2.8/lib/action_dispatch/routing/route_set.rb:73:in `call'
  /opt/rh/ruby193/root/usr/share/gems/gems/actionpack-3.2.8/lib/action_dispatch/routing/route_set.rb:73:in `dispatch'
  /opt/rh/ruby193/root/usr/share/gems/gems/actionpack-3.2.8/lib/action_dispatch/routing/route_set.rb:36:in `call'
  /opt/rh/ruby193/root/usr/share/gems/gems/journey-1.0.4/lib/journey/router.rb:68:in `block in call'
  /opt/rh/ruby193/root/usr/share/gems/gems/journey-1.0.4/lib/journey/router.rb:56:in `each'
  /opt/rh/ruby193/root/usr/share/gems/gems/journey-1.0.4/lib/journey/router.rb:56:in `call'
  /opt/rh/ruby193/root/usr/share/gems/gems/actionpack-3.2.8/lib/action_dispatch/routing/route_set.rb:600:in `call'
  /opt/rh/ruby193/root/usr/share/gems/gems/rack-recaptcha-0.6.5/lib/rack/recaptcha.rb:50:in `_call'
  /opt/rh/ruby193/root/usr/share/gems/gems/rack-recaptcha-0.6.5/lib/rack/recaptcha.rb:37:in `call'
  /opt/rh/ruby193/root/usr/share/gems/gems/actionpack-3.2.8/lib/action_dispatch/middleware/best_standards_support.rb:17:in `call'
  /opt/rh/ruby193/root/usr/share/gems/gems/rack-1.4.1/lib/rack/etag.rb:23:in `call'
  /opt/rh/ruby193/root/usr/share/gems/gems/rack-1.4.1/lib/rack/conditionalget.rb:35:in `call'
  /opt/rh/ruby193/root/usr/share/gems/gems/actionpack-3.2.8/lib/action_dispatch/middleware/head.rb:14:in `call'
  /opt/rh/ruby193/root/usr/share/gems/gems/actionpack-3.2.8/lib/action_dispatch/middleware/params_parser.rb:21:in `call'
  /opt/rh/ruby193/root/usr/share/gems/gems/actionpack-3.2.8/lib/action_dispatch/middleware/flash.rb:242:in `call'
  /opt/rh/ruby193/root/usr/share/gems/gems/rack-1.4.1/lib/rack/session/abstract/id.rb:205:in `context'
  /opt/rh/ruby193/root/usr/share/gems/gems/rack-1.4.1/lib/rack/session/abstract/id.rb:200:in `call'
  /opt/rh/ruby193/root/usr/share/gems/gems/actionpack-3.2.8/lib/action_dispatch/middleware/cookies.rb:339:in `call'
  /opt/rh/ruby193/root/usr/share/gems/gems/actionpack-3.2.8/lib/action_dispatch/middleware/callbacks.rb:28:in `block in call'
  /opt/rh/ruby193/root/usr/share/gems/gems/activesupport-3.2.8/lib/active_support/callbacks.rb:405:in `_run__209408031758499814__call__2168049308470060070__callbacks'
  /opt/rh/ruby193/root/usr/share/gems/gems/activesupport-3.2.8/lib/active_support/callbacks.rb:405:in `__run_callback'
  /opt/rh/ruby193/root/usr/share/gems/gems/activesupport-3.2.8/lib/active_support/callbacks.rb:385:in `_run_call_callbacks'
  /opt/rh/ruby193/root/usr/share/gems/gems/activesupport-3.2.8/lib/active_support/callbacks.rb:81:in `run_callbacks'
  /opt/rh/ruby193/root/usr/share/gems/gems/actionpack-3.2.8/lib/action_dispatch/middleware/callbacks.rb:27:in `call'
  /opt/rh/ruby193/root/usr/share/gems/gems/rack-1.4.1/lib/rack/sendfile.rb:102:in `call'
  /opt/rh/ruby193/root/usr/share/gems/gems/actionpack-3.2.8/lib/action_dispatch/middleware/remote_ip.rb:31:in `call'
  /opt/rh/ruby193/root/usr/share/gems/gems/actionpack-3.2.8/lib/action_dispatch/middleware/debug_exceptions.rb:16:in `call'
  /opt/rh/ruby193/root/usr/share/gems/gems/actionpack-3.2.8/lib/action_dispatch/middleware/show_exceptions.rb:56:in `call'
  /opt/rh/ruby193/root/usr/share/gems/gems/railties-3.2.8/lib/rails/rack/logger.rb:26:in `call_app'
  /opt/rh/ruby193/root/usr/share/gems/gems/railties-3.2.8/lib/rails/rack/logger.rb:16:in `call'
  /opt/rh/ruby193/root/usr/share/gems/gems/actionpack-3.2.8/lib/action_dispatch/middleware/request_id.rb:22:in `call'
  /opt/rh/ruby193/root/usr/share/gems/gems/rack-1.4.1/lib/rack/methodoverride.rb:21:in `call'
  /opt/rh/ruby193/root/usr/share/gems/gems/rack-1.4.1/lib/rack/runtime.rb:17:in `call'
  /opt/rh/ruby193/root/usr/share/gems/gems/activesupport-3.2.8/lib/active_support/cache/strategy/local_cache.rb:72:in `call'
  /opt/rh/ruby193/root/usr/share/gems/gems/rack-cache-1.2/lib/rack/cache/context.rb:136:in `forward'
  /opt/rh/ruby193/root/usr/share/gems/gems/rack-cache-1.2/lib/rack/cache/context.rb:143:in `pass'
  /opt/rh/ruby193/root/usr/share/gems/gems/rack-cache-1.2/lib/rack/cache/context.rb:155:in `invalidate'
  /opt/rh/ruby193/root/usr/share/gems/gems/rack-cache-1.2/lib/rack/cache/context.rb:71:in `call!'
  /opt/rh/ruby193/root/usr/share/gems/gems/rack-cache-1.2/lib/rack/cache/context.rb:51:in `call'
  /opt/rh/ruby193/root/usr/share/gems/gems/railties-3.2.8/lib/rails/engine.rb:479:in `call'
  /opt/rh/ruby193/root/usr/share/gems/gems/railties-3.2.8/lib/rails/application.rb:223:in `call'
  /opt/rh/ruby193/root/usr/share/gems/gems/railties-3.2.8/lib/rails/railtie/configurable.rb:30:in `method_missing'
  /opt/rh/ruby193/root/usr/share/gems/gems/passenger-3.0.21/lib/phusion_passenger/rack/request_handler.rb:97:in `process_request'
  /opt/rh/ruby193/root/usr/share/gems/gems/passenger-3.0.21/lib/phusion_passenger/abstract_request_handler.rb:521:in `accept_and_process_next_request'
  /opt/rh/ruby193/root/usr/share/gems/gems/passenger-3.0.21/lib/phusion_passenger/abstract_request_handler.rb:274:in `main_loop'
  /opt/rh/ruby193/root/usr/share/gems/gems/passenger-3.0.21/lib/phusion_passenger/rack/application_spawner.rb:206:in `start_request_handler'
  /opt/rh/ruby193/root/usr/share/gems/gems/passenger-3.0.21/lib/phusion_passenger/rack/application_spawner.rb:79:in `block in spawn_application'
  /opt/rh/ruby193/root/usr/share/gems/gems/passenger-3.0.21/lib/phusion_passenger/utils.rb:470:in `safe_fork'
  /opt/rh/ruby193/root/usr/share/gems/gems/passenger-3.0.21/lib/phusion_passenger/rack/application_spawner.rb:64:in `spawn_application'
  /opt/rh/ruby193/root/usr/share/gems/gems/passenger-3.0.21/lib/phusion_passenger/spawn_manager.rb:264:in `spawn_rack_application'
  /opt/rh/ruby193/root/usr/share/gems/gems/passenger-3.0.21/lib/phusion_passenger/spawn_manager.rb:137:in `spawn_application'
  /opt/rh/ruby193/root/usr/share/gems/gems/passenger-3.0.21/lib/phusion_passenger/spawn_manager.rb:275:in `handle_spawn_application'
  /opt/rh/ruby193/root/usr/share/gems/gems/passenger-3.0.21/lib/phusion_passenger/abstract_server.rb:357:in `server_main_loop'
  /opt/rh/ruby193/root/usr/share/gems/gems/passenger-3.0.21/lib/phusion_passenger/abstract_server.rb:206:in `start_synchronously'
  /opt/rh/ruby193/root/usr/share/gems/gems/passenger-3.0.21/helper-scripts/passenger-spawn-server:102:in `<main>' (pid:12030)
2013-09-23 04:19:38.894 [INFO ] Rendered console/error.html.haml within layouts/console (1.1ms) (pid:12030)
2013-09-23 04:19:38.777 [INFO ] Rendered /opt/rh/ruby193/root/usr/share/gems/gems/openshift-origin-console-1.15.1/app/views/layouts/_head.html.haml (1.3ms) (pid:12030)
2013-09-23 04:19:38.791 [INFO ] Rendered layouts/console/_stylesheets.html.haml (1.1ms) (pid:12030)
2013-09-23 04:19:38.856 [INFO ] Rendered layouts/console/_header.html.haml (6.1ms) (pid:12030)
2013-09-23 04:19:38.863 [INFO ] Rendered layouts/_footer.html.haml (0.2ms) (pid:12030)
2013-09-23 04:19:38.869 [INFO ] Rendered layouts/console/_javascripts.html.haml (0.5ms) (pid:12030)
2013-09-23 04:19:38.872 [INFO ] Completed 200 OK in 330ms (Views: 80.1ms) (pid:12030)


Expected results:

The should be correct error message returned to console.

Additional info:

Comment 1 Yujie Zhang 2013-09-23 09:50:39 UTC
To make the steps clear, you can reproduce as following:
1. Add an account to be "Can edit" role of a domain
2. Try to add cartridge to the application of the domain using above account.

Comment 2 Jordan Liggitt 2013-09-24 20:04:15 UTC
Will display correct message for all edit operations with view-only access:
Add/Edit/Delete alias
Add cartridge
Restart app
Delete app
Edit scaling parameters

Comment 3 Jordan Liggitt 2013-09-25 14:29:45 UTC
Will merge in https://github.com/openshift/li/pull/1903

Comment 4 Yujie Zhang 2013-09-26 05:43:07 UTC
Tested on fork_ami_origin_ui_72_membership_863, tried all the above operateions with view-only access, error message can be displayed correctly, so verify this bug, thanks.


Note You need to log in before you can comment on or make changes to this bug.