Udostępnij za pośrednictwem


AzurePowerShell@5 — zadanie Azure PowerShell v5

To zadanie służy do uruchamiania skryptu programu PowerShell w środowisku platformy Azure. Kontekst platformy Azure jest uwierzytelniany przy użyciu podanego połączenia usługi Azure Resource Manager.

Uwaga

Domyślnie program Azure PowerShell v5 używa programu PowerShell Core dla agentów systemu Linux i Windows PowerShell dla agentów systemu Windows. Aby użyć najnowszej wersji programu PowerShell w agentach systemu Windows, ustaw pwsh parametr na truewartość . Zamiast tego zostanie użyty program PowerShell Core.

Składnia

# Azure PowerShell v5
# Run a PowerShell script within an Azure environment.
- task: AzurePowerShell@5
  inputs:
    azureSubscription: # string. Alias: ConnectedServiceNameARM. Required. Azure Subscription. 
    #ScriptType: 'FilePath' # 'FilePath' | 'InlineScript'. Script Type. Default: FilePath.
    #ScriptPath: # string. Optional. Use when ScriptType = FilePath. Script Path. 
    #Inline: # string. Optional. Use when ScriptType = InlineScript. Inline Script. 
    #ScriptArguments: # string. Optional. Use when ScriptType = FilePath. Script Arguments. 
    #errorActionPreference: 'stop' # 'stop' | 'continue' | 'silentlyContinue'. ErrorActionPreference. Default: stop.
    #FailOnStandardError: false # boolean. Fail on Standard Error. Default: false.
  # Azure PowerShell version options
    #azurePowerShellVersion: 'OtherVersion' # 'LatestVersion' | 'OtherVersion'. Alias: TargetAzurePs. Azure PowerShell Version. Default: OtherVersion.
    preferredAzurePowerShellVersion: # string. Alias: CustomTargetAzurePs. Required when TargetAzurePs = OtherVersion. Preferred Azure PowerShell Version. 
  # Advanced
    #pwsh: false # boolean. Use PowerShell Core. Default: false.
    #validateScriptSignature: false # boolean. Optional. Use when ScriptType = FilePath. Validate script signature. Default: false.
    #workingDirectory: # string. Working Directory.
# Azure PowerShell v5
# Run a PowerShell script within an Azure environment.
- task: AzurePowerShell@5
  inputs:
    azureSubscription: # string. Alias: ConnectedServiceNameARM. Required. Azure Subscription. 
    #ScriptType: 'FilePath' # 'FilePath' | 'InlineScript'. Script Type. Default: FilePath.
    #ScriptPath: # string. Optional. Use when ScriptType = FilePath. Script Path. 
    #Inline: # string. Optional. Use when ScriptType = InlineScript. Inline Script. 
    #ScriptArguments: # string. Optional. Use when ScriptType = FilePath. Script Arguments. 
    #errorActionPreference: 'stop' # 'stop' | 'continue' | 'silentlyContinue'. ErrorActionPreference. Default: stop.
    #FailOnStandardError: false # boolean. Fail on Standard Error. Default: false.
  # Azure PowerShell version options
    #azurePowerShellVersion: 'OtherVersion' # 'LatestVersion' | 'OtherVersion'. Alias: TargetAzurePs. Azure PowerShell Version. Default: OtherVersion.
    preferredAzurePowerShellVersion: # string. Alias: CustomTargetAzurePs. Required when TargetAzurePs = OtherVersion. Preferred Azure PowerShell Version. 
  # Advanced
    #pwsh: false # boolean. Use PowerShell Core. Default: false.
    #workingDirectory: # string. Working Directory.

Dane wejściowe

azureSubscription - Subskrypcja platformy Azure
Alias wejściowy: ConnectedServiceNameARM. string. Wymagane.

Subskrypcja usługi Azure Resource Manager do skonfigurowania przed uruchomieniem programu PowerShell.


ScriptType - Typ skryptu
string. Dozwolone wartości: FilePath (Ścieżka pliku skryptu), InlineScript (wbudowany skrypt). Wartość domyślna: FilePath.

Typ skryptu: ścieżka pliku lub wbudowany.


ScriptPath - Ścieżka skryptu
string. Opcjonalny. Użyj polecenia , gdy ScriptType = FilePath.

Ścieżka skryptu. Powinna to być w pełni kwalifikowana ścieżka lub ścieżka względna względem domyślnego katalogu roboczego.


Inline - Skrypt wbudowany
string. Opcjonalny. Użyj polecenia , gdy ScriptType = InlineScript. Wartość domyślna: # You can write your azure powershell scripts inline here. \n# You can also pass predefined and custom variables to this script using arguments.

Określa skrypt do wykonania. Maksymalna obsługiwana długość skryptu wbudowanego to 5000 znaków. Użyj skryptu z pliku, jeśli chcesz użyć dłuższego skryptu.


ScriptArguments - Argumenty skryptu
string. Opcjonalny. Użyj polecenia , gdy ScriptType = FilePath.

Dodatkowe parametry do przekazania do programu PowerShell. Mogą to być parametry porządkowe lub nazwane. Nie dotyczy opcji skryptu wbudowanego.


errorActionPreference - ErrorActionPreference
string. Dozwolone wartości: stop, continue, silentlyContinue. Wartość domyślna: stop.

Wybiera wartość zmiennej ErrorActionPreference do wykonywania skryptu.


FailOnStandardError - Błąd standardowy kończy się niepowodzeniem
boolean. Wartość domyślna: false.

