Error Installing Azure CLI SSH Extension: Pip Installation Fails with 'Could Not Find a Version' Error #30595
Labels
AAD
Auto-Assign
Auto assign by bot
bug
This issue requires a change to an existing behavior in the product in order to be resolved.
customer-reported
Issues that are reported by GitHub users external to the Azure organization.
Service Attention
This issue is responsible by Azure service team.
SSH
VM SSH
Describe the bug
We are trying to login to a linux VM on Azure but the ssh is a requirement that is preventing us from doing so. SSH, however, is installed on the Windows Client machine.
Related command
az extension add --name ssh
Errors
The command requires the extension ssh. It will be installed first.
An error occurred. Pip failed with status code 1. Use --debug for more information.
Issue script & Debug output
cli.knack.cli: Command arguments: ['extension', 'add', '--name', 'ssh', '--debug']
cli.knack.cli: init debug log:
Enable color in terminal.
Enable VT mode.
cli.knack.cli: Event: Cli.PreExecute []
cli.knack.cli: Event: CommandParser.OnGlobalArgumentsCreate [<function CLILogging.on_global_arguments at 0x000002629E5EB2E0>, <function OutputProducer.on_global_arguments at 0x000002629E98C040>, <function CLIQuery.on_global_arguments at 0x000002629E9B1440>]
cli.knack.cli: Event: CommandInvoker.OnPreCommandTableCreate []
cli.azure.cli.core: Modules found from index for 'extension': ['azure.cli.command_modules.extension']
cli.azure.cli.core: Loading command modules:
cli.azure.cli.core: Name Load Time Groups Commands
cli.azure.cli.core: extension 0.005 1 7
cli.azure.cli.core: Total (1) 0.005 1 7
cli.azure.cli.core: Loaded 1 groups, 7 commands.
cli.azure.cli.core: Found a match in the command table.
cli.azure.cli.core: Raw command : extension add
cli.azure.cli.core: Command table: extension add
cli.knack.cli: Event: CommandInvoker.OnPreCommandTableTruncate [<function AzCliLogging.init_command_file_logging at 0x00000262A0F9DC60>]
cli.azure.cli.core.azlogging: metadata file logging enabled - writing logs to '
.log'..azure\cliextensions\ssh', '']az_command_data_logger: command args: extension add --name {} --debug
cli.knack.cli: Event: CommandInvoker.OnPreArgumentLoad [<function register_global_subscription_argument..add_subscription_parameter at ]
cli.knack.cli: Event: CommandInvoker.OnPostArgumentLoad []
cli.knack.cli: Event: CommandInvoker.OnPostCommandTableCreate [<function register_ids_argument..add_ids_arguments at 0x00000262A1009760>, <function register_cache_arguments..add_cache_arguments at 0x00000262A10098A0>, <function register_upcoming_breaking_change_info..update_breaking_change_info at 0x00000262A1009940>]
cli.knack.cli: Event: CommandInvoker.OnCommandTableLoaded []
cli.knack.cli: Event: CommandInvoker.OnPreParseArgs []
cli.knack.cli: Event: CommandInvoker.OnPostParseArgs [<function OutputProducer.handle_output_argument at 0x000002629E98C0E0>, <function CLIQuery.handle_query_parameter at 0x000002629E9B14E0>, <function register_ids_argument..parse_ids_arguments at 0x00000262A1009800>]
urllib3.connectionpool: Starting new HTTPS connection (1): aka.ms:443
urllib3.connectionpool: https://aka.ms:443 "GET /azure-cli-extension-index-v1 HTTP/1.1" 301 0
urllib3.connectionpool: Starting new HTTPS connection (1): azcliextensionsync.blob.core.windows.net:443
urllib3.connectionpool: https://azcliextensionsync.blob.core.windows.net:443 "GET /index1/index.json HTTP/1.1" 200 4797919
cli.azure.cli.core.extension._resolve: Candidates ['ssh-0.1.0-py3-none-any.whl', 'ssh-0.1.4-py3-none-any.whl', 'ssh-0.1.5-py3-none-any.whl', 'ssh-0.1.6-py3-none-any.whl', 'ssh-0.1.7-py3-none-any.whl', 'ssh-0.1.8-py3-none-any.whl', 'ssh-1.0.0-py3-none-any.whl', 'ssh-1.0.1-py3-none-any.whl', 'ssh-1.1.0-py3-none-any.whl', 'ssh-1.1.1-py3-none-any.whl', 'ssh-1.1.2-py3-none-any.whl', 'ssh-1.1.3-py3-none-any.whl', 'ssh-1.1.4-py3-none-any.whl', 'ssh-1.1.5-py3-none-any.whl', 'ssh-1.1.6-py3-none-any.whl', 'ssh-2.0.0-py3-none-any.whl', 'ssh-2.0.1-py3-none-any.whl', 'ssh-2.0.2-py3-none-any.whl', 'ssh-2.0.3-py3-none-any.whl', 'ssh-2.0.4-py3-none-any.whl', 'ssh-2.0.5-py3-none-any.whl', 'ssh-2.0.6-py3-none-any.whl']
cli.azure.cli.core.extension._resolve: Candidates ['ssh-0.1.0-py3-none-any.whl', 'ssh-0.1.4-py3-none-any.whl', 'ssh-0.1.5-py3-none-any.whl', 'ssh-0.1.6-py3-none-any.whl', 'ssh-0.1.7-py3-none-any.whl', 'ssh-0.1.8-py3-none-any.whl', 'ssh-1.0.0-py3-none-any.whl', 'ssh-1.0.1-py3-none-any.whl', 'ssh-1.1.0-py3-none-any.whl', 'ssh-1.1.1-py3-none-any.whl', 'ssh-1.1.2-py3-none-any.whl', 'ssh-1.1.3-py3-none-any.whl', 'ssh-1.1.4-py3-none-any.whl', 'ssh-1.1.5-py3-none-any.whl', 'ssh-1.1.6-py3-none-any.whl', 'ssh-2.0.0-py3-none-any.whl', 'ssh-2.0.1-py3-none-any.whl', 'ssh-2.0.2-py3-none-any.whl', 'ssh-2.0.3-py3-none-any.whl', 'ssh-2.0.4-py3-none-any.whl', 'ssh-2.0.5-py3-none-any.whl', 'ssh-2.0.6-py3-none-any.whl']
cli.azure.cli.core.extension._resolve: Candidates ['ssh-1.0.1-py3-none-any.whl', 'ssh-1.1.0-py3-none-any.whl', 'ssh-1.1.1-py3-none-any.whl', 'ssh-1.1.2-py3-none-any.whl', 'ssh-1.1.3-py3-none-any.whl', 'ssh-1.1.4-py3-none-any.whl', 'ssh-1.1.5-py3-none-any.whl', 'ssh-1.1.6-py3-none-any.whl', 'ssh-2.0.0-py3-none-any.whl', 'ssh-2.0.1-py3-none-any.whl', 'ssh-2.0.2-py3-none-any.whl', 'ssh-2.0.3-py3-none-any.whl', 'ssh-2.0.4-py3-none-any.whl', 'ssh-2.0.5-py3-none-any.whl', 'ssh-2.0.6-py3-none-any.whl']
cli.azure.cli.core.extension._resolve: Candidates ['ssh-1.0.1-py3-none-any.whl', 'ssh-1.1.0-py3-none-any.whl', 'ssh-1.1.1-py3-none-any.whl', 'ssh-1.1.2-py3-none-any.whl', 'ssh-1.1.3-py3-none-any.whl', 'ssh-1.1.4-py3-none-any.whl', 'ssh-1.1.5-py3-none-any.whl', 'ssh-1.1.6-py3-none-any.whl', 'ssh-2.0.0-py3-none-any.whl', 'ssh-2.0.1-py3-none-any.whl', 'ssh-2.0.2-py3-none-any.whl', 'ssh-2.0.3-py3-none-any.whl', 'ssh-2.0.4-py3-none-any.whl', 'ssh-2.0.5-py3-none-any.whl', 'ssh-2.0.6-py3-none-any.whl']
cli.azure.cli.core.extension._resolve: Candidates ['ssh-1.0.1-py3-none-any.whl', 'ssh-1.1.0-py3-none-any.whl', 'ssh-1.1.1-py3-none-any.whl', 'ssh-1.1.2-py3-none-any.whl', 'ssh-1.1.3-py3-none-any.whl', 'ssh-1.1.4-py3-none-any.whl', 'ssh-1.1.5-py3-none-any.whl', 'ssh-1.1.6-py3-none-any.whl', 'ssh-2.0.0-py3-none-any.whl', 'ssh-2.0.1-py3-none-any.whl', 'ssh-2.0.2-py3-none-any.whl', 'ssh-2.0.3-py3-none-any.whl', 'ssh-2.0.4-py3-none-any.whl', 'ssh-2.0.5-py3-none-any.whl', 'ssh-2.0.6-py3-none-any.whl']
cli.azure.cli.core.extension._resolve: Chosen {'downloadUrl': 'https://azcliprod.blob.core.windows.net/cli-extensions/ssh-2.0.6-py3-none-any.whl', 'filename': 'ssh-2.0.6-py3-none-any.whl', 'metadata': {'azext.isPreview': False, 'azext.minCliCoreVersion': '2.45.0', 'classifiers': ['Development Status :: 4 - Beta', 'Intended Audience :: Developers', 'Intended Audience :: System Administrators', 'Programming Language :: Python', 'Programming Language :: Python :: 3', 'Programming Language :: Python :: 3.6', 'Programming Language :: Python :: 3.7', 'Programming Language :: Python :: 3.8', 'License :: OSI Approved :: MIT License'], 'extensions': {'python.details': {'contacts': [{'email': '[email protected]', 'name': 'Microsoft Corporation', 'role': 'author'}], 'document_names': {'description': 'DESCRIPTION.rst'}, 'project_urls': {'Home': 'https://github.com/Azure/azure-cli-extensions/tree/main/src/ssh'}}}, 'extras': [], 'generator': 'bdist_wheel (0.30.0)', 'license': 'MIT', 'metadata_version': '2.0', 'name': 'ssh', 'run_requires': [{'requires': ['oras (==0.1.30)', 'oras==0.1.30', 'oschmod (==0.3.12)', 'oschmod==0.3.12']}], 'summary':}
cli.azure.cli.core.extension.operations: Extension source is url? True
cli.azure.cli.core.extension.operations: Downloading https://azcliprod.blob.core.windows.net/cli-extensions/ssh-2.0.6-py3-none-any.whl to "GET /cli-extensions/ssh-2.0.6-py3-none-any.whl HTTP/1.1" 200 93412
cli.azure.cli.core.extension.operations: Downloaded to
cli.azure.cli.core.extension.operations: Validating the extension
cli.azure.cli.core.extension.operations: Checksum of is OK
cli.azure.cli.core.extension.operations: Validation successful on
cli.azure.cli.core.extension.operations: Executing pip with args: ['install', '--target', '
cli.azure.cli.core.extension.operations: Running: ['C:\Program Files\Microsoft SDKs\Azure\CLI2\python.exe', '-m', 'pip', 'install', '--target', '']
cli.azure.cli.core.extension.operations: Traceback (most recent call last):
File "", line 198, in _run_module_as_main
File "", line 88, in run_code
File "C:\Program Files\Microsoft SDKs\Azure\CLI2\Lib\site-packages\pip_main.py", line 24, in
sys.exit(_main())
^^^^^^^
File "C:\Program Files\Microsoft SDKs\Azure\CLI2\Lib\site-packages\pip_internal\cli\main.py", line 65, in main
cmd_name, cmd_args = parse_command(args)
^^^^^^^^^^^^^^^^^^^
File "C:\Program Files\Microsoft SDKs\Azure\CLI2\Lib\site-packages\pip_internal\cli\main_parser.py", line 79, in parse_command
general_options, args_else = parser.parse_args(args)
^^^^^^^^^^^^^^^^^^^^^^^
File "optparse.py", line 1371, in parse_args
values = self.get_default_values()
^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Program Files\Microsoft SDKs\Azure\CLI2\Lib\site-packages\pip_internal\cli\parser.py", line 279, in get_default_values
self.config.load()
File "C:\Program Files\Microsoft SDKs\Azure\CLI2\Lib\site-packages\pip_internal\configuration.py", line 124, in load
self._load_config_files()
File "C:\Program Files\Microsoft SDKs\Azure\CLI2\Lib\site-packages\pip_internal\configuration.py", line 246, in _load_config_files
config_files = dict(self.iter_config_files())
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Program Files\Microsoft SDKs\Azure\CLI2\Lib\site-packages\pip_internal\configuration.py", line 339, in iter_config_files
config_files = get_configuration_files()
^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Program Files\Microsoft SDKs\Azure\CLI2\Lib\site-packages\pip_internal\configuration.py", line 70, in get_configuration_files
os.path.join(path, CONFIG_BASENAME) for path in appdirs.site_config_dirs("pip")
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Program Files\Microsoft SDKs\Azure\CLI2\Lib\site-packages\pip_internal\utils\appdirs.py", line 47, in site_config_dirs
dirval = appdirs.site_config_dir(appname, appauthor=False, multipath=True)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Program Files\Microsoft SDKs\Azure\CLI2\Lib\site-packages\pip_vendor\platformdirs_init.py", line 142, in site_config_dir
).site_config_dir
^^^^^^^^^^^^^^^
File "C:\Program Files\Microsoft SDKs\Azure\CLI2\Lib\site-packages\pip_vendor\platformdirs\windows.py", line 67, in site_config_dir
return self.site_data_dir
^^^^^^^^^^^^^^^^^^
File "C:\Program Files\Microsoft SDKs\Azure\CLI2\Lib\site-packages\pip_vendor\platformdirs\windows.py", line 56, in site_data_dir
path = os.path.normpath(get_win_folder("CSIDL_COMMON_APPDATA"))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Program Files\Microsoft SDKs\Azure\CLI2\Lib\site-packages\pip_vendor\platformdirs\windows.py", line 209, in get_win_folder_from_registry
directory, _ = winreg.QueryValueEx(key, shell_folder_name)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
FileNotFoundError: [WinError 2] The system cannot find the file specified
cli.azure.cli.core.extension.operations: Command '['C:\Program Files\Microsoft SDKs\Azure\CLI2\python.exe', '-m', 'pip', 'install', '--target', '
\.azure\cliextensions\ssh', '\AppData\Local\Temp\tmpa6h01vyr\ssh-2.0.6-py3-none-any.whl', '-vv', '--disable-pip-version-check', '--no-cache-dir']' returned non-zero exit status 1.cli.azure.cli.core.extension.operations: Pip failed so deleting anything we might have installed at ~.azure\cliextensions\ssh
cli.azure.cli.core.azclierror: 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 666, in execute
File "D:\a_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/commands/init.py", line 733, 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 703, in _run_job
File "D:\a_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/commands/init.py", line 336, in call
File "D:\a_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/commands/command_operation.py", line 121, in handler
File "D:\a_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/command_modules/extension/custom.py", line 16, in add_extension_cmd
File "D:\a_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/extension/operations.py", line 343, in add_extension
File "D:\a_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/extension/operations.py", line 172, in _add_whl_ext
knack.util.CLIError: An error occurred. Pip failed with status code 1. Use --debug for more information.
cli.azure.cli.core.azclierror: An error occurred. Pip failed with status code 1. Use --debug for more information.
az_command_data_logger: An error occurred. Pip failed with status code 1. Use --debug for more information.
cli.knack.cli: Event: Cli.PostExecute [<function AzCliLogging.deinit_cmd_metadata_logging at 0x00000262A0F9DEE0>]
az_command_data_logger: exit code: 1
cli.main: Command ran in 7.653 seconds (init: 0.751, invoke: 6.902)
telemetry.main: Begin splitting cli events and extra events, total events: 1
telemetry.client: Accumulated 0 events. Flush the clients.
telemetry.main: Finish splitting cli events and extra events, cli events: 1
telemetry.save: Save telemetry record of length 3851 in cache file under ~.azure\telemetry\20241230223816420
telemetry.main: Begin creating telemetry upload process.
telemetry.process: Creating upload process: "C:\Program Files\Microsoft SDKs\Azure\CLI2\python.exe C:\Program Files\Microsoft SDKs\Azure\CLI2\Lib\site-packages\azure\cli\telemetry_init_.pyc ~.azure ~.azure\telemetry\20241230223816420"
telemetry.process: Return from creating process 12624
telemetry.main: Finish creating telemetry upload process.
Expected behavior
The ability to Sign in to a Linux virtual machine in Azure by using Microsoft Entra ID and OpenSSH
Environment Summary
azure-cli 2.67.0
core 2.67.0
telemetry 1.1.0
Dependencies:
msal 1.31.0
azure-mgmt-resource 23.1.1
Python location 'C:\Program Files\Microsoft SDKs\Azure\CLI2\python.exe'
Extensions directory '~.azure\cliextensions'
Python (Windows) 3.12.7 (tags/v3.12.7:0b05ead, Oct 1 2024, 03:06:41) [MSC v.1941 64 bit (AMD64)]
Legal docs and information: aka.ms/AzureCliLegal
Additional context
No response
The text was updated successfully, but these errors were encountered: