Aracılığıyla paylaş


AzureCLI@2 - Azure CLI v2 görevi

Linux aracısı üzerinde çalışırken PowerShell Core/kabuk betiğinde Azure aboneliğinde Azure CLI komutlarını çalıştırın. Alternatif olarak Windows aracısında çalışırken PowerShell/PowerShell Core/grup betiğinde Bir Azure aboneliğinde Azure CLI komutlarını da çalıştırabilirsiniz.

Linux aracısı üzerinde çalışırken PowerShell Core/kabuk betiğinde Azure aboneliğinde Azure CLI komutlarını çalıştırın. Alternatif olarak, Windows aracısı üzerinde çalışırken PowerShell/Powershell Core/batch betiğinde Azure aboneliğinde Azure CLI komutlarını da çalıştırabilirsiniz.

Sözdizimi

# Azure CLI v2
# Run Azure CLI commands against an Azure subscription in a PowerShell Core/Shell script when running on Linux agent or PowerShell/PowerShell Core/Batch script when running on Windows agent.
- task: AzureCLI@2
  inputs:
    azureSubscription: # string. Alias: connectedServiceNameARM. Required. Azure Resource Manager connection. 
    scriptType: # 'ps' | 'pscore' | 'batch' | 'bash'. Required. Script Type. 
    scriptLocation: 'scriptPath' # 'inlineScript' | 'scriptPath'. Required. Script Location. Default: scriptPath.
    scriptPath: # string. Required when scriptLocation = scriptPath. Script Path. 
    #inlineScript: # string. Required when scriptLocation = inlineScript. Inline Script. 
    #arguments: # string. Alias: scriptArguments. Script Arguments. 
    #powerShellErrorActionPreference: 'stop' # 'stop' | 'continue' | 'silentlyContinue'. Optional. Use when scriptType = ps || scriptType = pscore. ErrorActionPreference. Default: stop.
  # Advanced
    #addSpnToEnvironment: false # boolean. Access service principal details in script. Default: false.
    #useGlobalConfig: false # boolean. Use global Azure CLI configuration. Default: false.
    #workingDirectory: # string. Alias: cwd. Working Directory. 
    #failOnStandardError: false # boolean. Fail on Standard Error. Default: false.
    #powerShellIgnoreLASTEXITCODE: false # boolean. Optional. Use when scriptType = ps || scriptType = pscore. Ignore $LASTEXITCODE. Default: false.
    #visibleAzLogin: true # boolean. az login output visibility. Default: true.
# Azure CLI v2
# Run Azure CLI commands against an Azure subscription in a PowerShell Core/Shell script when running on Linux agent or PowerShell/PowerShell Core/Batch script when running on Windows agent.
- task: AzureCLI@2
  inputs:
    azureSubscription: # string. Alias: connectedServiceNameARM. Required. Azure Resource Manager connection. 
    scriptType: # 'ps' | 'pscore' | 'batch' | 'bash'. Required. Script Type. 
    scriptLocation: 'scriptPath' # 'inlineScript' | 'scriptPath'. Required. Script Location. Default: scriptPath.
    scriptPath: # string. Required when scriptLocation = scriptPath. Script Path. 
    #inlineScript: # string. Required when scriptLocation = inlineScript. Inline Script. 
    #arguments: # string. Alias: scriptArguments. Script Arguments. 
    #powerShellErrorActionPreference: 'stop' # 'stop' | 'continue' | 'silentlyContinue'. Optional. Use when scriptType = ps || scriptType = pscore. ErrorActionPreference. Default: stop.
  # Advanced
    #addSpnToEnvironment: false # boolean. Access service principal details in script. Default: false.
    #useGlobalConfig: false # boolean. Use global Azure CLI configuration. Default: false.
    #workingDirectory: # string. Alias: cwd. Working Directory. 
    #failOnStandardError: false # boolean. Fail on Standard Error. Default: false.
    #powerShellIgnoreLASTEXITCODE: false # boolean. Optional. Use when scriptType = ps || scriptType = pscore. Ignore $LASTEXITCODE. Default: false.
