Azure / azure-iot-cli-extension

Azure IoT extension for Azure CLI
Other
83 stars 65 forks source link

az iot hub monitor-events crashes on Ubuntu 20.04 because of c_uamqp module #542

Closed Lay3r8 closed 2 years ago

Lay3r8 commented 2 years ago

Describe the bug

az iot hub monitor-events crashes on Ubuntu 20.04 because of c_uamqp module

Command Name az iot hub monitor-events Extension Name: azure-iot. Version: 0.14.0.

Errors:

The command failed with an unexpected error. Here is the traceback:
cannot import name 'c_uamqp' from partially initialized module 'uamqp' (most likely due to a circular import) (/home/simon/.azure/cliextensions/azure-iot/uamqp/__init__.py)
Traceback (most recent call last):
  File "/opt/az/lib/python3.10/site-packages/knack/cli.py", line 231, in invoke
    cmd_result = self.invocation.execute(args)
  File "/opt/az/lib/python3.10/site-packages/azure/cli/core/commands/__init__.py", line 663, in execute
    raise ex
  File "/opt/az/lib/python3.10/site-packages/azure/cli/core/commands/__init__.py", line 726, in _run_jobs_serially
    results.append(self._run_job(expanded_arg, cmd_copy))
  File "/opt/az/lib/python3.10/site-packages/azure/cli/core/commands/__init__.py", line 697, in _run_job
    result = cmd_copy(params)
  File "/opt/az/lib/python3.10/site-packages/azure/cli/core/commands/__init__.py", line 333, in __call__
    return self.handler(*args, **kwargs)
  File "/opt/az/lib/python3.10/site-packages/azure/cli/core/commands/command_operation.py", line 121, in handler
    return op(**command_args)
  File "/home/simon/.azure/cliextensions/azure-iot/azext_iot/operations/hub.py", line 2958, in iot_hub_monitor_events
    _iot_hub_monitor_events(
  File "/home/simon/.azure/cliextensions/azure-iot/azext_iot/operations/hub.py", line 3071, in _iot_hub_monitor_events
    from azext_iot.monitor.builders import hub_target_builder
  File "/home/simon/.azure/cliextensions/azure-iot/azext_iot/monitor/builders/hub_target_builder.py", line 8, in <module>
    import uamqp
  File "/home/simon/.azure/cliextensions/azure-iot/uamqp/__init__.py", line 12, in <module>
    from uamqp import c_uamqp  # pylint: disable=import-self
ImportError: cannot import name 'c_uamqp' from partially initialized module 'uamqp' (most likely due to a circular import) (/home/simon/.azure/cliextensions/azure-iot/uamqp/__init__.py)

To Reproduce:

Steps to reproduce the behavior. Note that argument values have been redacted, as they may contain sensitive information.

Expected Behavior

monitor-events command should wait for any events and print them when they arrive

Environment Summary

Linux-5.13.0-51-generic-x86_64-with-glibc2.31, Ubuntu 20.04.4 LTS
Python 3.10.4
Installer: DEB

azure-cli 2.37.0 *

Extensions:
azure-iot 0.14.0
account 0.2.3

Dependencies:
msal 1.18.0b1
azure-mgmt-resource 21.1.0b1

Additional Context

Lay3r8 commented 2 years ago

Repaired with https://github.com/Azure/azure-iot-cli-extension/issues/500#issuecomment-1063638893