Horizon: Internal server error when navigate to software_management, inventory and Provider Network Topology panels on lab configured with https

Bug #1792426 reported by Wendy Mitchell
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
StarlingX
Fix Released
Medium
Kristine Bujold

Bug Description

Brief Description
-----------------
Internal Server Error in navigation to Platform - Software Management panel in Horizon on system configured with https

Severity
--------
Standard

Steps to Reproduce
------------------
1. Log into Horizon on a system that has been configured with https
2. Navigate to Platform Software Management
3. Navigate to Platform System Inventory
4. Navigate to Provider Network Topology panel

Expected Behavior
------------------
Navigation to Platform - Software Management without error.
Navigation to Platform System Inventory without error.
Display of Provider Network Topology hosts and provider networks.

Actual Behavior
----------------
Unable to navigate in step 2 and 3 - Internal server error
Not displaying hosts and provider networks in Provider Network Topology panel, in step 4

Reproducibility
---------------
Reproducible

System Configuration
--------------------
storage system

Branch/Pull Time/Commit
-----------------------

Timestamp/Logs
--------------
see horizon.log

Internal Server Error: /admin/software_management/
Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/django/core/handlers/base.py", line 132, in get_response
    response = wrapped_callback(request, *callback_args, **callback_kwargs)
  File "/usr/lib/python2.7/site-packages/horizon/decorators.py", line 52, in dec
    return view_func(request, *args, **kwargs)
  File "/usr/lib/python2.7/site-packages/horizon/decorators.py", line 36, in dec
    return view_func(request, *args, **kwargs)
  File "/usr/lib/python2.7/site-packages/horizon/decorators.py", line 84, in dec
    return view_func(request, *args, **kwargs)
  File "/usr/lib/python2.7/site-packages/horizon/decorators.py", line 52, in dec
    return view_func(request, *args, **kwargs)
  File "/usr/lib/python2.7/site-packages/horizon/decorators.py", line 36, in dec
    return view_func(request, *args, **kwargs)
  File "/usr/lib/python2.7/site-packages/horizon/decorators.py", line 84, in dec
    return view_func(request, *args, **kwargs)
  File "/usr/lib/python2.7/site-packages/django/views/generic/base.py", line 71, in view
    return self.dispatch(request, *args, **kwargs)
  File "/usr/lib/python2.7/site-packages/django/views/generic/base.py", line 89, in dispatch
    return handler(request, *args, **kwargs)
  File "/usr/lib/python2.7/site-packages/horizon/tabs/views.py", line 121, in get
    self.load_tabs()
  File "/usr/lib/python2.7/site-packages/horizon/tabs/views.py", line 88, in load_tabs
    tab_group = self.get_tabs(self.request, **self.kwargs)
  File "/usr/lib/python2.7/site-packages/starlingx_dashboard/dashboards/admin/software_management/views.py", line 40, in get_tabs
    return self.tab_group_class(request, **kwargs)
  File "/usr/lib/python2.7/site-packages/horizon/tabs/base.py", line 109, in __init__
    tab_instances.append((tab.slug, tab(self, request)))
  File "/usr/lib/python2.7/site-packages/horizon/tabs/base.py", line 431, in __init__
    super(TableTab, self).__init__(tab_group, request)
  File "/usr/lib/python2.7/site-packages/horizon/tabs/base.py", line 275, in __init__
    self._allowed = self.allowed(request) and (
  File "/usr/lib/python2.7/site-packages/starlingx_dashboard/dashboards/admin/software_management/tabs.py", line 128, in allowed
    systems = stx_api.sysinv.system_list(request)
  File "/usr/lib/python2.7/site-packages/starlingx_dashboard/api/sysinv.py", line 993, in system_list
    systems = cgtsclient(request).isystem.list()
  File "/usr/lib64/python2.7/site-packages/cgtsclient/v1/isystem.py", line 30, in list
    return self._list(self._path(), "isystems")
  File "/usr/lib64/python2.7/site-packages/cgtsclient/common/base.py", line 66, in _list
    _, body = self.api.json_request('GET', url)
  File "/usr/lib64/python2.7/site-packages/cgtsclient/common/http.py", line 248, in json_request
    method, **kwargs)
  File "/usr/lib64/python2.7/site-packages/cgtsclient/common/http.py", line 191, in _cs_request
    raise exceptions.SslCertificateValidationError(reason=e)
