Azure / Azure/azure-cli-extensions
az reservations reservation-order purchase fails with circular dependency
- Dominant language
- Python
- Stars
- 454
- Forks
- 1.7k
- Avg merge
- 2d 19h
- Merged PRs (30d)
- 64
Description
## Describe the bug
`az reservations reservation-order purchase` fails with an import error and the reservation is not placed.
**Command Name**
`az reservations reservation-order purchase
Extension Name: reservation. Version: 0.3.0.`
**Errors:**
```
ERROR: The command failed with an unexpected error. Here is the traceback:
ERROR: cannot import name 'Request' from partially initialized module 'requests.models' (most likely due to a circular import) (C:\Program Files (x86)\Microsoft SDKs\Azure\CLI2\lib\site-packages\requests\models.pyc)
Traceback (most recent call last):
File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\knack/cli.py", line 233, in invoke
File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/commands/__init__.py", line 663, in execute
File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/commands/__init__.py", line 726, in _run_jobs_serially
File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/commands/__init__.py", line 707, in _run_job
File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/commands/__init__.py", line 1156, in _is_poller
File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/util.py", line 686, in poller_classes
File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\msrestazure/__init__.py", line 28, in
File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\msrestazure/azure_configuration.py", line 34, in
File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\msrest/__init__.py", line 28, in
File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\msrest/configuration.py", line 37, in
File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\msrest/pipeline/__init__.py", line 52, in
File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\requests/__init__.py", line 135, in
ImportError: cannot import name 'Request' from partially initialized module 'requests.models' (most likely due to a circular import) (C:\Program Files (x86)\Microsoft SDKs\Azure\CLI2\lib\site-packages\requests\models.pyc)
```
## To Reproduce:
Steps to reproduce the behavior. Note that argument values have been redacted, as they may contain sensitive information.
- `az reservations reservation-order calculate --applied-scope-type Single --applied-scope $subscriptionId --billing-scope $subscriptionId --billing-plan Monthly --location "westus" --quantity 1 --renew 1 --reserved-resource-type "VirtualMachines" --sku "Standard_B2ms" --term "P1Y" --display-name "A reservation name"`
- `az reservations reservation-order purchase --reservation-order-id $reservationOrderIdReturnedFromThePriorCalculateStep`
## Expected Behavior
Reservation is submitted and something is returned back from `az reservations reservation-order purchase`
## Environment Summary
```
Windows-10-10.0.19045-SP0
Python 3.10.10
Installer: MSI
azure-cli 2.48.1
Extensions:
account 0.2.5
application-insights 0.1.19
azure-devops 0.26.0
reservation 0.3.0
storage-preview 0.8.3
Dependencies:
msal 1.20.0
azure-mgmt-resource 22.0.0
```
## Additional Context
Contributor guide
Assessment
This issue has not been assessed yet.