Azure / azure-cli

Azure Command-Line Interface
MIT License
4k stars 2.98k forks source link

az self-test on version 2.54.0 fails under Nix/NixOS #27921

Closed AkechiShiro closed 10 months ago

AkechiShiro commented 11 months ago

Describe the bug

az self-test fails for some reason on the latest stable released version of azure-cli I believe it should be passing.

Related command

az self-test fails, despite using latest version for azure-mgmt-signalr previous 1.1.0 also fails with the same error.

Errors

~/o/nixpkgs azure-cli-update-2-54-0 !1 ❯ /nix/store/6cf5072clmwp5qsgb2x7sdmnfq6qr5bg-python3.11-azure-cli-2.54.0/bin/az version
{
  "azure-cli": "2.54.0",
  "azure-cli-core": "2.54.0",
  "azure-cli-telemetry": "1.1.0",
  "extensions": {
    "bastion": "0.2.5",
    "ssh": "2.0.2"
  }
}
~/opensource/nixpkgs ❯ /nix/store/6cf5072clmwp5qsgb2x7sdmnfq6qr5bg-python3.11-azure-cli-2.54.0/bin/az self-test
This command has been deprecated and will be removed in a future release.
Running CLI self-test.

Loading all commands and arguments...
Error loading command module 'monitor': ord() expected string of length 1, but int found
Error occurred loading commands!