Jeśli to prawda, to zadanie zakończy się niepowodzeniem, jeśli jakiekolwiek błędy zostaną zapisane w potoku błędów lub jeśli jakiekolwiek dane zostaną zapisane w standardowym strumieniu błędów.


azurePowerShellVersion - wersja Azure PowerShell
Alias wejściowy: TargetAzurePs. string. Dozwolone wartości: LatestVersion (najnowsza zainstalowana wersja) OtherVersion (Określ inną wersję). Wartość domyślna: OtherVersion.

W przypadku hostowanych agentów obsługiwane wersje Azure PowerShell to 1.0.0, 1.6.0, 2.3.2, 2.6.0i 3.1.0 (hostowana kolejka vs2017). Aby wybrać najnowszą wersję dostępną dla agenta, wybierz pozycję LatestVersion (Najnowsza zainstalowana wersja).

W przypadku agentów prywatnych można określić preferowaną wersję Azure PowerShell przy użyciu (OtherVersionokreśl inną wersję).


preferredAzurePowerShellVersion - Preferowana wersja Azure PowerShell
Alias wejściowy: CustomTargetAzurePs. string. Wymagane, gdy TargetAzurePs = OtherVersion.

Preferowana wersja Azure PowerShell musi być właściwą wersją semantyczną, np. 1.2.3. Wyrażenie regularne, takie jak 2.\*,2.3.\* , nie jest obsługiwane. Hostowana pula programu VS2017 obecnie obsługuje wersje modułów 1.0.0Az, 1.6.0, 2.3.2, 2.6.0i 3.1.0.


pwsh - Korzystanie z programu PowerShell Core
boolean. Wartość domyślna: false.

Jeśli jest to prawda, zadania uruchomione na agentach systemu Windows będą używane pwsh.exe ze ścieżki powershell.exezamiast .


validateScriptSignature - Weryfikowanie podpisu skryptu
boolean. Opcjonalny. Użyj polecenia , gdy ScriptType = FilePath. Wartość domyślna: false.

Jeśli jest to prawda, zadanie najpierw sprawdzi, czy określony skrypt jest podpisany i prawidłowy przed jego wykonaniem.


workingDirectory - Katalog roboczy
string.

Katalog roboczy, w którym jest uruchamiany skrypt.


Opcje sterowania zadania

Wszystkie zadania mają opcje sterowania oprócz danych wejściowych zadań. Aby uzyskać więcej informacji, zobacz Opcje sterowania i typowe właściwości zadań.

Zmienne wyjściowe

Brak.

Uwagi

Rozwiązywanie problemów

Skrypt działał lokalnie, ale zakończył się niepowodzeniem w potoku

Zwykle występuje to, gdy połączenie usługi używane w potoku ma niewystarczające uprawnienia do uruchomienia skryptu. Lokalnie skrypt jest uruchamiany z poświadczeniami i zakończy się powodzeniem, ponieważ może mieć wymagany dostęp.

Aby rozwiązać ten problem, upewnij się, że poświadczenia jednostki usługi/uwierzytelniania mają wymagane uprawnienia. Aby uzyskać więcej informacji, zobacz Zarządzanie dostępem do zasobów subskrypcji platformy Azure przy użyciu Role-Based Access Control.

Błąd: Nie można odnaleźć modułów: "<nazwa> modułu" z wersją: "<version>". Jeśli moduł został niedawno zainstalowany, spróbuj ponownie po ponownym uruchomieniu agenta zadań usługi Azure Pipelines

Azure PowerShell zadanie używa modułu Azure/AzureRM/Az programu PowerShell do interakcji z subskrypcją platformy Azure. Ten problem występuje, gdy moduł programu PowerShell nie jest dostępny w hostowanym agencie. W związku z tym w przypadku określonej wersji zadania preferowana wersja Azure PowerShell musi być określona w opcjach wersji Azure PowerShell z listy dostępnych wersji. Zainstalowane oprogramowanie można znaleźć w tabeli Oprogramowanie w agentach hostowanych przez firmę Microsoft.

Problemy z połączeniem z usługą

Aby rozwiązać problemy związane z połączeniami usług, zobacz Rozwiązywanie problemów z połączeniem z usługą.

Przykłady

W poniższym przykładzie pokazano, jak wywołać skrypt z pliku i przekazać do niego argumenty skryptu.

- task: AzurePowerShell@5
  inputs:
    azureSubscription: my-arm-service-connection
    scriptType: filePath
    scriptPath: $(Build.SourcesDirectory)\myscript.ps1
    scriptArguments:
      -Arg1 val1 `
      -Arg2 val2 `
      -Arg3 val3
    azurePowerShellVersion: latestVersion
    pwsh: true

Następujące argumenty pokazują, jak wywołać skrypt wbudowany.

- task: AzurePowerShell@5
  inputs:
    azureSubscription: 'Azure subscription connection placeholder'
    azurePowerShellVersion: LatestVersion
    ScriptType: 'InlineScript'
    Inline: |
      # You can write your azure powershell scripts inline here. 
      # You can also pass predefined and custom variables to this script using arguments
      Write-Host 'Hello'
      Write-Host 'World!'

Wymagania

Wymaganie Opis
Typy potoków YAML, klasyczna kompilacja, wersja klasyczna
Działa w Agent, DeploymentGroup
Wymagania Brak
Możliwości To zadanie nie spełnia żadnych wymagań dotyczących kolejnych zadań w zadaniu.
Ograniczenia poleceń Dowolne
Zmienne ustawialne Dowolne
Wersja agenta 2.115.0 lub nowsza
Kategoria zadania Wdrażanie