Azure CLI görevi

Azure Pipelines

Azure aboneliğine karşı Azure CLı komutlarını içeren bir kabuk veya Batch betiği çalıştırmak için bu görevi kullanın. bu görev, Linux, macos veya Windows işletim sistemlerinde çalışan platformlar arası aracılarda Azure clı komutlarını çalıştırmak için kullanılır.

Sürüm 2,0 ' deki yenilikler

  • PowerShell ve PowerShell Core betiğini çalıştırmayı destekler.
  • powershell Core betiği xplat aracıları (Windows, Linux veya osx) ile birlikte çalışarak, aracının PowerShell sürüm 6 veya daha yüksek bir sürüme sahip olduğundan emin olun.
  • powershell betiği yalnızca Windows aracıkla birlikte çalışarak, aracının PowerShell sürüm 5 veya daha düşük bir sürüme sahip olduğundan emin olun.

Önkoşullar

  • Microsoft Azure aboneliği.

  • Azure hesabınıza yönelik hizmet bağlantısı Azure Resource Manager .

  • Microsoft barındırılan aracılarında Azure CLı önceden yüklenmiş olmalıdır. Ancak özel aracılar kullanıyorsanız, derleme ve yayın aracısını çalıştıran bilgisayarlara Azure CLI 'yı yükleyebilirsiniz . Azure CLı 'nin yüklü olduğu makinede bir aracı zaten çalışıyorsa, tüm ilgili aşama değişkenlerinin güncelleştirildiğinden emin olmak için aracıyı yeniden başlatın.

Görev girişleri

Parametreler Description
azureSubscription
Azure aboneliği
Istenir Azure Resource Manager hizmeti bağlantısının adı
scriptType
Betik türü
Istenir Betik türü:
bir
kullanıyorsanız aşağıdaki türlerden birini seçin:
  • bash
  • pscore
Windows aracısıkullanıyorsanız aşağıdaki türlerden birini seçin:
  • batch
  • ps
  • pscore


scriptLocation
Betik konumu
(Gerekli) scriptPath bir betik dosyası kullanmayı seçin veya inlineScript betiğinizi satır içi yazmak istiyorsanız
Varsayılan değer: scriptPath
scriptPath
Betik yolu
Ne zaman gereklidir scriptLocation = scriptPath . Komut dosyasının tam yolu veya varsayılan çalışma dizinine göre bir yol
inlineScript
Satır içi betik
Ne zaman gereklidir scriptLocation = inlineScript . Komut dosyalarınızı satır içi olarak yapıştırmak istiyorsanız bu seçeneği kullanın. Linux tabanlı aracılar kullanırken Windows aracıları ve bash veya powershell core için powershell, powershell core veya batch betikleri kullanın. callBatch kullanırken her Azure komutundan önce öneki kullanın. Ayrıca, bağımsız değişkenleri kullanarak betiğe önceden tanımlanmış ve özel değişkenler geçirebilirsiniz.
Örnekler:
PowerShell/PowerShellCore/Shell: az--Version az Account Show
Batch: çağrı az--sürüm çağrısı az Account Show
arguments
Betik bağımsız değişkenleri
Seçim Betiğe geçirilen bağımsız değişkenler
powerShellErrorActionPreference
ErrorActionPreference
Seçim , PowerShell/PowerShell Core betiğinizin üst kısmındaki $ErrorActionPreference = ' Value ' satırı önüne eklenir
Varsayılan değer: durdur
Seçenekler durdurulur, devam eder ve silentlyContinue
addSpnToEnvironment
Betikteki hizmet sorumlusu ayrıntılarına erişin
Seçim Komut dosyasının yürütme ortamına seçtiğiniz Azure uç noktasının hizmet sorumlusu KIMLIĞI ve anahtarını ekler. Şu değişkenleri kullanabilirsiniz: $env: Serviceprincipalıd, $env: Servicesprincipalkey ve $env: Tenantıd . Bu yalnızca Azure uç noktası hizmet sorumlusu kimlik doğrulama şemasına sahip olduğunda kabul edilir
Varsayılan değer: false
useGlobalConfig
Küresel Azure CLı yapılandırmasını kullanma
Seçim Bu yanlışsa, bu görev kendi ayrı Azure CLI yapılandırma dizininikullanır. Bu, Azure CLı görevlerini paralel sürümlerde çalıştırmak için kullanılabilir "
Varsayılan değer: false
workingDirectory
Çalışma dizini
Seçim Betiğin çalıştırıldığı geçerli çalışma dizini. Boş, $ (System. DefaultWorkingDirectory) olan deponun (derleme) veya yapıtların (yayın) köküdür
failOnStandardError
Standart hatada başarısız oldu
Seçim Bu doğruysa, Standarfstream 'e herhangi bir hata yazıldığında bu görev başarısız olur. Durumu anlamak için standart hataları yok Sayın ve çıkış kodlarını kullanan onay kutusunun seçimini kaldırın
Varsayılan değer: false
powerShellIgnoreLASTEXITCODE
$LASTEXITCODE yoksay
Seçim Bu yanlışsa, satır if ((Test-Path -LiteralPath variable:\\LASTEXITCODE)) { exit $LASTEXITCODE } betiğinizin sonuna eklenir. Bu, dış komuttan gelen son çıkış kodunun, PowerShell çıkış kodu olarak yayılmasına neden olur. Aksi takdirde satır, betiğinizin sonuna eklenmez
Varsayılan değer: false

Örnek

Aşağıda, Azure CLı 'nin sürümünü listeleyen ve aboneliğin ayrıntılarını alan bir YAML kod parçacığına örnek verilmiştir.

- 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ğe bağımsız değişkenlerin nasıl geçirileceğini gösterir.

  • Bağımsız değişkenleri satır içi betiklerine 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'
    
  • Bağımsız değişkenleri betik yoluyla 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'
    

Açık kaynak

Bu görev GitHubaçık kaynağıdır. Geribildirim ve katılımlar hoş geldiniz.

SSS

Bir aracıya ihtiyacım var mı?

Yapınızı veya sürümünüzü çalıştırmak için en az bir aracınız olması gerekir.

Sorun yaşıyorum. Sorunları nasıl giderebilirim?

Bkz. derleme ve yayın sorunlarını giderme.

Varsayılan bir aracı havuzu seçemiyorum ve derleme veya yayınımı sıraya alamıyorum. Bu Nasıl yaparım? düzeltilsin mi?

Bkz. Aracı havuzları.

NuGet gönderme görevi şu hata ile başarısız oluyor: "hata: yerel veren sertifikası alınamıyor". Bunu nasıl giderebilirim?

Bu, güvenilen kök sertifika eklenerek düzeltilebilir. NODE_EXTRA_CA_CERTS=fileOrtam değişkenini yapı aracıya ekleyebilir veya NODE.EXTRA.CA.CERTS=file görev değişkenini işlem hattınızda ekleyebilirsiniz. Bu değişken hakkında daha fazla bilgi için bkz. Node.js belgeleri . İşlem hattınızda değişken ayarlamaya ilişkin yönergeler için bkz. işlem hattındaki değişkenleri ayarlama .