SslCertificateValidationError: Validation of the Ssl certificate failed. reason=[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:579)

[ERROR] django.request: Internal Server Error: /admin/inventory/
Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/django/core/handlers/base.py", line 132, in get_response
    response = wrapped_callback(request, *callback_args, **callback_kwargs)
  File "/usr/lib/python2.7/site-packages/horizon/decorators.py", line 52, in dec
    return view_func(request, *args, **kwargs)
  File "/usr/lib/python2.7/site-packages/horizon/decorators.py", line 36, in dec
    return view_func(request, *args, **kwargs)
...

[ERROR] django.request: Internal Server Error: /admin/host_topology/json
Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/django/core/handlers/base.py", line 132, in get_response
    response = wrapped_callback(request, *callback_args, **callback_kwargs)
  File "/usr/lib/python2.7/site-packages/horizon/decorators.py", line 52, in dec
    return view_func(request, *args, **kwargs)
  File "/usr/lib/python2.7/site-packages/horizon/decorators.py", line 36, in dec
    return view_func(request, *args, **kwargs)

description: updated
Ghada Khalil (gkhalil)
tags: added: stx.gui
Revision history for this message
Ghada Khalil (gkhalil) wrote :

Targeted for stx.2018.10 -- horizon navigation is broken for systems w/ https

Changed in starlingx:
importance: Undecided → Medium
tags: added: stx.2018.10
Ghada Khalil (gkhalil)
Changed in starlingx:
status: New → Triaged
Changed in starlingx:
assignee: nobody → Kristine Bujold (kbujold)
Changed in starlingx:
status: Triaged → In Progress
Revision history for this message
Kristine Bujold (kbujold) wrote :

/var/log/haproxy.log

2018-09-20T15:40:53.000 127.0.0.1 haproxy[32247]: info 128.224.150.84:55272 [20/Sep/2018:15:40:53.365] sysinv-restapi/1: SSL handshake failure

Revision history for this message
Kristine Bujold (kbujold) wrote :

It appears this commit broke Horizon's HTTPS. The URLs for the cgtsclient was changed from admin to public in starlingx_dashboard/api/sysinv.py.

https://git.openstack.org/cgit/openstack/stx-gui/commit/?id=a814981a9f5afa7afafc53edfe857b932327959c

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to stx-gui (master)

Fix proposed to branch: master
Review: https://review.openstack.org/604170

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to stx-gui (master)

Reviewed: https://review.openstack.org/604170
Committed: https://git.openstack.org/cgit/openstack/stx-gui/commit/?id=5a9520488983a9da77c2c107a6b1ddadacbc9462
Submitter: Zuul
Branch: master

commit 5a9520488983a9da77c2c107a6b1ddadacbc9462
Author: Kristine Bujold <email address hidden>
Date: Thu Sep 20 13:30:00 2018 -0400

    Horizon fails to display data when HTTPS

    Commit a814981a9f5afa7afafc53edfe857b932327959c changed the URLs for
    cgtsclient from admin to public. This caused Horizon to not be able
    to display data when the system is set to HTTPS. This commit reverts
    that change.

    Closes-Bug: 1792426

    Change-Id: I1fdf210c0a16ff44609ffd2f64de08e37a77c129
    Signed-off-by: Kristine Bujold <email address hidden>

Changed in starlingx:
status: In Progress → Fix Released
Ken Young (kenyis)
tags: added: stx.1.0
removed: stx.2018.10
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.