Bug 1123020

Summary: subscription-manager depends on dbus messagebus but doesn't let user know
Product: Red Hat Enterprise Linux 6 Reporter: Dave Sullivan <dsulliva>
Component: subscription-managerAssignee: William Poteat <wpoteat>
Status: CLOSED NOTABUG QA Contact: John Sefler <jsefler>
Severity: high Docs Contact:
Priority: unspecified    
Version: 6.6CC: dgoodwin, wpoteat
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2014-07-29 13:21:44 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Bug Depends On:    
Bug Blocks: 1014343    

Description Dave Sullivan 2014-07-24 15:47:19 UTC
Description of problem:

If a user has disabled messagebus service subscription-manager will show errors but won't indicate any issues to the user on the cli.

from /var/log/rhsm/rhsm.log

2014-07-23 20:40:51,317 [INFO]  @cache.py:168 - Checking current system info against cache: /var/lib/rhsm/cache/installed_products.json
2014-07-23 20:40:51,317 [INFO]  @cache.py:185 - No changes.
2014-07-23 20:40:51,318 [DEBUG]  @certdirectory.py:204 - Installed product IDs: []
2014-07-23 20:40:51,318 [DEBUG]  @connection.py:420 - Loading CA PEM certificates from: /etc/rhsm/ca/
2014-07-23 20:40:51,318 [DEBUG]  @connection.py:402 - Loading CA certificate: '/etc/rhsm/ca/redhat-uep.pem'
2014-07-23 20:40:51,319 [DEBUG]  @connection.py:402 - Loading CA certificate: '/etc/rhsm/ca/candlepin-stage.pem'
2014-07-23 20:40:51,319 [DEBUG]  @connection.py:441 - Making request: GET /subscription/consumers/9a31e1d2-1025-43a7-8991-cc99283a6c03/compliance
2014-07-23 20:40:51,817 [DEBUG]  @connection.py:460 - Response status: 200
2014-07-23 20:40:51,818 [DEBUG]  @cache.py:284 - Started thread to write cache: /var/lib/rhsm/cache/entitlement_status.json
2014-07-23 20:40:51,819 [DEBUG]  @cert_sorter.py:200 - valid entitled products: []
2014-07-23 20:40:51,820 [DEBUG]  @cert_sorter.py:201 - expired entitled products: []
2014-07-23 20:40:51,820 [DEBUG]  @cert_sorter.py:202 - partially entitled products: []
2014-07-23 20:40:51,821 [DEBUG]  @cert_sorter.py:203 - unentitled products: []
2014-07-23 20:40:51,821 [DEBUG]  @cert_sorter.py:204 - future products: []
2014-07-23 20:40:51,821 [DEBUG]  @cert_sorter.py:205 - partial stacks: []
2014-07-23 20:40:51,822 [DEBUG]  @cert_sorter.py:206 - entitlements valid until: None
2014-07-23 20:40:51,823 [DEBUG]  @dbus_interface.py:46 - Unable to connect to dbus
2014-07-23 20:40:51,823 [ERROR]  @dbus_interface.py:47 - org.freedesktop.DBus.Error.NoServer: Failed to connect to socket /var/run/dbus/system_bus_socket: Connection refused
Traceback (most recent call last):
  File "/usr/share/rhsm/subscription_manager/dbus_interface.py", line 33, in __init__
    self.bus = dbus.SystemBus()
  File "/usr/lib/python2.6/site-packages/dbus/_dbus.py", line 202, in __new__
    private=private)
  File "/usr/lib/python2.6/site-packages/dbus/_dbus.py", line 108, in __new__
    bus = BusConnection.__new__(subclass, bus_type, mainloop=mainloop)
  File "/usr/lib/python2.6/site-packages/dbus/bus.py", line 125, in __new__
    bus = cls._new_for_bus(address_or_type, mainloop=mainloop)
DBusException: org.freedesktop.DBus.Error.NoServer: Failed to connect to socket /var/run/dbus/system_bus_socket: Connection refused


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

current 6.5

How reproducible:

service messagebus stop

subscription-manager register and/or attach


Actual results:

subscription-manager assuming there is a real requirement on dbus should fail out and let user know that dbus socket is not enabled from messagebus service


Expected results:


Additional info:

Comment 2 William Poteat 2014-07-29 13:21:44 UTC
The lack of dbus messaging is not a show stopper. A minimal install would not have it enabled, for instance. It is only for the pop-up altert that this is used.