mirror of
https://github.com/actions/runner-images.git
synced 2025-12-15 22:26:56 +00:00
Based on the changes made to speed up az on ubuntu, we found that this is the correct env var to use.
44 lines
1.7 KiB
PowerShell
44 lines
1.7 KiB
PowerShell
################################################################################
|
|
## File: Install-AzureDevOpsCli.ps1
|
|
## Desc: Install Azure DevOps CLI
|
|
################################################################################
|
|
|
|
$azureDevOpsCliConfigPath = 'C:\azureDevOpsCli'
|
|
# Store azure-devops-cli cache outside of the provisioning user's profile
|
|
[Environment]::SetEnvironmentVariable('AZ_DEVOPS_GLOBAL_CONFIG_DIR', $azureDevOpsCliConfigPath, [System.EnvironmentVariableTarget]::Machine)
|
|
# make variable to be available in the current session
|
|
${env:AZ_DEVOPS_GLOBAL_CONFIG_DIR} = $azureDevOpsCliConfigPath
|
|
|
|
$azureDevOpsCliCachePath = Join-Path $azureDevOpsCliConfigPath 'cache'
|
|
$null = New-Item -ItemType 'Directory' -Path $azureDevOpsCliCachePath
|
|
|
|
[Environment]::SetEnvironmentVariable('AZURE_DEVOPS_CACHE_DIR', $azureDevOpsCliCachePath, [System.EnvironmentVariableTarget]::Machine)
|
|
# make variable to be available in the current session
|
|
${env:AZURE_DEVOPS_CACHE_DIR} = $azureDevOpsCliCachePath
|
|
|
|
az extension add -n azure-devops
|
|
if ($LASTEXITCODE -ne 0)
|
|
{
|
|
throw "Command 'az extension add -n azure-devops' failed"
|
|
}
|
|
|
|
# Warm-up Azure DevOps CLI
|
|
|
|
Write-Host "Warmup 'az-devops'"
|
|
@('devops', 'pipelines', 'boards', 'repos', 'artifacts') | ForEach-Object {
|
|
|
|
az $_ --help
|
|
if ($LASTEXITCODE -ne 0)
|
|
{
|
|
throw "Command 'az $_ --help' failed"
|
|
}
|
|
|
|
}
|
|
|
|
# calling az devops login to force it to install `keyring`. Login will actually fail, redirecting error to null
|
|
Write-Output 'fake token' | az devops login | Out-Null
|
|
# calling az devops logout to be sure no credentials remain.
|
|
az devops logout | out-null
|
|
|
|
Invoke-PesterTests -TestFile 'CLI.Tools' -TestName 'Azure DevOps CLI'
|