Package: azure-cli
Version: 2.63.0-1
Severity: important
X-Debbugs-Cc: onit...@gmail.com

Dear Maintainer,

Many commands produce errors in the Debian release of azure-cli.

While some operation do succeed, others consistently show a stack trace due to
a missing attribute.


$ az group create -l eastus -n test

<no error>

$ az group delete -n test

The command failed with an unexpected error. Here is the traceback:
'AccessToken' object has no attribute 'refresh_on'
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/knack/cli.py", line 233, in invoke
    cmd_result = self.invocation.execute(args)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/azure/cli/core/commands/__init__.py",
line 664, in execute
    raise ex
  File "/usr/lib/python3/dist-packages/azure/cli/core/commands/__init__.py",
line 731, in _run_jobs_serially
    results.append(self._run_job(expanded_arg, cmd_copy))
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/azure/cli/core/commands/__init__.py",
line 712, in _run_job
    result = LongRunningOperation(cmd_copy.cli_ctx, 'Starting
{}'.format(cmd_copy.name))(result)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/azure/cli/core/commands/__init__.py",
line 1039, in __call__
    result = poller.result()
             ^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/azure/core/polling/_poller.py", line
251, in result
    self.wait(timeout)
  File "/usr/lib/python3/dist-packages/azure/core/tracing/decorator.py", line
94, in wrapper_use_tracer
    return func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/azure/core/polling/_poller.py", line
270, in wait
    raise self._exception  # type: ignore
    ^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/azure/core/polling/_poller.py", line
185, in _start
    self._polling_method.run()
  File "/usr/lib/python3/dist-packages/azure/core/polling/base_polling.py",
line 757, in run
    self._poll()
  File "/usr/lib/python3/dist-packages/azure/core/polling/base_polling.py",
line 783, in _poll
    self.update_status()
  File "/usr/lib/python3/dist-packages/azure/core/polling/base_polling.py",
line 808, in update_status
    self._pipeline_response =
self.request_status(self._operation.get_polling_url())
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/azure/core/polling/base_polling.py",
line 842, in request_status
    self._client._pipeline.run(  # pylint: disable=protected-access
  File "/usr/lib/python3/dist-packages/azure/core/pipeline/_base.py", line 229,
in run
    return first_node.send(pipeline_request)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/azure/core/pipeline/_base.py", line 86,
in send
    response = self.next.send(request)
               ^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/azure/core/pipeline/_base.py", line 86,
in send
    response = self.next.send(request)
               ^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/azure/core/pipeline/_base.py", line 86,
in send
    response = self.next.send(request)
               ^^^^^^^^^^^^^^^^^^^^^^^
  [Previous line repeated 2 more times]
  File "/usr/lib/python3/dist-packages/azure/mgmt/core/policies/_base.py", line
95, in send
    response = self.next.send(request)
               ^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-
packages/azure/core/pipeline/policies/_redirect.py", line 197, in send
    response = self.next.send(request)
               ^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/azure/core/pipeline/policies/_retry.py",
line 532, in send
    response = self.next.send(request)
               ^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-
packages/azure/core/pipeline/policies/_authentication.py", line 129, in send
    self.on_request(request)
  File "/usr/lib/python3/dist-
packages/azure/core/pipeline/policies/_authentication.py", line 100, in
on_request
    if self._token is None or self._need_new_token:
                              ^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-
packages/azure/core/pipeline/policies/_authentication.py", line 75, in
_need_new_token
    or (self._token.refresh_on is not None and self._token.refresh_on <= now)
        ^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'AccessToken' object has no attribute 'refresh_on'


It looks like azure-cli is using azure.cli.core.auth.util.AccessToken rather
than the (correct) azure.core.credentials.AccessToken, indicating a mismatch
between azure-cli and python3-azure.

Thanks!


-- System Information:
Debian Release: trixie/sid
  APT prefers testing
  APT policy: (990, 'testing'), (500, 'unstable-debug'), (500, 
'testing-proposed-updates-debug'), (500, 'testing-debug'), (500, 'unstable'), 
(1, 'experimental-debug'), (1, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 6.9.12-amd64 (SMP w/16 CPU threads; PREEMPT)
Kernel taint flags: TAINT_WARN
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8), 
LANGUAGE=en_GB:en
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages azure-cli depends on:
ii  python3            3.12.5-1
ii  python3-azure-cli  2.63.0-1

azure-cli recommends no packages.

azure-cli suggests no packages.

-- no debconf information

Reply via email to