CI Failure: 500 error in some pages, undefined method 'profile_image_guidelines=' for Appearance
Summary
Seen at gitlab-org/distribution/team-tasks#671 (comment 368963237)
A deployment of master failed to passs production_gke_specs
. Upon investigation, we are finding the logged error, replicable at /admin/runner
only on the GKE deployment (EKS deployment does not have this issue).
Steps to reproduce
Sign in as root
, navigate to /admin/runner
Current behavior
HTTP 500 from
Expected behavior
Successful rendering of UI
Versions
- Chart: b4d91641
- Platform:
- Cloud: GKE
- Kubernetes: (
kubectl version
)- Client:
- Server:
- Helm: (
helm version
)- Client:
- Server:
Relevant logs
gke-production-a4b9oa-webservice-9c8585db6-tqpk2 webservice Completed 500 Internal Server Error in 252ms (ActiveRecord: 5.8ms | Elasticsearch: 0.0ms | Allocat
ions: 13149)
gke-production-a4b9oa-webservice-9c8585db6-tqpk2 webservice
gke-production-a4b9oa-webservice-9c8585db6-tqpk2 webservice ActionView::Template::Error (undefined method `profile_image_guidelines=' for #<Appearance:0x00005
624f9224150>
gke-production-a4b9oa-webservice-9c8585db6-tqpk2 webservice Did you mean? profile_image_guidelines_html_invalidated?): gke-production-a4b9oa-webservice-9c8585db6-tqpk2 webservice 44: %meta{ property: 'twitter:image', content: page_image }
gke-production-a4b9oa-webservice-9c8585db6-tqpk2 webservice 45: = page_card_meta_tags
gke-production-a4b9oa-webservice-9c8585db6-tqpk2 webservice 46:
gke-production-a4b9oa-webservice-9c8585db6-tqpk2 webservice 47: %title= page_title(site_name)
gke-production-a4b9oa-webservice-9c8585db6-tqpk2 webservice 48: %meta{ name: "description", content: page_description } gke-production-a4b9oa-webservice-9c8585db6-tqpk2 webservice 49:
gke-production-a4b9oa-webservice-9c8585db6-tqpk2 webservice 50: = favicon_link_tag favicon, id: 'favicon', data: { original_href: favicon }, type: 'imag
e/png'
gke-production-a4b9oa-webservice-9c8585db6-tqpk2 webservice gke-production-a4b9oa-webservice-9c8585db6-tqpk2 webservice lib/gitlab/favicon.rb:58:in `appearance' gke-production-a4b9oa-webservice-9c8585db6-tqpk2 webservice lib/gitlab/favicon.rb:8:in `main'
gke-production-a4b9oa-webservice-9c8585db6-tqpk2 webservice app/helpers/page_layout_helper.rb:44:in `favicon'
gke-production-a4b9oa-webservice-9c8585db6-tqpk2 webservice app/views/layouts/_head.html.haml:47
gke-production-a4b9oa-webservice-9c8585db6-tqpk2 webservice app/views/layouts/devise.html.haml:3
gke-production-a4b9oa-webservice-9c8585db6-tqpk2 webservice app/controllers/application_controller.rb:133:in `render'
gke-production-a4b9oa-webservice-9c8585db6-tqpk2 webservice app/controllers/sessions_controller.rb:52:in `new'
gke-production-a4b9oa-webservice-9c8585db6-tqpk2 webservice ee/app/controllers/ee/sessions_controller.rb:19:in `new'
gke-production-a4b9oa-webservice-9c8585db6-tqpk2 webservice ee/lib/gitlab/ip_address_state.rb:10:in `with'
gke-production-a4b9oa-webservice-9c8585db6-tqpk2 webservice ee/app/controllers/ee/application_controller.rb:44:in `set_current_ip_address'
gke-production-a4b9oa-webservice-9c8585db6-tqpk2 webservice app/controllers/application_controller.rb:490:in `set_current_admin'
gke-production-a4b9oa-webservice-9c8585db6-tqpk2 webservice lib/gitlab/session.rb:11:in `with_session'
gke-production-a4b9oa-webservice-9c8585db6-tqpk2 webservice app/controllers/application_controller.rb:481:in `set_session_storage'
gke-production-a4b9oa-webservice-9c8585db6-tqpk2 webservice lib/gitlab/i18n.rb:55:in `with_locale'
gke-production-a4b9oa-webservice-9c8585db6-tqpk2 webservice lib/gitlab/i18n.rb:61:in `with_user_locale'
gke-production-a4b9oa-webservice-9c8585db6-tqpk2 webservice app/controllers/application_controller.rb:475:in `set_locale'
gke-production-a4b9oa-webservice-9c8585db6-tqpk2 webservice lib/gitlab/error_tracking.rb:51:in `with_context'
gke-production-a4b9oa-webservice-9c8585db6-tqpk2 webservice app/controllers/application_controller.rb:540:in `sentry_context'
gke-production-a4b9oa-webservice-9c8585db6-tqpk2 webservice app/controllers/application_controller.rb:468:in `block in set_current_context'
gke-production-a4b9oa-webservice-9c8585db6-tqpk2 webservice lib/gitlab/application_context.rb:52:in `block in use'
gke-production-a4b9oa-webservice-9c8585db6-tqpk2 webservice lib/gitlab/application_context.rb:52:in `use'
gke-production-a4b9oa-webservice-9c8585db6-tqpk2 webservice lib/gitlab/application_context.rb:20:in `with_context'
gke-production-a4b9oa-webservice-9c8585db6-tqpk2 webservice app/controllers/application_controller.rb:461:in `set_current_context'
gke-production-a4b9oa-webservice-9c8585db6-tqpk2 webservice lib/gitlab/metrics/elasticsearch_rack_middleware.rb:24:in `call'
gke-production-a4b9oa-webservice-9c8585db6-tqpk2 webservice lib/gitlab/metrics/redis_rack_middleware.rb:22:in `call'
gke-production-a4b9oa-webservice-9c8585db6-tqpk2 webservice lib/gitlab/middleware/rails_queue_duration.rb:29:in `call'
gke-production-a4b9oa-webservice-9c8585db6-tqpk2 webservice lib/gitlab/metrics/rack_middleware.rb:17:in `block in call'
gke-production-a4b9oa-webservice-9c8585db6-tqpk2 webservice lib/gitlab/metrics/transaction.rb:54:in `run'
gke-production-a4b9oa-webservice-9c8585db6-tqpk2 webservice lib/gitlab/metrics/rack_middleware.rb:17:in `call'
gke-production-a4b9oa-webservice-9c8585db6-tqpk2 webservice lib/gitlab/request_profiler/middleware.rb:17:in `call'
gke-production-a4b9oa-webservice-9c8585db6-tqpk2 webservice ee/lib/gitlab/jira/middleware.rb:19:in `call'
gke-production-a4b9oa-webservice-9c8585db6-tqpk2 webservice lib/gitlab/middleware/go.rb:20:in `call'
gke-production-a4b9oa-webservice-9c8585db6-tqpk2 webservice lib/gitlab/etag_caching/middleware.rb:13:in `call'
gke-production-a4b9oa-webservice-9c8585db6-tqpk2 webservice lib/gitlab/middleware/multipart.rb:125:in `call'
gke-production-a4b9oa-webservice-9c8585db6-tqpk2 webservice lib/gitlab/middleware/read_only/controller.rb:51:in `call'
gke-production-a4b9oa-webservice-9c8585db6-tqpk2 webservice lib/gitlab/middleware/read_only.rb:18:in `call'
gke-production-a4b9oa-webservice-9c8585db6-tqpk2 webservice lib/gitlab/middleware/same_site_cookies.rb:27:in `call'
gke-production-a4b9oa-webservice-9c8585db6-tqpk2 webservice lib/gitlab/middleware/basic_health_check.rb:25:in `call'
gke-production-a4b9oa-webservice-9c8585db6-tqpk2 webservice lib/gitlab/middleware/handle_ip_spoof_attack_error.rb:25:in `call'
gke-production-a4b9oa-webservice-9c8585db6-tqpk2 webservice lib/gitlab/middleware/request_context.rb:23:in `call'
gke-production-a4b9oa-webservice-9c8585db6-tqpk2 webservice config/initializers/fix_local_cache_middleware.rb:9:in `call'
gke-production-a4b9oa-webservice-9c8585db6-tqpk2 webservice lib/gitlab/metrics/requests_rack_middleware.rb:60:in `call'
gke-production-a4b9oa-webservice-9c8585db6-tqpk2 webservice lib/gitlab/middleware/release_env.rb:12:in `call'
gke-production-a4b9oa-webservice-9c8585db6-tqpk2 webservice
webservice Started GET "/admin/runners" for 174.54.214.92 at 2020-06-26 15:36:48 +0000
webservice Processing by Admin::RunnersController#index as HTML
webservice Completed 500 Internal Server Error in 88ms (ActiveRecord: 11.7ms | Elasticsearch: 0.0ms | Allocations: 18698)
webservice
webservice ActionView::Template::Error (undefined method `profile_image_guidelines=' for #<Appearance:0x0000562509b75e38>
webservice Did you mean? profile_image_guidelines_html_invalidated?):
webservice 44: %meta{ property: 'twitter:image', content: page_image }
webservice 45: = page_card_meta_tags
webservice 46:
webservice 47: %title= page_title(site_name)
webservice 48: %meta{ name: "description", content: page_description }
webservice 49:
webservice 50: = favicon_link_tag favicon, id: 'favicon', data: { original_href: favicon }, type: 'image/png'
webservice
webservice lib/gitlab/favicon.rb:58:in `appearance'
webservice lib/gitlab/favicon.rb:8:in `main'
webservice app/helpers/page_layout_helper.rb:44:in `favicon'
webservice app/views/layouts/_head.html.haml:47
webservice app/views/layouts/application.html.haml:6
webservice app/views/layouts/admin.html.haml:6
webservice app/controllers/application_controller.rb:133:in `render'