Bug 1163962

Summary: katello-agent will fail to start properly on future rhel releases (and subscription-manager releases)
Product: Red Hat Satellite Reporter: Mike McCune <mmccune>
Component: katello-agentAssignee: Katello Bug Bin <katello-bugs>
Status: CLOSED ERRATA QA Contact: Katello QA List <katello-qa-list>
Severity: high Docs Contact:
Priority: unspecified    
Version: 6.0.4CC: achan, bbuckingham, bkearney, chrobert, cwelton, hiltona, jcallaha, jmontleo, jsherril, katello-bugs, mmccune, nshaik, omaciel, rhenness, sthirugn, tkolhar, xdmoon
Target Milestone: UnspecifiedKeywords: Triaged
Target Release: Unused   
Hardware: Unspecified   
OS: Unspecified   
URL: http://projects.theforeman.org/issues/7815
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: 1146292 Environment:
Last Closed: 2014-11-25 10:25:23 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:
Embargoed:
Bug Depends On: 1146292    
Bug Blocks: 1115190    

Description Mike McCune 2014-11-13 19:38:47 UTC
+++ This bug was initially created as a clone of Bug #1146292 +++

Description of problem:

Starting at version 1.11.5, subscription-manager had this change:  https://github.com/candlepin/subscription-manager/commit/c641b59240e46274087f90ed2e85514fe18b9176

Removing an import that we relied on (probably mistakenly relied on).

As a result, attempting to start goferd (as part of katello-agent), will result in an error in /var/log/message:

Sep 24 19:38:51 dhcp129-85 goferd: [ERROR][MainThread] gofer.agent.plugin:535 - plugin "katelloplugin", import failed
Sep 24 19:38:51 dhcp129-85 goferd: [ERROR][MainThread] gofer.agent.plugin:535 - Traceback (most recent call last): File "/usr/lib/python2.4/site-packages/gofer/agent/plugin.py", line 519, in _import plugin.impl = imp.load_source(name, path) File "/usr/lib/gofer/plugins/katelloplugin.py", line 33, in ? from subscription_manager.certlib import ConsumerIdentity ImportError: cannot import name ConsumerIdentity

As a result all katello-agent functionality does not work. 

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

any client running subscription manager 1.11.5 or newer, with katello-agent installed


How reproducible:
Always

Steps to Reproduce:
1. Install subscription-manager >= 1.11.5
2. Install katello-agent
3. restart katello-agent
4. monitor /var/log/messages

Actual results:
Nasty traceback seen above, package actions when registered against a satellite do not work, running 'katello-package-upload' fails.

Expected results:
katello-agent works fine

Additional info:

This does not affect 5.11, but will affect 6.6 upon release, and i assume 7.1 upon release.

--- Additional comment from Justin Sherrill on 2014-09-24 19:48:21 EDT ---

fix: https://github.com/Katello/katello-agent/pull/13/files

--- Additional comment from Justin Sherrill on 2014-09-24 19:48:54 EDT ---

traceback running katello-package-upload

[root@dhcp129-85 ~]# katello-package-upload 
Traceback (most recent call last):
  File "/usr/sbin/katello-package-upload", line 19, in ?
    import package_upload
  File "/usr/lib/yum-plugins/package_upload.py", line 19, in ?
    from subscription_manager import certmgr
ImportError: cannot import name certmgr

--- Additional comment from Justin Sherrill on 2014-09-24 19:50:00 EDT ---

Connecting redmine issue http://projects.theforeman.org/issues/7553 from this bug

--- Additional comment from RHEL Product and Program Management on 2014-09-24 20:04:40 EDT ---

Since this issue was entered in Red Hat Bugzilla, the pm_ack has been
set to + automatically for the next planned release

--- Additional comment from Bryan Kearney on 2014-09-24 20:05:19 EDT ---