The command failed with an unexpected error. Here is the traceback:
cannot import name 'Replica' from 'azure.mgmt.signalr.models' (/nix/store/8bds7ijxak2vkxnvq8smm3qjb14s4qjf-python3.11-azure-mgmt-signalr-1.2.0/lib/python3.11/site-packages/azure/mgmt/signalr/models/__init__.py)
Traceback (most recent call last):
  File "/nix/store/jv9xa3qx8ybxwdyawlw7piqgy3vmy6p4-python3.11-knack-0.11.0/lib/python3.11/site-packages/knack/cli.py", line 233, in invoke
    cmd_result = self.invocation.execute(args)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/nix/store/nslx3pdp6yh0gs9gwpf8givjqy57hhp9-python3.11-azure-cli-core-2.54.0/lib/python3.11/site-packages/azure/cli/core/commands/__init__.py", line 663, in execute
    raise ex
  File "/nix/store/nslx3pdp6yh0gs9gwpf8givjqy57hhp9-python3.11-azure-cli-core-2.54.0/lib/python3.11/site-packages/azure/cli/core/commands/__init__.py", line 726, in _run_jobs_serially
    results.append(self._run_job(expanded_arg, cmd_copy))
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/nix/store/nslx3pdp6yh0gs9gwpf8givjqy57hhp9-python3.11-azure-cli-core-2.54.0/lib/python3.11/site-packages/azure/cli/core/commands/__init__.py", line 697, in _run_job
    result = cmd_copy(params)
             ^^^^^^^^^^^^^^^^
  File "/nix/store/nslx3pdp6yh0gs9gwpf8givjqy57hhp9-python3.11-azure-cli-core-2.54.0/lib/python3.11/site-packages/azure/cli/core/commands/__init__.py", line 333, in __call__
    return self.handler(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/nix/store/nslx3pdp6yh0gs9gwpf8givjqy57hhp9-python3.11-azure-cli-core-2.54.0/lib/python3.11/site-packages/azure/cli/core/commands/command_operation.py", line 121, in handler
    return op(**command_args)
           ^^^^^^^^^^^^^^^^^^
  File "/nix/store/6cf5072clmwp5qsgb2x7sdmnfq6qr5bg-python3.11-azure-cli-2.54.0/lib/python3.11/site-packages/azure/cli/command_modules/profile/custom.py", line 183, in check_cli
    raise ex
  File "/nix/store/6cf5072clmwp5qsgb2x7sdmnfq6qr5bg-python3.11-azure-cli-2.54.0/lib/python3.11/site-packages/azure/cli/command_modules/profile/custom.py", line 178, in check_cli
    create_invoker_and_load_cmds_and_args(cmd.cli_ctx)
  File "/nix/store/nslx3pdp6yh0gs9gwpf8givjqy57hhp9-python3.11-azure-cli-core-2.54.0/lib/python3.11/site-packages/azure/cli/core/file_util.py", line 74, in create_invoker_and_load_cmds_and_args
    invoker.commands_loader.load_arguments()
  File "/nix/store/nslx3pdp6yh0gs9gwpf8givjqy57hhp9-python3.11-azure-cli-core-2.54.0/lib/python3.11/site-packages/azure/cli/core/__init__.py", line 516, in load_arguments
    cmd.load_arguments()  # this loads the arguments via reflection
    ^^^^^^^^^^^^^^^^^^^^
  File "/nix/store/nslx3pdp6yh0gs9gwpf8givjqy57hhp9-python3.11-azure-cli-core-2.54.0/lib/python3.11/site-packages/azure/cli/core/commands/__init__.py", line 318, in load_arguments
    super(AzCliCommand, self).load_arguments()
  File "/nix/store/jv9xa3qx8ybxwdyawlw7piqgy3vmy6p4-python3.11-knack-0.11.0/lib/python3.11/site-packages/knack/commands.py", line 104, in load_arguments
    cmd_args = self.arguments_loader()
               ^^^^^^^^^^^^^^^^^^^^^^^
  File "/nix/store/nslx3pdp6yh0gs9gwpf8givjqy57hhp9-python3.11-azure-cli-core-2.54.0/lib/python3.11/site-packages/azure/cli/core/commands/command_operation.py", line 125, in arguments_loader
    op = self.get_op_handler(self.op_path)
         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/nix/store/nslx3pdp6yh0gs9gwpf8givjqy57hhp9-python3.11-azure-cli-core-2.54.0/lib/python3.11/site-packages/azure/cli/core/commands/command_operation.py", line 59, in get_op_handler
    handler = import_module(mod_to_import)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/nix/store/ffll6glz3gwx342z0ch8wx30p5cnqz1z-python3-3.11.5/lib/python3.11/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<frozen importlib._bootstrap>", line 1204, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1176, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1147, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 690, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 940, in exec_module
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "/nix/store/6cf5072clmwp5qsgb2x7sdmnfq6qr5bg-python3.11-azure-cli-2.54.0/lib/python3.11/site-packages/azure/cli/command_modules/signalr/replica.py", line 7, in <module>
    from azure.mgmt.signalr.models import (
ImportError: cannot import name 'Replica' from 'azure.mgmt.signalr.models' (/nix/store/8bds7ijxak2vkxnvq8smm3qjb14s4qjf-python3.11-azure-mgmt-signalr-1.2.0/lib/python3.11/site-packages/azure/mgmt/signalr/models/__init__.py)

Issue script & Debug output

Looking at the debug output, I see these additional errors just before the signalr stack trace at the end.

cli.azure.cli.core.profiles._shared: Traceback (most recent call last):
  File "/nix/store/nslx3pdp6yh0gs9gwpf8givjqy57hhp9-python3.11-azure-cli-core-2.54.0/lib/python3.11/site-packages/azure/cli/core/profiles/_shared.py", line 655, in _get_attr
    op = getattr(op, part)
         ^^^^^^^^^^^^^^^^^
AttributeError: module 'azure.mgmt.compute.v2022_11_01.models' has no attribute 'RestorePointEncryptionType'

cli.azure.cli.core.profiles._shared: Traceback (most recent call last):
  File "/nix/store/nslx3pdp6yh0gs9gwpf8givjqy57hhp9-python3.11-azure-cli-core-2.54.0/lib/python3.11/site-packages/azure/cli/core/profiles/_shared.py", line 655, in _get_attr
    op = getattr(op, part)
         ^^^^^^^^^^^^^^^^^
AttributeError: module 'azure.mgmt.compute.v2022_11_01.models' has no attribute 'RestorePointEncryptionType'
cli.azure.cli.command_modules.profile.custom: Error occurred loading commands!

cli.azure.cli.core.azclierror: Traceback (most recent call last):
  File "/nix/store/jv9xa3qx8ybxwdyawlw7piqgy3vmy6p4-python3.11-knack-0.11.0/lib/python3.11/site-packages/knack/cli.py", line 233, in invoke
    cmd_result = self.invocation.execute(args)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/nix/store/nslx3pdp6yh0gs9gwpf8givjqy57hhp9-python3.11-azure-cli-core-2.54.0/lib/python3.11/site-packages/azure/cli/core/commands/__init__.py", line 663, in execute
    raise ex
  File "/nix/store/nslx3pdp6yh0gs9gwpf8givjqy57hhp9-python3.11-azure-cli-core-2.54.0/lib/python3.11/site-packages/azure/cli/core/commands/__init__.py", line 726, in _run_jobs_serially
    results.append(self._run_job(expanded_arg, cmd_copy))
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/nix/store/nslx3pdp6yh0gs9gwpf8givjqy57hhp9-python3.11-azure-cli-core-2.54.0/lib/python3.11/site-packages/azure/cli/core/commands/__init__.py", line 697, in _run_job
    result = cmd_copy(params)
             ^^^^^^^^^^^^^^^^
  File "/nix/store/nslx3pdp6yh0gs9gwpf8givjqy57hhp9-python3.11-azure-cli-core-2.54.0/lib/python3.11/site-packages/azure/cli/core/commands/__init__.py", line 333, in __call__
    return self.handler(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/nix/store/nslx3pdp6yh0gs9gwpf8givjqy57hhp9-python3.11-azure-cli-core-2.54.0/lib/python3.11/site-packages/azure/cli/core/commands/command_operation.py", line 121, in handler
    return op(**command_args)
           ^^^^^^^^^^^^^^^^^^
  File "/nix/store/2gyjrxski2mvnarjs7rc79g2676crrp2-python3.11-azure-cli-2.54.0/lib/python3.11/site-packages/azure/cli/command_modules/profile/custom.py", line 183, in check_cli
    raise ex
  File "/nix/store/2gyjrxski2mvnarjs7rc79g2676crrp2-python3.11-azure-cli-2.54.0/lib/python3.11/site-packages/azure/cli/command_modules/profile/custom.py", line 178, in check_cli
    create_invoker_and_load_cmds_and_args(cmd.cli_ctx)
  File "/nix/store/nslx3pdp6yh0gs9gwpf8givjqy57hhp9-python3.11-azure-cli-core-2.54.0/lib/python3.11/site-packages/azure/cli/core/file_util.py", line 74, in create_invoker_and_load_cmds_and_args
    invoker.commands_loader.load_arguments()
  File "/nix/store/nslx3pdp6yh0gs9gwpf8givjqy57hhp9-python3.11-azure-cli-core-2.54.0/lib/python3.11/site-packages/azure/cli/core/__init__.py", line 516, in load_arguments
    cmd.load_arguments()  # this loads the arguments via reflection
    ^^^^^^^^^^^^^^^^^^^^
  File "/nix/store/nslx3pdp6yh0gs9gwpf8givjqy57hhp9-python3.11-azure-cli-core-2.54.0/lib/python3.11/site-packages/azure/cli/core/commands/__init__.py", line 318, in load_arguments
    super(AzCliCommand, self).load_arguments()
  File "/nix/store/jv9xa3qx8ybxwdyawlw7piqgy3vmy6p4-python3.11-knack-0.11.0/lib/python3.11/site-packages/knack/commands.py", line 104, in load_arguments
    cmd_args = self.arguments_loader()
               ^^^^^^^^^^^^^^^^^^^^^^^
  File "/nix/store/nslx3pdp6yh0gs9gwpf8givjqy57hhp9-python3.11-azure-cli-core-2.54.0/lib/python3.11/site-packages/azure/cli/core/commands/command_operation.py", line 125, in arguments_loader
    op = self.get_op_handler(self.op_path)
         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/nix/store/nslx3pdp6yh0gs9gwpf8givjqy57hhp9-python3.11-azure-cli-core-2.54.0/lib/python3.11/site-packages/azure/cli/core/commands/command_operation.py", line 59, in get_op_handler
    handler = import_module(mod_to_import)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/nix/store/ffll6glz3gwx342z0ch8wx30p5cnqz1z-python3-3.11.5/lib/python3.11/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<frozen importlib._bootstrap>", line 1204, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1176, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1147, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 690, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 940, in exec_module
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "/nix/store/2gyjrxski2mvnarjs7rc79g2676crrp2-python3.11-azure-cli-2.54.0/lib/python3.11/site-packages/azure/cli/command_modules/signalr/replica.py", line 7, in <module>
    from azure.mgmt.signalr.models import (
ImportError: cannot import name 'Replica' from 'azure.mgmt.signalr.models' (/nix/store/8bds7ijxak2vkxnvq8smm3qjb14s4qjf-python3.11-azure-mgmt-signalr-1.2.0/lib/python3.11/site-packages/azure/mgmt/signalr/models/__init__.py)

cli.azure.cli.core.azclierror: The command failed with an unexpected error. Here is the traceback:
az_command_data_logger: The command failed with an unexpected error. Here is the traceback:
cli.azure.cli.core.azclierror: cannot import name 'Replica' from 'azure.mgmt.signalr.models' (/nix/store/8bds7ijxak2vkxnvq8smm3qjb14s4qjf-python3.11-azure-mgmt-signalr-1.2.0/lib/python3.11/site-packages/azure/mgmt/signalr/models/__init__.py)
Traceback (most recent call last):
  File "/nix/store/jv9xa3qx8ybxwdyawlw7piqgy3vmy6p4-python3.11-knack-0.11.0/lib/python3.11/site-packages/knack/cli.py", line 233, in invoke
    cmd_result = self.invocation.execute(args)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/nix/store/nslx3pdp6yh0gs9gwpf8givjqy57hhp9-python3.11-azure-cli-core-2.54.0/lib/python3.11/site-packages/azure/cli/core/commands/__init__.py", line 663, in execute
    raise ex
  File "/nix/store/nslx3pdp6yh0gs9gwpf8givjqy57hhp9-python3.11-azure-cli-core-2.54.0/lib/python3.11/site-packages/azure/cli/core/commands/__init__.py", line 726, in _run_jobs_serially
    results.append(self._run_job(expanded_arg, cmd_copy))
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/nix/store/nslx3pdp6yh0gs9gwpf8givjqy57hhp9-python3.11-azure-cli-core-2.54.0/lib/python3.11/site-packages/azure/cli/core/commands/__init__.py", line 697, in _run_job
    result = cmd_copy(params)
             ^^^^^^^^^^^^^^^^
  File "/nix/store/nslx3pdp6yh0gs9gwpf8givjqy57hhp9-python3.11-azure-cli-core-2.54.0/lib/python3.11/site-packages/azure/cli/core/commands/__init__.py", line 333, in __call__
    return self.handler(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/nix/store/nslx3pdp6yh0gs9gwpf8givjqy57hhp9-python3.11-azure-cli-core-2.54.0/lib/python3.11/site-packages/azure/cli/core/commands/command_operation.py", line 121, in handler
    return op(**command_args)
           ^^^^^^^^^^^^^^^^^^
  File "/nix/store/2gyjrxski2mvnarjs7rc79g2676crrp2-python3.11-azure-cli-2.54.0/lib/python3.11/site-packages/azure/cli/command_modules/profile/custom.py", line 183, in check_cli
    raise ex
  File "/nix/store/2gyjrxski2mvnarjs7rc79g2676crrp2-python3.11-azure-cli-2.54.0/lib/python3.11/site-packages/azure/cli/command_modules/profile/custom.py", line 178, in check_cli
    create_invoker_and_load_cmds_and_args(cmd.cli_ctx)
  File "/nix/store/nslx3pdp6yh0gs9gwpf8givjqy57hhp9-python3.11-azure-cli-core-2.54.0/lib/python3.11/site-packages/azure/cli/core/file_util.py", line 74, in create_invoker_and_load_cmds_and_args
    invoker.commands_loader.load_arguments()
  File "/nix/store/nslx3pdp6yh0gs9gwpf8givjqy57hhp9-python3.11-azure-cli-core-2.54.0/lib/python3.11/site-packages/azure/cli/core/__init__.py", line 516, in load_arguments
    cmd.load_arguments()  # this loads the arguments via reflection
    ^^^^^^^^^^^^^^^^^^^^
  File "/nix/store/nslx3pdp6yh0gs9gwpf8givjqy57hhp9-python3.11-azure-cli-core-2.54.0/lib/python3.11/site-packages/azure/cli/core/commands/__init__.py", line 318, in load_arguments
    super(AzCliCommand, self).load_arguments()
  File "/nix/store/jv9xa3qx8ybxwdyawlw7piqgy3vmy6p4-python3.11-knack-0.11.0/lib/python3.11/site-packages/knack/commands.py", line 104, in load_arguments
    cmd_args = self.arguments_loader()
               ^^^^^^^^^^^^^^^^^^^^^^^
  File "/nix/store/nslx3pdp6yh0gs9gwpf8givjqy57hhp9-python3.11-azure-cli-core-2.54.0/lib/python3.11/site-packages/azure/cli/core/commands/command_operation.py", line 125, in arguments_loader
    op = self.get_op_handler(self.op_path)
         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/nix/store/nslx3pdp6yh0gs9gwpf8givjqy57hhp9-python3.11-azure-cli-core-2.54.0/lib/python3.11/site-packages/azure/cli/core/commands/command_operation.py", line 59, in get_op_handler
    handler = import_module(mod_to_import)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/nix/store/ffll6glz3gwx342z0ch8wx30p5cnqz1z-python3-3.11.5/lib/python3.11/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<frozen importlib._bootstrap>", line 1204, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1176, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1147, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 690, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 940, in exec_module
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "/nix/store/2gyjrxski2mvnarjs7rc79g2676crrp2-python3.11-azure-cli-2.54.0/lib/python3.11/site-packages/azure/cli/command_modules/signalr/replica.py", line 7, in <module>
    from azure.mgmt.signalr.models import (
ImportError: cannot import name 'Replica' from 'azure.mgmt.signalr.models' (/nix/store/8bds7ijxak2vkxnvq8smm3qjb14s4qjf-python3.11-azure-mgmt-signalr-1.2.0/lib/python3.11/site-packages/azure/mgmt/signalr/models/__init__.py)
az_command_data_logger: cannot import name 'Replica' from 'azure.mgmt.signalr.models' (/nix/store/8bds7ijxak2vkxnvq8smm3qjb14s4qjf-python3.11-azure-mgmt-signalr-1.2.0/lib/python3.11/site-packages/azure/mgmt/signalr/models/__init__.py)
Traceback (most recent call last):
  File "/nix/store/jv9xa3qx8ybxwdyawlw7piqgy3vmy6p4-python3.11-knack-0.11.0/lib/python3.11/site-packages/knack/cli.py", line 233, in invoke
    cmd_result = self.invocation.execute(args)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/nix/store/nslx3pdp6yh0gs9gwpf8givjqy57hhp9-python3.11-azure-cli-core-2.54.0/lib/python3.11/site-packages/azure/cli/core/commands/__init__.py", line 663, in execute
    raise ex
  File "/nix/store/nslx3pdp6yh0gs9gwpf8givjqy57hhp9-python3.11-azure-cli-core-2.54.0/lib/python3.11/site-packages/azure/cli/core/commands/__init__.py", line 726, in _run_jobs_serially
    results.append(self._run_job(expanded_arg, cmd_copy))
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/nix/store/nslx3pdp6yh0gs9gwpf8givjqy57hhp9-python3.11-azure-cli-core-2.54.0/lib/python3.11/site-packages/azure/cli/core/commands/__init__.py", line 697, in _run_job
    result = cmd_copy(params)
             ^^^^^^^^^^^^^^^^
  File "/nix/store/nslx3pdp6yh0gs9gwpf8givjqy57hhp9-python3.11-azure-cli-core-2.54.0/lib/python3.11/site-packages/azure/cli/core/commands/__init__.py", line 333, in __call__
    return self.handler(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/nix/store/nslx3pdp6yh0gs9gwpf8givjqy57hhp9-python3.11-azure-cli-core-2.54.0/lib/python3.11/site-packages/azure/cli/core/commands/command_operation.py", line 121, in handler
    return op(**command_args)
           ^^^^^^^^^^^^^^^^^^
  File "/nix/store/2gyjrxski2mvnarjs7rc79g2676crrp2-python3.11-azure-cli-2.54.0/lib/python3.11/site-packages/azure/cli/command_modules/profile/custom.py", line 183, in check_cli
    raise ex
  File "/nix/store/2gyjrxski2mvnarjs7rc79g2676crrp2-python3.11-azure-cli-2.54.0/lib/python3.11/site-packages/azure/cli/command_modules/profile/custom.py", line 178, in check_cli
    create_invoker_and_load_cmds_and_args(cmd.cli_ctx)
  File "/nix/store/nslx3pdp6yh0gs9gwpf8givjqy57hhp9-python3.11-azure-cli-core-2.54.0/lib/python3.11/site-packages/azure/cli/core/file_util.py", line 74, in create_invoker_and_load_cmds_and_args
    invoker.commands_loader.load_arguments()
  File "/nix/store/nslx3pdp6yh0gs9gwpf8givjqy57hhp9-python3.11-azure-cli-core-2.54.0/lib/python3.11/site-packages/azure/cli/core/__init__.py", line 516, in load_arguments
    cmd.load_arguments()  # this loads the arguments via reflection
    ^^^^^^^^^^^^^^^^^^^^
  File "/nix/store/nslx3pdp6yh0gs9gwpf8givjqy57hhp9-python3.11-azure-cli-core-2.54.0/lib/python3.11/site-packages/azure/cli/core/commands/__init__.py", line 318, in load_arguments
    super(AzCliCommand, self).load_arguments()
  File "/nix/store/jv9xa3qx8ybxwdyawlw7piqgy3vmy6p4-python3.11-knack-0.11.0/lib/python3.11/site-packages/knack/commands.py", line 104, in load_arguments
    cmd_args = self.arguments_loader()
               ^^^^^^^^^^^^^^^^^^^^^^^
  File "/nix/store/nslx3pdp6yh0gs9gwpf8givjqy57hhp9-python3.11-azure-cli-core-2.54.0/lib/python3.11/site-packages/azure/cli/core/commands/command_operation.py", line 125, in arguments_loader
    op = self.get_op_handler(self.op_path)
         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/nix/store/nslx3pdp6yh0gs9gwpf8givjqy57hhp9-python3.11-azure-cli-core-2.54.0/lib/python3.11/site-packages/azure/cli/core/commands/command_operation.py", line 59, in get_op_handler
    handler = import_module(mod_to_import)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/nix/store/ffll6glz3gwx342z0ch8wx30p5cnqz1z-python3-3.11.5/lib/python3.11/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<frozen importlib._bootstrap>", line 1204, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1176, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1147, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 690, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 940, in exec_module
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "/nix/store/2gyjrxski2mvnarjs7rc79g2676crrp2-python3.11-azure-cli-2.54.0/lib/python3.11/site-packages/azure/cli/command_modules/signalr/replica.py", line 7, in <module>
    from azure.mgmt.signalr.models import (
ImportError: cannot import name 'Replica' from 'azure.mgmt.signalr.models' (/nix/store/8bds7ijxak2vkxnvq8smm3qjb14s4qjf-python3.11-azure-mgmt-signalr-1.2.0/lib/python3.11/site-packages/azure/mgmt/signalr/models/__init__.py)
To check existing issues, please visit: https://github.com/Azure/azure-cli/issues
cli.knack.cli: Event: Cli.PostExecute [<function AzCliLogging.deinit_cmd_metadata_logging at 0x7fd9115fcd60>]

Finally, this might be unrelated but there is also this issue that is more earlier :

cli.azure.cli.core: Error loading command module 'monitor': ord() expected string of length 1, but int found
cli.azure.cli.core: Traceback (most recent call last):
  File "/nix/store/nslx3pdp6yh0gs9gwpf8givjqy57hhp9-python3.11-azure-cli-core-2.54.0/lib/python3.11/site-packages/azure/cli/core/__init__.py", line 256, in _update_command_table_from_modules
    module_command_table, module_group_table = _load_module_command_loader(self, args, mod)
                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/nix/store/nslx3pdp6yh0gs9gwpf8givjqy57hhp9-python3.11-azure-cli-core-2.54.0/lib/python3.11/site-packages/azure/cli/core/commands/__init__.py", line 1085, in _load_module_command_loader
    return _load_command_loader(loader, args, mod, 'azure.cli.command_modules.')
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/nix/store/nslx3pdp6yh0gs9gwpf8givjqy57hhp9-python3.11-azure-cli-core-2.54.0/lib/python3.11/site-packages/azure/cli/core/commands/__init__.py", line 1067, in _load_command_loader
    command_table = command_loader.load_command_table(args)
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/nix/store/2gyjrxski2mvnarjs7rc79g2676crrp2-python3.11-azure-cli-2.54.0/lib/python3.11/site-packages/azure/cli/command_modules/monitor/__init__.py", line 56, in load_command_table
    load_command_table(self, args)
  File "/nix/store/2gyjrxski2mvnarjs7rc79g2676crrp2-python3.11-azure-cli-2.54.0/lib/python3.11/site-packages/azure/cli/command_modules/monitor/commands.py", line 153, in load_command_table
    from .operations.metric_alert import MetricsAlertUpdate
  File "/nix/store/2gyjrxski2mvnarjs7rc79g2676crrp2-python3.11-azure-cli-2.54.0/lib/python3.11/site-packages/azure/cli/command_modules/monitor/operations/metric_alert.py", line 9, in <module>
    from azure.cli.command_modules.monitor.grammar.metric_alert import MetricAlertConditionLexer, \
  File "/nix/store/2gyjrxski2mvnarjs7rc79g2676crrp2-python3.11-azure-cli-2.54.0/lib/python3.11/site-packages/azure/cli/command_modules/monitor/grammar/metric_alert/__init__.py", line 7, in <module>
    from .MetricAlertConditionLexer import MetricAlertConditionLexer
  File "/nix/store/2gyjrxski2mvnarjs7rc79g2676crrp2-python3.11-azure-cli-2.54.0/lib/python3.11/site-packages/azure/cli/command_modules/monitor/grammar/metric_alert/MetricAlertConditionLexer.py", line 133, in <module>
    class MetricAlertConditionLexer(Lexer):
  File "/nix/store/2gyjrxski2mvnarjs7rc79g2676crrp2-python3.11-azure-cli-2.54.0/lib/python3.11/site-packages/azure/cli/command_modules/monitor/grammar/metric_alert/MetricAlertConditionLexer.py", line 135, in MetricAlertConditionLexer
    atn = ATNDeserializer().deserialize(serializedATN())
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/nix/store/5rvq8hpiky97njv2lfvbv3xph42li9q7-python3.11-antlr4-python3-runtime-4.9.3/lib/python3.11/site-packages/antlr4/atn/ATNDeserializer.py", line 61, in deserialize
    self.reset(data)
  File "/nix/store/5rvq8hpiky97njv2lfvbv3xph42li9q7-python3.11-antlr4-python3-runtime-4.9.3/lib/python3.11/site-packages/antlr4/atn/ATNDeserializer.py", line 91, in reset
    temp = [ adjust(c) for c in data ]
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/nix/store/5rvq8hpiky97njv2lfvbv3xph42li9q7-python3.11-antlr4-python3-runtime-4.9.3/lib/python3.11/site-packages/antlr4/atn/ATNDeserializer.py", line 91, in <listcomp>
    temp = [ adjust(c) for c in data ]
             ^^^^^^^^^
  File "/nix/store/5rvq8hpiky97njv2lfvbv3xph42li9q7-python3.11-antlr4-python3-runtime-4.9.3/lib/python3.11/site-packages/antlr4/atn/ATNDeserializer.py", line 89, in adjust
    v = ord(c)
        ^^^^^^
TypeError: ord() expected string of length 1, but int found

Expected behavior

Self-test should work with latest dependencies.

Environment Summary

{
  "azure-cli": "2.54.0",
  "azure-cli-core": "2.54.0",
  "azure-cli-telemetry": "1.1.0",
  "extensions": {
    "bastion": "0.2.5",
    "ssh": "2.0.2"
  }
}

Additional context

A quick hypothesis, maybe the latest dependencies are not compatible with the latest azure-cli release ?

yonzhan commented 11 months ago

Thank you for opening this issue, we will look into it.

bebound commented 10 months ago

This is usually caused by wrong dependency version. According to the log, the package is using azure-mgmt-signalr-1.2.0, but in setup.py, cli uses https://github.com/Azure/azure-cli/blob/f74a18bc269b41b1b9d2712113ac54cba16b7e02/src/azure-cli/setup.py#L121

AkechiShiro commented 10 months ago

Thanks a lot for your help @Bebound, I will do more a thorough check of setup.py at every release next time, that did fix the self-test, there is however one error that is left :

Error loading command module 'monitor': ord() expected string of length 1, but int found
AkechiShiro commented 10 months ago

The azure-mgmt-monitor version used is 6.0.2, but even with 5.0.0, the same errors shows up.

bebound commented 10 months ago

The official version does not have this problem. You need to check the dependency one by one. For Linux, you can use https://github.com/Azure/azure-cli/blob/f74a18bc269b41b1b9d2712113ac54cba16b7e02/src/azure-cli/requirements.py3.Linux.txt

AkechiShiro commented 10 months ago

Can I just use this file in the future for every release in order to pin all the dependencies of the CLI ? In order to avoid encountering any issues ?

AkechiShiro commented 10 months ago

The issue for the monitor ord error, was coming from this dependency being pinned to 4.9 :

      antlr4-python3-runtime = super.antlr4-python3-runtime.override (_: {
        antlr4 = super.pkgs.antlr4_9;
      });

I believe in the setup.py it is declared as 4.13.1, but we do not have 4.13 yet in Nixpkgs, compiling using 4.12/4.11 solves the last issue.

EDIT : Pinning all the other dependency didn't change anything but can't hurt

Thanks a lot for your help regarding all the encountered issues @bebound