Bug 782549
Summary: | traceback can occur starting subscription-manager-gui with expired entitlements | ||
---|---|---|---|
Product: | Red Hat Enterprise Linux 5 | Reporter: | John Sefler <jsefler> |
Component: | subscription-manager | Assignee: | John Sefler <jsefler> |
Status: | CLOSED ERRATA | QA Contact: | Entitlement Bugs <entitlement-bugs> |
Severity: | high | Docs Contact: | |
Priority: | urgent | ||
Version: | 5.8 | CC: | lmiksik, mkhusid, mstead, pm-rhel, 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: | 2012-02-21 06:44:28 UTC | Type: | --- |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: | |||
Bug Depends On: | |||
Bug Blocks: | 715031, 783146 | ||
Attachments: |
Description
John Sefler
2012-01-17 16:42:35 UTC
Upon further review of PART 2 of the bug above. This is explained by an expired candlepin certificate which cuts off communication with the candlepin server... [root@jsefler-onprem-5server ~]# openssl x509 -text -in /etc/rhsm/ca/jsefler-f14-5candlepin.pem | grep -A1 Validity Validity Not Before: Jan 17 01:04:40 2012 GMT Nevertheless the following traceback is still valid when starting the subscription-manager-gui with expired entitlement certs present... Traceback (most recent call last): File "/usr/sbin/subscription-manager-gui", line 117, in ? main = managergui.MainWindow() File "/usr/share/rhsm/subscription_manager/gui/managergui.py", line 214, in __init__ prod_dir=self.product_dir) File "/usr/share/rhsm/subscription_manager/gui/installedtab.py", line 99, in __init__ self.update_products() File "/usr/share/rhsm/subscription_manager/gui/installedtab.py", line 156, in update_products entry['validity_note'] = \ NameError: global name 'order' is not defined (In reply to comment #1) > Upon further review of PART 2 of the bug above. This is explained by an > expired candlepin certificate which cuts off communication with the candlepin > server... > > [root@jsefler-onprem-5server ~]# openssl x509 -text -in > /etc/rhsm/ca/jsefler-f14-5candlepin.pem | grep -A1 Validity > Validity > Not Before: Jan 17 01:04:40 2012 GMT > Ooops! I meant to show this: [root@jsefler-onprem-5server ~]# openssl x509 -text -in /etc/rhsm/ca/jsefler-f14-5candlepin.pem | grep -A2 Validity Validity Not Before: Jan 17 01:04:40 2012 GMT Not After : Jan 16 01:04:40 2013 GMT Committed in master branch: 37a4cb59341e22ed3175eb42db7a73b8beb043e9 Let me know when to push to 5.8. Created attachment 555861 [details] subscription-manager-gui started successfully with an expired entitlement cert installed Verifying master continuous integration build.... [root@jsefler-onprem-5server ~]# rpm -q subscription-manager subscription-manager-0.99.4-1.git.6.37a4cb5.el5 [root@jsefler-onprem-5server ~]# date Tue Jan 17 16:23:51 EST 2012 [root@jsefler-onprem-5server ~]# subscription-manager register --username testuser1 --password password --org admin The system has been registered with id: 0af4536f-1a39-402a-8ea1-2097cfe64665 [root@jsefler-onprem-5server ~]# subscription-manager subscribe --pool 8a90f85734ed80940134ed81a8bf02ae Successfully consumed a subscription from the pool with id 8a90f85734ed80940134ed81a8bf02ae [root@jsefler-onprem-5server ~]# subscription-manager list --consumed +-------------------------------------------+ Consumed Product Subscriptions +-------------------------------------------+ ProductName: Awesome OS for x86_64 Bits ContractNumber: 23 AccountNumber: 12331131231 SerialNumber: 2583914229535062073 Active: True QuantityUsed: 1 Begins: 01/16/2012 Expires: 01/15/2013 [root@jsefler-onprem-5server ~]# [root@jsefler-onprem-5server ~]# date 021500002013 Fri Feb 15 00:00:00 EST 2013 [root@jsefler-onprem-5server ~]# subscription-manager-gui (subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' (subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' (subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' (subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' (subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' (subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' (subscription-manager-gui:2473): libglade-WARNING **: unknown property `has_tooltip' for class `GtkToolButton' (subscription-manager-gui:2473): libglade-WARNING **: unknown property `has_tooltip' for class `GtkToolButton' (subscription-manager-gui:2473): libglade-WARNING **: unknown property `has_tooltip' for class `GtkToolButton' (subscription-manager-gui:2473): libglade-WARNING **: unknown property `has_tooltip' for class `GtkToolButton' (subscription-manager-gui:2473): libglade-WARNING **: unknown property `has_tooltip' for class `GtkToolButton' (subscription-manager-gui:2473): libglade-WARNING **: unknown attribute `swapped' for <signal>. (subscription-manager-gui:2473): libglade-WARNING **: unknown attribute `swapped' for <signal>. (subscription-manager-gui:2473): libglade-WARNING **: unknown attribute `swapped' for <signal>. (subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' (subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' (subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' (subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' (subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' (subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' (subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVPaned' (subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' (subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' (subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVPaned' (subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' /usr/share/rhsm/subscription_manager/gui/widgets.py:47: GtkWarning: gdk_gc_new: assertion `drawable != NULL' failed self.glade = gtk.glade.XML(os.path.join(GLADE_DIR, glade_file)) /usr/share/rhsm/subscription_manager/gui/widgets.py:47: GtkWarning: gdk_gc_copy: assertion `GDK_IS_GC (dst_gc)' failed self.glade = gtk.glade.XML(os.path.join(GLADE_DIR, glade_file)) /usr/share/rhsm/subscription_manager/gui/widgets.py:47: GtkWarning: gdk_gc_set_values: assertion `GDK_IS_GC (gc)' failed self.glade = gtk.glade.XML(os.path.join(GLADE_DIR, glade_file)) /usr/share/rhsm/subscription_manager/gui/widgets.py:47: GtkWarning: gdk_gc_set_dashes: assertion `GDK_IS_GC (gc)' failed self.glade = gtk.glade.XML(os.path.join(GLADE_DIR, glade_file)) (subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' (subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' (subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' (subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' (subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' (subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' (subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVPaned' (subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' (subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' (subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' (subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVPaned' (subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' (subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' (subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' (subscription-manager-gui:2473): libglade-WARNING **: unknown property `invisible_char_set' for class `GtkEntry' (subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' (subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' (subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVPaned' (subscription-manager-gui:2473): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' /usr/sbin/subscription-manager-gui:126: GtkWarning: gdk_draw_line: assertion `gc != NULL' failed sys.exit(gtk.main() or 0) VERIFIED ^^^ THE subscription-manager-gui NOW STARTS WITHOUT ANY TRACEBACK AND THE GUI CORRECTLY SHOWS THE EXPIRED ENTITLEMENT CERT ON My Subscriptions TAB IN RED. SEE ATTACHED SCREENSHOT. NOW LET'S DEMONSTRATE THAT RESTARTING THE RHSMCERTD WILL CLEAN OUT THE EXPIRED ENTITITLEMENTS.... First turn off auto-heal... [root@jsefler-onprem-5server ~]# curl -k -u testuser1:password --request PUT --data '{"autoheal":false}' --header 'accept:application/json' --header 'content-type: application/json' https://jsefler-f14-5candlepin.usersys.redhat.com:8443/candlepin/consumers/cd428ef1-fee1-450c-81cf-26f1d66b395b [root@jsefler-onprem-5server ~]# curl -k -u testuser1:password --request GET --header 'accept:application/json' --header 'content-type: application/json' https://jsefler-f14-5candlepin.usersys.redhat.com:8443/candlepin/consumers/cd428ef1-fee1-450c-81cf-26f1d66b395b | python -m simplejson/tool | grep heal % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 17507 0 17507 0 0 59429 0 --:--:-- --:--:-- --:--:-- 8491k "autoheal": false, [root@jsefler-onprem-5server ~]# [root@jsefler-onprem-5server ~]# ls /etc/pki/entitlement/ 2583914229535062073-key.pem 2583914229535062073.pem [root@jsefler-onprem-5server ~]# subscription-manager list --installed +-------------------------------------------+ Installed Product Status +-------------------------------------------+ ProductName: Awesome OS for x86_64 Bits Version: 3.11 Arch: x86_64 Status: Expired Starts: 01/16/2012 Expires: 01/15/2013 [root@jsefler-onprem-5server ~]# service rhsmcertd restart Stopping rhsmcertd [ OK ] Starting rhsmcertd 240 1440 [ OK ] [root@jsefler-onprem-5server ~]# ls /etc/pki/entitlement/ [root@jsefler-onprem-5server ~]# subscription-manager list --installed +-------------------------------------------+ Installed Product Status +-------------------------------------------+ ProductName: Awesome OS for x86_64 Bits Version: 3.11 Arch: x86_64 Status: Not Subscribed Starts: None Expires: None ^^^ VERIFIED... Restarting the rhsmcertd (with the consumer's autoheal set to false) successfully cleans out the expired entitlement. Moreover, the My Subscriptions tab in the subscription-manager-gui automatically empties the expired entitlement. The fixes in master are VERIFIED. I recommend merging the fix to rhel58 branch too. Merged into 5.8 branch: b01e41e876fe2a28e55d76b1fe12b11d9f0c1a6b Verifying Version from RHEL-5.8-Server-RC-1.1 compose... [root@jsefler-rhel58server-rc11 ~]# rpm -q subscription-manager subscription-manager-0.98.14-1.el5 [root@jsefler-rhel58server-rc11 ~]# date Fri Jan 27 15:11:13 EST 2012 [root@jsefler-rhel58server-rc11 ~]# subscription-manager register --username qa --autosubscribe Password: The system has been registered with id: 1eaa2f09-7eaf-41a6-ad67-8ec6c1fe80f8 Installed Product Current Status: ProductName: Red Hat Enterprise Linux Server Status: Subscribed [root@jsefler-rhel58server-rc11 ~]# subscription-manager list --consumed | grep "Red Hat Enterprise Linux Server" -A8 ProductName: Red Hat Enterprise Linux Server ContractNumber: 2596950 AccountNumber: 477931 SerialNumber: 2864922396993651779 Active: True QuantityUsed: 1 Begins: 10/05/2011 Expires: 01/01/2022 [root@jsefler-rhel58server-rc11 ~]# date 020100002022 Tue Feb 1 00:00:00 EST 2022 [root@jsefler-rhel58server-rc11 ~]# subscription-manager-gui (subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' (subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' (subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' (subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' (subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' (subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' (subscription-manager-gui:4409): libglade-WARNING **: unknown property `has_tooltip' for class `GtkToolButton' (subscription-manager-gui:4409): libglade-WARNING **: unknown property `has_tooltip' for class `GtkToolButton' (subscription-manager-gui:4409): libglade-WARNING **: unknown property `has_tooltip' for class `GtkToolButton' (subscription-manager-gui:4409): libglade-WARNING **: unknown property `has_tooltip' for class `GtkToolButton' (subscription-manager-gui:4409): libglade-WARNING **: unknown property `has_tooltip' for class `GtkToolButton' (subscription-manager-gui:4409): libglade-WARNING **: unknown attribute `swapped' for <signal>. (subscription-manager-gui:4409): libglade-WARNING **: unknown attribute `swapped' for <signal>. (subscription-manager-gui:4409): libglade-WARNING **: unknown attribute `swapped' for <signal>. (subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' (subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' (subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' (subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' (subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' (subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' (subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVPaned' (subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' (subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' (subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVPaned' (subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' /usr/share/rhsm/subscription_manager/gui/widgets.py:47: GtkWarning: gdk_gc_new: assertion `drawable != NULL' failed self.glade = gtk.glade.XML(os.path.join(GLADE_DIR, glade_file)) /usr/share/rhsm/subscription_manager/gui/widgets.py:47: GtkWarning: gdk_gc_copy: assertion `GDK_IS_GC (dst_gc)' failed self.glade = gtk.glade.XML(os.path.join(GLADE_DIR, glade_file)) /usr/share/rhsm/subscription_manager/gui/widgets.py:47: GtkWarning: gdk_gc_set_values: assertion `GDK_IS_GC (gc)' failed self.glade = gtk.glade.XML(os.path.join(GLADE_DIR, glade_file)) /usr/share/rhsm/subscription_manager/gui/widgets.py:47: GtkWarning: gdk_gc_set_dashes: assertion `GDK_IS_GC (gc)' failed self.glade = gtk.glade.XML(os.path.join(GLADE_DIR, glade_file)) (subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' (subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' (subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' (subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' (subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' (subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' (subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVPaned' (subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' (subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' (subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' (subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVPaned' (subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' (subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' (subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' (subscription-manager-gui:4409): libglade-WARNING **: unknown property `invisible_char_set' for class `GtkEntry' (subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' (subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' (subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVPaned' (subscription-manager-gui:4409): libglade-WARNING **: unknown property `orientation' for class `GtkVBox' /usr/sbin/subscription-manager-gui:122: GtkWarning: gdk_draw_line: assertion `gc != NULL' failed sys.exit(gtk.main() or 0) VERIFIED ^^^ THE subscription-manager-gui NOW STARTS WITHOUT ANY non-glade TRACEBACK AND THE GUI CORRECTLY SHOWS THE EXPIRED PRODUCT STATUS ON My Installed Software TAB. SEE ATTACHED SCREENSHOT. Created attachment 557941 [details]
subscription-manager-gui started successfully with an expired entitlement cert installed
[root@jsefler-rhel58server-rc11 ~]# rpm -q subscription-manager-gnome
subscription-manager-gnome-0.98.14-1.el5
moving to VERIFIED
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. http://rhn.redhat.com/errata/RHBA-2012-0154.html *** Bug 783146 has been marked as a duplicate of this bug. *** |