Moving to POST since upstream bug http://projects.theforeman.org/issues/7553 has been closed
-------------
Xak Ru
I found this module in https://github.com/alikins/subscription-manager-docs/blob/master/subscription_manager.certlib
how to fix this error? In katello-agent 1.4 i don't see same errors. Only in katello-agent 2.0
-------------
Eric Helms
After talking to Xak, this appears to be an issue with the newest subscription manager. They moved the location of ConsumerIdentity that katello-agent relies on (https://github.com/candlepin/subscription-manager/commit/c641b59240e46274087f90ed2e85514fe18b9176). Instead of being at:

subscription_manager.certlib

The ConsumerIdentity class looks like it is located at:

subscription_manager.identity (https://github.com/candlepin/subscription-manager/blob/master/src/subscription_manager/identity.py#L28)

-------------
Justin Sherrill
Christian, see the comments above, there is a PR open to fix that issue (#4) https://github.com/Katello/katello-agent/pull/12

It should fix it for el6 and 7.  It was introduced by a change to subscription-manager upstream.

--- Additional comment from Justin Sherrill on 2014-10-07 15:12:57 EDT ---

Note this is not fully fixed due to

http://projects.theforeman.org/issues/7815

Moving back to assigned

--- Additional comment from Bryan Kearney on 2014-10-07 16:05:05 EDT ---

Moving to POST since upstream bug http://projects.theforeman.org/issues/7553 has been closed
-------------
Xak Ru
I found this module in https://github.com/alikins/subscription-manager-docs/blob/master/subscription_manager.certlib
how to fix this error? In katello-agent 1.4 i don't see same errors. Only in katello-agent 2.0
-------------
Eric Helms
After talking to Xak, this appears to be an issue with the newest subscription manager. They moved the location of ConsumerIdentity that katello-agent relies on (https://github.com/candlepin/subscription-manager/commit/c641b59240e46274087f90ed2e85514fe18b9176). Instead of being at:

subscription_manager.certlib

The ConsumerIdentity class looks like it is located at:

subscription_manager.identity (https://github.com/candlepin/subscription-manager/blob/master/src/subscription_manager/identity.py#L28)

-------------
Justin Sherrill
Christian, see the comments above, there is a PR open to fix that issue (#4) https://github.com/Katello/katello-agent/pull/12

It should fix it for el6 and 7.  It was introduced by a change to subscription-manager upstream.

--- Additional comment from Bryan Kearney on 2014-10-08 14:05:00 EDT ---

Upstream bug assigned to jsherril

--- Additional comment from Bryan Kearney on 2014-10-09 16:04:40 EDT ---

Moving to POST since upstream bug http://projects.theforeman.org/issues/7815 has been closed

--- Additional comment from Justin Sherrill on 2014-10-14 08:46:40 EDT ---

NOTE! there are 2 PRs/commits that need cherry picking:

https://github.com/Katello/katello-agent/pull/12
https://github.com/Katello/katello-agent/pull/15

In that order

--- Additional comment from Jason Montleon on 2014-10-29 09:04:52 EDT ---

git cherry-pick -x fa9ed21ea782ea81ee0ea62cb29672130666c6d6
[SATELLITE-6.0.4 753e866] Fixes #7553: Update ConsumerIdentity location.
 Author: Eric D. Helms <ericdhelms>
 2 files changed, 2 insertions(+), 2 deletions(-)

git cherry-pick -x f1452fce82e04a05a4fb4d90c75c840886ebb985
[SATELLITE-6.0.4 8667f97] fixes #7815 - fixing package upload feature with new sub-man
 Author: Justin Sherrill <jsherril>
 1 file changed, 18 insertions(+), 3 deletions(-)

--- Additional comment from Jason Montleon on 2014-10-30 09:48:33 EDT ---

Mass move to ON_QA for Satellite 6.0.4 GA Post Release Compose 3

--- Additional comment from Tazim Kolhar on 2014-10-31 07:37:30 EDT ---

VERIFIED:

*** This bug is verified in upstream.  This fix should eventually land in future downstream builds ***

# rpm -qa | grep foreman
foreman-1.6.0.47-1.el7sat.noarch
foreman-compute-1.6.0.47-1.el7sat.noarch
ruby193-rubygem-foreman_hooks-0.3.5-2.el7sat.noarch
foreman-gce-1.6.0.47-1.el7sat.noarch
ruby193-rubygem-foreman_discovery-1.3.0-2.el7sat.noarch
foreman-libvirt-1.6.0.47-1.el7sat.noarch
foreman-proxy-1.6.0.30-1.el7sat.noarch
ruby193-rubygem-foreman-redhat_access-0.0.4-2.el7sat.noarch
foreman-vmware-1.6.0.47-1.el7sat.noarch
rubygem-hammer_cli_foreman_tasks-0.0.3-3.el7sat.noarch
foreman-selinux-1.6.0.15-1.el7sat.noarch
ruby193-rubygem-foreman-tasks-0.6.9-1.1.el7sat.noarch
foreman-ovirt-1.6.0.47-1.el7sat.noarch
foreman-postgresql-1.6.0.47-1.el7sat.noarch
qe-sat6-rhel7.usersys.redhat.com-foreman-proxy-1.0-1.noarch
qe-sat6-rhel7.usersys.redhat.com-foreman-client-1.0-1.noarch
rubygem-hammer_cli_foreman-0.1.1-16.el7sat.noarch
ruby193-rubygem-foreman_bootdisk-2.0.6-1.1.el7sat.noarch

# subscription-manager version
server type: This system is currently not registered.
subscription management server: 0.9.26-1
subscription management rules: 5.11
subscription-manager: 1.12.14-7.el6

# tail  -f /var/log/messages
Oct 31 07:34:42 hp-ml370g5-01 yum[24493]: Installed: pulp-rpm-handlers-2.4.3-1.el6sat.noarch
Oct 31 07:34:45 hp-ml370g5-01 goferd: [INFO][MainThread] gofer.agent.plugin:521 - plugin [builtin] loaded using: /usr/share/gofer/plugins/builtin.py
Oct 31 07:34:45 hp-ml370g5-01 yum[24493]: Installed: katello-agent-1.5.3-6.el6sat.noarch
Oct 31 07:34:45 hp-ml370g5-01 goferd: [INFO][MainThread] gofer.agent.plugin:521 - plugin [katelloplugin] loaded using: /usr/lib/gofer/plugins/katelloplugin.py
Oct 31 07:34:46 hp-ml370g5-01 goferd: [INFO][MainThread] rhsm.connection:659 - Using certificate authentication: key = /etc/pki/consumer/key.pem, cert = /etc/pki/consumer/cert.pem, ca = /etc/rhsm/ca/, insecure = False
Oct 31 07:34:46 hp-ml370g5-01 goferd: [INFO][MainThread] rhsm.connection:670 - Connection Built: host: subscription.rhn.redhat.com, port: 443, handler: /subscription
Oct 31 07:34:47 hp-ml370g5-01 goferd: [INFO][MainThread] katelloplugin:277 - reporting: {'enabled_repos': {'repos': [{'baseurl': ['https://cdn.redhat.com/content/aus/rhel/server/6/6Server/x86_64/os'], 'repositoryid': 'rhel-6-server-aus-rpms'}, {'baseurl': ['https://cdn.redhat.com/content/eus/rhel/server/6/6Server/x86_64/os'], 'repositoryid': 'rhel-6-server-eus-rpms'}, {'baseurl': ['https://cdn.redhat.com/content/dist/rhel/server/6/6Server/x86_64/mrg-g/2/os'], 'repositoryid': 'rhel-6-server-grid-rpms'}, {'baseurl': ['https://cdn.redhat.com/content/htb/rhel/server/6/6Server/x86_64/os'], 'repositoryid': 'rhel-6-server-htb-rpms'}, {'baseurl': ['https://cdn.redhat.com/content/dist/rhel/server/6/6Server/x86_64/mrg-g-execute/2/os'], 'repositoryid': 'rhel-6-server-mrg-grid-execute-rpms'}, {'baseurl': ['https://cdn.redhat.com/content/dist/rhel/server/6/6Server/x86_64/mrg-r/2/os'], 'repositoryid': 'rhel-6-server-realtime-rpms'}, {'baseurl': ['https://cdn.redhat.com/content/dist/rhel/server/6/6Server/x86_64/os'], 'repositoryid': 'rhel-6-server-rpms'}, {'baseurl': ['https://cdn.redhat.com/content/dist/rhs/server/2.0/x86_64/rhel/6.2/scalablefilesystem/os'], 'repositoryid': 'rhel-6.2-scalefs-server-for-rhs-2.0-rpms'}, {'baseurl': ['https://cdn.redhat.com/content/dist/rhs/server/2.0/x86_64/rhel/6.2/os'], 'repositoryid': 'rhel-6.2-server-for-rhs-2.0-rpms'}, {'baseurl': ['https://cdn.redhat.com/content/aus/rhel/server/6/6Server/x86_64/highavailability/os'], 'repositoryid': 'rhel-ha-for-rhel-6-server-aus-rpms'}, {'baseurl': ['https://cdn.redhat.com/content/eus/rhel/server/6/6Server/x86_64/highavailability/os'], 'repositoryid': 'rhel-ha-for-rhel-6-server-eus-rpms'}, {'baseurl': ['https://cdn.redhat.com/content/dist/rhel/server/6/6Server/x86_64/highavailability/os'], 'repositoryid': 'rhel-ha-for-rhel-6-server-rpms'}, {'baseurl': ['https://cdn.redhat.com/content/dist/rhel/server/6/6Server/x86_64/hpn/os'], 'repositoryid': 'rhel-hpn-for-rhel-6-server-rpms'}, {'baseurl': ['https://cdn.redhat.com/content/aus/rhel/server/6/6Server/x86_64/loadbalancer/os'], 'reposi
Oct 31 07:34:48 hp-ml370g5-01 goferd: [ERROR][MainThread] katelloplugin:103 - send enabled report failed: Runtime Error Could not find resource for relative : /systems/e177350e-596b-4f7f-a6c0-ad3f0a5730f0/enabled_repos of full path: http://candlepin.dist.prod.ext.phx2.redhat.com/candlepin/systems/e177350e-596b-4f7f-a6c0-ad3f0a5730f0/enabled_repos at org.jboss.resteasy.core.registry.RootSegment.matchChildren:360
Oct 31 07:34:48 hp-ml370g5-01 goferd: [INFO][Actions] builtin:38 - Hello:  [main] enabled=1  [messaging] url= uuid=admin.eng.bos.redhat.com
Oct 31 07:34:48 hp-ml370g5-01 goferd: [INFO][MainThread] gofer.transport.qpid.broker:69 - connecting: {subscription.rhn.redhat.com:5671}:|transport=SSL|host=subscription.rhn.redhat.com|port=5671|cacert=/etc/rhsm/ca/candlepin-local.pem|clientcert=/etc/pki/consumer/bundle.pem|userid=None|password=None|vhost=None
Oct 31 07:35:48 hp-ml370g5-01 goferd: [WARNING][MainThread] qpid.messaging:453 - recoverable error[attempt 1]: timed out
Oct 31 07:35:48 hp-ml370g5-01 goferd: [WARNING][MainThread] qpid.messaging:455 - sleeping 1 seconds
Oct 31 07:35:49 hp-ml370g5-01 goferd: [WARNING][Thread-2] qpid.messaging:537 - trying: subscription.rhn.redhat.com:5671
Oct 31 07:36:49 hp-ml370g5-01 goferd: [WARNING][Thread-2] qpid.messaging:453 - recoverable error[attempt 2]: timed out
Oct 31 07:36:49 hp-ml370g5-01 goferd: [WARNING][Thread-2] qpid.messaging:455 - sleeping 2 seconds
Oct 31 07:36:51 hp-ml370g5-01 goferd: [WARNING][Thread-2] qpid.messaging:537 - trying: subscription.rhn.redhat.com:5671

katello-agent works fine

--- Additional comment from Tazim Kolhar on 2014-10-31 09:19:11 EDT ---

VERIFIED

against z-stream

Comment 1 Mike McCune 2014-11-13 19:50:25 UTC
This is a clone of the original bug for our 2nd errata needed for RH Common

Comment 4 Mike McCune 2014-11-21 17:33:08 UTC
New issue found where older subscription-manager versions were failing with the prior update, new fix needed:

https://github.com/Katello/katello-agent/pull/16

Comment 7 jcallaha 2014-11-21 21:24:55 UTC
VERIFIED

Version tested:
katello-agent.noarch 0:1.5.3-7.el6sat

rhel5.11/x86_64
rhel6.6/ppc64
rhel6.4/x86_64
rhel6.5/i386
rhel6.6/i386
rhel6.5/ppc64
rhel6.6/x86_64
rhel7.0/x86_64
rhel7.0/ppc64

Comment 9 errata-xmlrpc 2014-11-25 10:25:23 UTC
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.

https://access.redhat.com/errata/RHBA-2014:1899

Comment 10 Ryan Hennessy 2014-12-02 14:14:38 UTC
Looking through errata RHBA-2014:1899 there are no packages for RHEL 6.    The errata needs to be updated with RHEL 6 packages.

Comment 12 Red Hat Bugzilla 2023-09-14 02:50:51 UTC
The needinfo request[s] on this closed bug have been removed as they have been unresolved for 1000 days