# Azure CLI v2
# Run Azure CLI commands against an Azure subscription in a PowerShell Core/Shell script when running on Linux agent or PowerShell/Powershell Core/Batch script when running on Windows agent.
- task: AzureCLI@2
  inputs:
    azureSubscription: # string. Alias: connectedServiceNameARM. Required. Azure Resource Manager connection. 
    scriptType: # 'ps' | 'pscore' | 'batch' | 'bash'. Required. Script Type. 
    scriptLocation: 'scriptPath' # 'inlineScript' | 'scriptPath'. Required. Script Location. Default: scriptPath.
    scriptPath: # string. Required when scriptLocation = scriptPath. Script Path. 
    #inlineScript: # string. Required when scriptLocation = inlineScript. Inline Script. 
    #arguments: # string. Alias: scriptArguments. Script Arguments. 
    #powerShellErrorActionPreference: 'stop' # 'stop' | 'continue' | 'silentlyContinue'. Optional. Use when scriptType = ps || scriptType = pscore. ErrorActionPreference. Default: stop.
  # Advanced
    #addSpnToEnvironment: false # boolean. Access service principal details in script. Default: false.
    #useGlobalConfig: false # boolean. Use global Azure CLI configuration. Default: false.
    #workingDirectory: # string. Alias: cwd. Working Directory. 
    #failOnStandardError: false # boolean. Fail on Standard Error. Default: false.
    #powerShellIgnoreLASTEXITCODE: false # boolean. Optional. Use when scriptType = ps || scriptType = pscore. Ignore $LASTEXITCODE. Default: false.

Girişler

Azure Resource Manager bağlantı
Giriş diğer adı: connectedServiceNameARM. string. Gerekli.

Dağıtım için bir Azure Resource Manager hizmet bağlantısı seçin.


scriptType - Betik Türü
string. Gerekli. İzin verilen değerler: ps (PowerShell), pscore (PowerShell Core), batch, bash (Kabuk).

Betiğin türü. Linux aracısı üzerinde çalışırken bir bash veya pscore betiği seçin. Veya Windows aracısı üzerinde çalışırken bir batch, psveya pscore betiği seçin. pscore betiği platformlar arası aracılarda (Linux, macOS veya Windows) çalıştırılabilir.


scriptType - Betik Türü
string. Gerekli. İzin verilen değerler: ps (Powershell), pscore (Powershell Core), batch, bash (Kabuk).

Betiğin türü. Linux aracısı üzerinde çalışırken bir bash veya pscore betiği seçin. Veya Windows aracısı üzerinde çalışırken bir batch, psveya pscore betiği seçin. pscore betiği platformlar arası aracılarda (Linux, macOS veya Windows) çalıştırılabilir.


scriptLocation - Betik Konumu
string. Gerekli. İzin verilen değerler: inlineScript (Satır içi betik), scriptPath (Betik yolu). Varsayılan değer: scriptPath.

Betiğin yolu.


scriptPath - Betik Yolu
string. scriptLocation = scriptPathgerekir.

Betiğin tam yolu. Windows tabanlı aracı kullanırken .ps1, .batveya .cmd kullanın. Linux tabanlı aracı veya varsayılan çalışma dizinine göre bir yol kullanırken .ps1 veya .sh kullanın.


Satır içi Betik
string. scriptLocation = inlineScriptgerekir.

Betiklerinizi satır içinde buraya yazabilirsiniz. Windows aracısını kullanırken PowerShell, PowerShell Core veya toplu komut dosyası kullanın. Linux tabanlı aracıları kullanırken PowerShell Core veya kabuk betiği kullanın. Toplu iş dosyaları için her Azure komutundan önce call ön ekini kullanın. Ayrıca bağımsız değişkenleri kullanarak bu betikte önceden tanımlanmış ve özel değişkenler geçirebilirsiniz.

Aşağıda PowerShell/PowerShellCore/shell örneği verilmiştir.

az --version 
az account show 

Aşağıda toplu iş için bir örnek verilmiştir.

call  az --version 
call az account show

arguments - Betik Bağımsız Değişkenleri
Giriş diğer adı: scriptArguments. string.

Betike geçirilen bağımsız değişkenler.


powerShellErrorActionPreference - ErrorActionPreference
string. Opsiyonel. scriptType = ps || scriptType = pscoreolduğunda kullanın. İzin verilen değerler: stop, continue, silentlyContinue. Varsayılan değer: stop.

PowerShell/PowerShell Core betiğinizin en üstüne satır $ErrorActionPreference = 'VALUE' ekler.


BetikAccess hizmet sorumlusu ayrıntılarını addSpnToEnvironment -
boolean. Varsayılan değer: false.

Seçtiğiniz Azure uç noktasının hizmet sorumlusu kimliğini, hizmet sorumlusu anahtarını veya iş yükü kimliği federasyon belirtecini ve kiracı kimliğini betiğin yürütme ortamına ekler. betiğinizde servicePrincipalId, servicePrincipalKey veya idTokenve tenantId değişkenlerini kullanabilirsiniz.

Bu, yalnızca Azure uç noktasının hizmet sorumlusu kimlik doğrulama şeması veya iş yükü kimliği federasyon kimlik doğrulaması düzeni olduğunda kabul edilir.

