Il login di az devops si blocca

Sep 25 2020

Sto lavorando su Windows 10, modulo Azure PowerShell Az, estensione DevOps 0.18.0

Ho effettuato l'accesso a un'istanza DevOps e sono in grado di eseguire tutti i comandi correlati. Ora devo accedere a un'altra organizzazione / progetto. Ogni volta che eseguo il sottocomando di login la finestra si blocca e si blocca, devo riavviare PowerShell ISE per riprovare.

I comandi con cui sto lavorando (ho provato diverse varianti) sono:

> az login 
> $env:AZURE_DEVOPS_EXT_PAT ='{PAT}' 
> az devops login --organization https://dev.azure.com/{org} --debug

APPENDE qui !!

Registri di debug di seguito

az devops login --organization https://dev.azure.com/{org} - debug

CategoryInfo          : NotSpecified: (Command argumen...nn', '--debug']:String) [], RemoteException
    + FullyQualifiedErrorId : NativeCommandError   Event: Cli.PreExecute [] Event: CommandParser.OnGlobalArgumentsCreate
[<function CLILogging.on_global_arguments at 0x03A171E0>, <function 
OutputProducer.on_global_arguments at 0x03B3AA98>, <function
CLIQuery.on_global_arguments at 0x03B5CCD8>] Event:
CommandInvoker.OnPreCommandTableCreate [] Modules found from index for
'devops': ['azext_devops'] Loading command modules: Name              
Load Time    Groups  Commands Total (0)                 0.000        
0         0 These extensions are not installed and will be skipped:
['azext_ai_examples', 'azext_ai_did_you_mean_this'] Loading
extensions: Name                  Load Time    Groups  Commands 
Directory azure-devops              0.110        60       191 
C:\Users\{username}\.azure\cliextensions\azure-devops Total (1)          
0.110        60       191   Loaded 60 groups, 191 commands. Found a match in the command table for 'devops login' Event:
CommandInvoker.OnPreCommandTableTruncate [<function
AzCliLogging.init_command_file_logging at 0x03C2B978>]
az_command_data_logger : command args: devops login --organization {}
--debug metadata file logging enabled - writing logs to 'C:\Users\{username}\.azure\commands'. Event:
CommandInvoker.OnPreArgumentLoad [<function
register_global_subscription_argument.<locals>.add_subscription_parameter
at 0x03D69660>] Event: CommandInvoker.OnPostArgumentLoad [] Event:
CommandInvoker.OnPostCommandTableCreate [<function
register_ids_argument.<locals>.add_ids_arguments at 0x03D69618>,
<function  register_cache_arguments.<locals>.add_cache_arguments at
0x03D69E40>] Event: CommandInvoker.OnCommandTableLoaded [] Event:
CommandInvoker.OnPreParseArgs [] Event: CommandInvoker.OnPostParseArgs
[<function OutputProducer.handle_output_argument at 0x03B3AAE0>,
<function CLIQuery.handle_query_parameter  at 0x03B5CD20>, <function
register_ids_argument.<locals>.parse_ids_arguments at 0x03D69DF8>,
<function DevCommandsLoader.post_parse_args at  0x03CF6150>]
az_command_data_logger : extension name: azure-devops
az_command_data_logger : extension version: 0.18.0
  • Ho riavviato Windows 10
  • Mi sono disconnesso da az (logout az)
  • Mi sono disconnesso da devops (logout az devops)
  • Eseguo sempre PowerShell ISE con autorizzazioni elevate (amministratore)

Ho confermato dopo tutto questo, posso ancora accedere a DevOps (pipeline, rilasci, ecc.) Dall'organizzazione / progetto da cui sono partito. quindi anche il logout non riesce.

Cosa sta succedendo? Qualche idea sul perché sta accadendo?

Risposte

MerlinLiang-MSFT Sep 28 2020 at 05:34

Ora devo accedere a un'altra organizzazione / progetto.

Scenario 1: l'organizzazione / progetto di destinazione è ancora nello stesso account utente

Se l'organizzazione / progetto di destinazione con cui si desidera lavorare è ancora nello stesso account utente , in questo momento non è necessario disconnettersi e accedere nuovamente.

Basta eseguire il comando sotto per modificare l'organizzazione / progetto predefinito utilizzando:

az devops configure --defaults organization=https://dev.azure.com/{org name}

Quindi sarai disponibile per lavorare con un'altra organizzazione / progetto senza effettuare nuovamente l'accesso.

Scenario 2: l'organizzazione / progetto di destinazione si trova in un altro account utente

Se lo scenario attuale è che devi cambiare per accedere con un altro account per lavorare con quell'organizzazione / progetto, esegui prima il comando per disconnetterti:

az logout --username "{another account}"

Quindi riesegui az loginper accedere con un altro indirizzo account. Dovresti avere successo ora.