Bug 2059031 - The insights-client fails to register host when using --group option in the command
Summary: The insights-client fails to register host when using --group option in the c...
Keywords:
Status: NEW
Alias: None
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: insights-client
Version: 7.9
Hardware: Unspecified
OS: Unspecified
high
high
Target Milestone: rc
: ---
Assignee: CSI Client Tools Bugs
QA Contact: Red Hat subscription-manager QE Team
URL:
Whiteboard:
: 2175779 (view as bug list)
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2022-02-28 01:02 UTC by Nikhil Gupta
Modified: 2023-07-12 08:38 UTC (History)
8 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed:
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Issue Tracker RHELPLAN-113931 0 None None None 2022-02-28 01:09:02 UTC

Description Nikhil Gupta 2022-02-28 01:02:44 UTC
Description of problem:
The insights-client fails to register host when using --group option in the command like below:

~~~
# insights-client --register --group="tag"
Fatal error
Traceback (most recent call last):
  File "/var/lib/insights/newest.egg/insights/client/phase/v1.py", line 32, in _f
    func(client, config)
  File "/var/lib/insights/newest.egg/insights/client/phase/v1.py", line 198, in post_update
    reg = client.register()
  File "/var/lib/insights/newest.egg/insights/client/__init__.py", line 72, in _init_connection
    return func(self, *args, **kwargs)
  File "/var/lib/insights/newest.egg/insights/client/__init__.py", line 406, in register
    return client.handle_registration(self.config, self.connection)
  File "/var/lib/insights/newest.egg/insights/client/client.py", line 189, in handle_registration
    return _legacy_handle_registration(config, pconn)
  File "/var/lib/insights/newest.egg/insights/client/client.py", line 151, in _legacy_handle_registration
    message, hostname, group, display_name = register(config, pconn)
  File "/var/lib/insights/newest.egg/insights/client/client.py", line 109, in register
    return pconn.register()
  File "/var/lib/insights/newest.egg/insights/client/connection.py", line 786, in register
    self.do_group()
  File "/var/lib/insights/newest.egg/insights/client/connection.py", line 624, in do_group
    self.group_systems(group_id, systems)
  File "/var/lib/insights/newest.egg/insights/client/connection.py", line 599, in group_systems
    api_group_id = get_group.json()['id']
TypeError: list indices must be integers, not str
Fatal error
Traceback (most recent call last):
  File "/etc/insights-client/rpm.egg/insights/client/phase/v1.py", line 32, in _f
    func(client, config)
  File "/etc/insights-client/rpm.egg/insights/client/phase/v1.py", line 195, in post_update
    reg = client.register()
  File "/etc/insights-client/rpm.egg/insights/client/__init__.py", line 74, in _init_connection
    return func(self, *args, **kwargs)
  File "/etc/insights-client/rpm.egg/insights/client/__init__.py", line 408, in register
    return client.handle_registration(self.config, self.connection)
  File "/etc/insights-client/rpm.egg/insights/client/client.py", line 189, in handle_registration
    return _legacy_handle_registration(config, pconn)
  File "/etc/insights-client/rpm.egg/insights/client/client.py", line 151, in _legacy_handle_registration
    message, hostname, group, display_name = register(config, pconn)
  File "/etc/insights-client/rpm.egg/insights/client/client.py", line 109, in register
    return pconn.register()
  File "/etc/insights-client/rpm.egg/insights/client/connection.py", line 778, in register
    self.do_group()
  File "/etc/insights-client/rpm.egg/insights/client/connection.py", line 613, in do_group
    self.group_systems(group_id, systems)
  File "/etc/insights-client/rpm.egg/insights/client/connection.py", line 580, in group_systems
    api_group_id = get_group.json()['id']
TypeError: list indices must be integers, not str
~~~

Version-Release number of selected component (if applicable):
Satellite version: 6.9.7
Client version: RHEL 7.9
Insights client version: 3.1.5
Insights core version: 3.0.263-1

How reproducible:
Always

Steps to Reproduce:
1. Register host with the Satellite 6.9.7 version
2. Register host on insights with the command "# insights-client --register --group="tag""


Actual results:
It fails with the following error:
~~~
  File "/etc/insights-client/rpm.egg/insights/client/connection.py", line 613, in do_group
    self.group_systems(group_id, systems)
  File "/etc/insights-client/rpm.egg/insights/client/connection.py", line 580, in group_systems
    api_group_id = get_group.json()['id']
TypeError: list indices must be integers, not str
~~~

Expected results:
Host should be registered on insights with the group "tag".

Additional info:
- It seems very similar to https://bugzilla.redhat.com/show_bug.cgi?id=1549213
- Doing the register with the following command works properly:
~~~
# insights-client --register && insights-client --group="tag" 
~~~

Comment 5 Gaël Chamoulaud 2022-04-13 11:56:34 UTC
Reproduced it and happens every time w/o Satellite as well.

Just try to register and create the initial group called "whatever":

$ insights-client --register --group="whatever"
Fatal error
Traceback (most recent call last):
  File "/var/lib/insights/newest.egg/insights/client/phase/v1.py", line 32, in _f
    func(client, config)
  File "/var/lib/insights/newest.egg/insights/client/phase/v1.py", line 198, in post_update
    reg = client.register()
  File "/var/lib/insights/newest.egg/insights/client/__init__.py", line 72, in _init_connection
    return func(self, *args, **kwargs)
  File "/var/lib/insights/newest.egg/insights/client/__init__.py", line 406, in register
    return client.handle_registration(self.config, self.connection)
  File "/var/lib/insights/newest.egg/insights/client/client.py", line 189, in handle_registration
    return _legacy_handle_registration(config, pconn)
  File "/var/lib/insights/newest.egg/insights/client/client.py", line 151, in _legacy_handle_registration
    message, hostname, group, display_name = register(config, pconn)
  File "/var/lib/insights/newest.egg/insights/client/client.py", line 109, in register
    return pconn.register()
  File "/var/lib/insights/newest.egg/insights/client/connection.py", line 786, in register
    self.do_group()
  File "/var/lib/insights/newest.egg/insights/client/connection.py", line 624, in do_group
    self.group_systems(group_id, systems)
  File "/var/lib/insights/newest.egg/insights/client/connection.py", line 599, in group_systems
    api_group_id = get_group.json()['id']
TypeError: list indices must be integers, not str
Fatal error
Traceback (most recent call last):
  File "/etc/insights-client/rpm.egg/insights/client/phase/v1.py", line 32, in _f
    func(client, config)
  File "/etc/insights-client/rpm.egg/insights/client/phase/v1.py", line 195, in post_update
    reg = client.register()
  File "/etc/insights-client/rpm.egg/insights/client/__init__.py", line 74, in _init_connection
    return func(self, *args, **kwargs)
  File "/etc/insights-client/rpm.egg/insights/client/__init__.py", line 408, in register
    return client.handle_registration(self.config, self.connection)
  File "/etc/insights-client/rpm.egg/insights/client/client.py", line 189, in handle_registration
    return _legacy_handle_registration(config, pconn)
  File "/etc/insights-client/rpm.egg/insights/client/client.py", line 151, in _legacy_handle_registration
    message, hostname, group, display_name = register(config, pconn)
  File "/etc/insights-client/rpm.egg/insights/client/client.py", line 109, in register
    return pconn.register()
  File "/etc/insights-client/rpm.egg/insights/client/connection.py", line 778, in register
    self.do_group()
  File "/etc/insights-client/rpm.egg/insights/client/connection.py", line 613, in do_group
    self.group_systems(group_id, systems)
  File "/etc/insights-client/rpm.egg/insights/client/connection.py", line 580, in group_systems
    api_group_id = get_group.json()['id']
TypeError: list indices must be integers, not str

Comment 9 Alba Hita 2023-04-04 10:58:59 UTC
*** Bug 2175779 has been marked as a duplicate of this bug. ***


Note You need to log in before you can comment on or make changes to this bug.