Aşağıdaki listede, betik türüne göre ortam değişkenlerine erişim söz dizimi gösterilmektedir.

  • PowerShell betiği söz dizimi: $env:servicePrincipalId

  • Batch betiği söz dizimi: %servicePrincipalId%

  • Kabuk betiği söz dizimi: $servicePrincipalId


useGlobalConfig - Genel Azure CLI yapılandırma kullanma
boolean. Varsayılan değer: false.

Bu giriş false ise, bu görev kendiAzure CLI yapılandırma dizinini kullanır. Azure CLI görevlerini paralel sürümlerde çalıştırmak için bu görevi kullanın.


çalışma dizini
Giriş diğer adı: cwd. string.

Betiğin çalıştırıldığı geçerli çalışma dizini. Boş bırakılırsa, bu giriş $(System.DefaultWorkingDirectory)olan deponun (derleme) veya yapıtların (yayın) köküdür.


standart hatabaşarısız failOnStandardError -
boolean. Varsayılan değer: false.

Bu giriş doğruysa, StandardError akışına herhangi bir hata yazıldığında bu görev başarısız olur. Standart hataları yoksaymak için onay kutusunu temizleyin ve bunun yerine durumu belirlemek için çıkış kodlarını kullanın.


powerShellIgnoreLASTEXITCODE - Yoksay $LASTEXITCODE
boolean. Opsiyonel. scriptType = ps || scriptType = pscoreolduğunda kullanın. Varsayılan değer: false.

Bu giriş false ise, if ((Test-Path -LiteralPath variable:\LASTEXITCODE)) { exit $LASTEXITCODE } satırı betiğinizin sonuna eklenir. Bu, bir dış komuttan son çıkış kodunu PowerShell'in çıkış kodu olarak yayacaktır. Aksi takdirde, satır betiğinizin sonuna eklenmez.


az login output visibilityvisibleAzLogin -
boolean. Varsayılan değer: true.

Bu true olarak ayarlanırsa, az login komutu göreve çıkış yapacaktır. false olarak ayarlanması az login çıkışını gizler.


Görev denetimi seçenekleri

Tüm görevlerin, görev girişlerine ek olarak denetim seçenekleri vardır. Daha fazla bilgi için bkz. Denetim seçenekleri ve ortak görev özellikleri.

Çıkış değişkenleri

Yok.

Açıklamalar

Sürüm görevi sürüm 2.0'daki yenilikler

  • PowerShell ve PowerShell Core betiği desteği.
  • PowerShell Core, platformlar arası aracılarla (Linux, macOS veya Windows) çalışır; aracının PowerShell sürüm 6 veya daha fazlasına sahip olduğundan emin olun.
  • PowerShell betiği yalnızca Windows aracısı ile çalışır, aracının PowerShell sürüm 5 veya altına sahip olduğundan emin olun.

Önkoşullar

Örnekler

Aşağıdaki örnek, Azure CLI sürümünü listeler ve aboneliğin ayrıntılarını alır.

- task: AzureCLI@2
  displayName: Azure CLI
  inputs:
    azureSubscription: <Name of the Azure Resource Manager service connection>
    scriptType: ps
    scriptLocation: inlineScript
    inlineScript: |
      az --version
      az account show

Aşağıdaki örnek, betiğinize bağımsız değişkenlerin nasıl geçir yapılacağını gösterir.

  • Satır içi betiklere bağımsız değişkenleri geçirme:

    - task: AzureCLI@2
      inputs:
        azureSubscription: <Azure_Resource_Manager_Service_Connection>
        scriptType: 'ps'
        scriptLocation: 'inlineScript'
        arguments: '$(AZURE_STORAGE_ACCOUNT) $(AZURE_STORAGE_KEY)'
        inlineScript: './scripts/publish.ps1 $1 $2'
    
  • Betik yolu ile bağımsız değişkenleri geçirme:

    - task: AzureCLI@2
      inputs:
        azureSubscription: <Azure_Resource_Manager_Service_Connection>
        scriptType: 'ps'
        scriptLocation: 'scriptPath'
        arguments: '$(AZURE_STORAGE_ACCOUNT) $(AZURE_STORAGE_KEY)'
        scriptPath: './scripts/publish.ps1'
    

Gereksinimler

Gereksinim Açıklama
İşlem hattı türleri YAML, Klasik derleme, Klasik sürüm
Üzerinde çalışır Agent, DeploymentGroup
Talepleri Hiç kimse
Özellikleri Bu görev, işteki sonraki görevler için herhangi bir talebi karşılamaz.
Komut kısıtlamaları Herhangi bir
Ayarlanabilir değişkenleri Herhangi bir
Aracı sürümü 2.0.0 veya üzeri
Görev kategorisi Uygulamak

Ayrıca bkz.