AzureResourceManagerTemplateDeployment@3: Aufgabe "ARM-Vorlagenbereitstellung v3"
Verwenden Sie diese Aufgabe, um eine ARM-Vorlage (Azure Resource Manager) für alle Bereitstellungsbereiche bereitzustellen.
Syntax
# ARM template deployment v3
# Deploy an Azure Resource Manager (ARM) template to all the deployment scopes.
- task: AzureResourceManagerTemplateDeployment@3
inputs:
# Azure Details
deploymentScope: 'Resource Group' # 'Management Group' | 'Subscription' | 'Resource Group'. Required. Deployment scope. Default: Resource Group.
azureResourceManagerConnection: # string. Alias: ConnectedServiceName. Required. Azure Resource Manager connection.
#subscriptionId: # string. Alias: subscriptionName. Required when deploymentScope != Management Group. Subscription.
#action: 'Create Or Update Resource Group' # 'Create Or Update Resource Group' | 'DeleteRG'. Required when deploymentScope = Resource Group. Action. Default: Create Or Update Resource Group.
#resourceGroupName: # string. Required when deploymentScope = Resource Group. Resource group.
#location: # string. Required when action = Create Or Update Resource Group || deploymentScope != Resource Group. Location.
# Template
#templateLocation: 'Linked artifact' # 'Linked artifact' | 'URL of the file'. Required when action = Create Or Update Resource Group || deploymentScope != Resource Group. Template location. Default: Linked artifact.
#csmFileLink: # string. Required when templateLocation = URL of the file && action = Create Or Update Resource Group || deploymentScope != Resource Group. Template link.
#csmParametersFileLink: # string. Optional. Use when templateLocation = URL of the file && action = Create Or Update Resource Group || deploymentScope != Resource Group. Template parameters link.
#csmFile: # string. Required when templateLocation = Linked artifact && action = Create Or Update Resource Group || deploymentScope != Resource Group. Template.
#csmParametersFile: # string. Optional. Use when templateLocation = Linked artifact && action = Create Or Update Resource Group || deploymentScope != Resource Group. Template parameters.
#overrideParameters: # string. Optional. Use when action = Create Or Update Resource Group || deploymentScope != Resource Group. Override template parameters.
#deploymentMode: 'Incremental' # 'Incremental' | 'Complete' | 'Validation'. Required when action = Create Or Update Resource Group || deploymentScope != Resource Group. Deployment mode. Default: Incremental.
# Advanced
#deploymentName: # string. Optional. Use when action = Create Or Update Resource Group || deploymentScope != Resource Group. Deployment name.
#deploymentOutputs: # string. Optional. Use when action = Create Or Update Resource Group || deploymentScope != Resource Group. Deployment outputs.
#addSpnToEnvironment: false # boolean. Optional. Use when action = Create Or Update Resource Group || deploymentScope != Resource Group. Access service principal details in override parameters. Default: false.
#useWithoutJSON: false # boolean. Optional. Use when action = Create Or Update Resource Group || deploymentScope != Resource Group. Use individual output values without JSON.Stringify applied. Default: false.
# ARM template deployment v3
# Deploy an Azure Resource Manager (ARM) template to all the deployment scopes.
- task: AzureResourceManagerTemplateDeployment@3
inputs:
# Azure Details
deploymentScope: 'Resource Group' # 'Management Group' | 'Subscription' | 'Resource Group'. Required. Deployment scope. Default: Resource Group.
azureResourceManagerConnection: # string. Alias: ConnectedServiceName. Required. Azure Resource Manager connection.
#subscriptionId: # string. Alias: subscriptionName. Required when deploymentScope != Management Group. Subscription.
#action: 'Create Or Update Resource Group' # 'Create Or Update Resource Group' | 'DeleteRG'. Required when deploymentScope = Resource Group. Action. Default: Create Or Update Resource Group.
#resourceGroupName: # string. Required when deploymentScope = Resource Group. Resource group.
#location: # string. Required when action = Create Or Update Resource Group || deploymentScope != Resource Group. Location.
# Template
#templateLocation: 'Linked artifact' # 'Linked artifact' | 'URL of the file'. Required when action = Create Or Update Resource Group || deploymentScope != Resource Group. Template location. Default: Linked artifact.
#csmFileLink: # string. Required when templateLocation = URL of the file && action = Create Or Update Resource Group || deploymentScope != Resource Group. Template link.
#csmParametersFileLink: # string. Optional. Use when templateLocation = URL of the file && action = Create Or Update Resource Group || deploymentScope != Resource Group. Template parameters link.
#csmFile: # string. Required when templateLocation = Linked artifact && action = Create Or Update Resource Group || deploymentScope != Resource Group. Template.
#csmParametersFile: # string. Optional. Use when templateLocation = Linked artifact && action = Create Or Update Resource Group || deploymentScope != Resource Group. Template parameters.
#overrideParameters: # string. Optional. Use when action = Create Or Update Resource Group || deploymentScope != Resource Group. Override template parameters.
#deploymentMode: 'Incremental' # 'Incremental' | 'Complete' | 'Validation'. Required when action = Create Or Update Resource Group || deploymentScope != Resource Group. Deployment mode. Default: Incremental.
# Advanced
#deploymentName: # string. Optional. Use when action = Create Or Update Resource Group || deploymentScope != Resource Group. Deployment name.
#deploymentOutputs: # string. Optional. Use when action = Create Or Update Resource Group || deploymentScope != Resource Group. Deployment outputs.
#addSpnToEnvironment: false # boolean. Optional. Use when action = Create Or Update Resource Group || deploymentScope != Resource Group. Access service principal details in override parameters. Default: false.
Eingaben
deploymentScope
-
Bereitstellungsbereich
string
. Erforderlich. Zulässige Werte: Management Group
, Subscription
und Resource Group
. Standardwert. Resource Group
.
Der Umfang der Bereitstellung. Erfahren Sie mehr über Bereitstellungsbereiche.
azureResourceManagerConnection
-
Azure Resource Manager-Verbindung
Eingabealias: ConnectedServiceName
.
string
. Erforderlich.
Gibt die Azure Resource Manager-Dienstverbindung mit Zugriff auf den ausgewählten Bereitstellungsbereich an.
subscriptionId
-
Abonnement
Eingabealias: subscriptionName
.
string
. Erforderlich, wenn deploymentScope != Management Group
.
Gibt das Azure-Abonnement an.
Wichtig
Der angegebene Wert muss die Abonnement-ID und nicht der Abonnementname sein.
action
-
Aktion
string
. Erforderlich, wenn deploymentScope = Resource Group
. Zulässige Werte: Create Or Update Resource Group
, DeleteRG
(Ressourcengruppe löschen). Standardwert. Create Or Update Resource Group
.
Die Aktion, die für die Azure-Ressourcen oder -Ressourcengruppe ausgeführt werden soll.
resourceGroupName
-
Ressourcengruppe
string
. Erforderlich, wenn deploymentScope = Resource Group
.
Gibt den Namen einer Ressourcengruppe an.
location
-
Lage
string
. Erforderlich, wenn action = Create Or Update Resource Group || deploymentScope != Resource Group
.
Ressourcengruppenbereitstellungsbereiche: Der Speicherort, an dem die Ressourcengruppe bereitgestellt werden soll. Wenn die Ressourcengruppe bereits im Azure-Abonnement vorhanden ist, wird dieser Wert ignoriert. Andere Bereitstellungsbereiche: Der Speicherort zum Speichern von Bereitstellungsmetadaten.
templateLocation
-
Vorlagenspeicherort
string
. Erforderlich, wenn action = Create Or Update Resource Group || deploymentScope != Resource Group
. Zulässige Werte: Linked artifact
, URL of the file
. Standardwert. Linked artifact
.
Der Speicherort der JSON-Dateien Template und Parameters. Wählen Sie Verknüpftes Artefakt aus, wenn die Dateien Teil der verknüpften Code-/Buildartefakte sind. Für verknüpfte Artefakte können Sie auch den Pfad zu einer Bicep-Datei angeben. Wählen Sie die URL der Datei aus, wenn sich die JSON-Dateien unter öffentlich zugänglichen HTTP/HTTPS-URLs befinden. Um eine in einem privaten Speicherkonto gespeicherte Datei zu verwenden, rufen Sie das SAS-Token (Shared Access Signature) ab und fügen es in die URL der Vorlage ein. Beispiel: <blob_storage_url>/template.json?
. Um eine Parameterdatei in ein Speicherkonto hochzuladen und ein SAS-Token zu generieren, können Sie den Azure-Dateikopiertask verwenden oder die Schritte mithilfe von PowerShell oder der Azure CLI ausführen.
csmFileLink
-
Vorlagenlink
string
. Erforderlich, wenn templateLocation = URL of the file && action = Create Or Update Resource Group || deploymentScope != Resource Group
.
Gibt die URL der Vorlagendatei an. Eine Beispiel-URL: https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/101-vm-simple-windows/azuredeploy.json
Um eine in einem privaten Speicherkonto gespeicherte Vorlage bereitzustellen, rufen Sie das SAS-Token (Shared Access Signature) ab, und fügen Sie es in die URL der Vorlage ein. Beispiel: <blob_storage_url>/template.json?<SAStoken>
. Um eine Vorlagendatei (oder eine verknüpfte Vorlage) in ein Speicherkonto hochzuladen und ein SAS-Token zu generieren, verwenden Sie die Azure-Dateikopieraufgabe , oder führen Sie die Schritte mithilfe von PowerShell oder der Azure CLI aus.
Um die Vorlagenparameter in einem Raster anzuzeigen, klicken Sie auf ...
neben dem Textfeld Vorlagenparameter außer Kraft setzen. Diese Funktion erfordert, dass CORS-Regeln in der Quelle aktiviert sind. Wenn sich die Vorlagen in einem Azure Storage-Blob befinden, finden Sie informationen zum Aktivieren von CORS unter Ressourcenfreigabe zwischen verschiedenen Ursprüngen .
csmParametersFileLink
-
Link zu Vorlagenparametern
string
. Optional. Verwenden Sie , wenn templateLocation = URL of the file && action = Create Or Update Resource Group || deploymentScope != Resource Group
.
Gibt die URL der Parameterdatei an. Eine Beispiel-URL: https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/101-vm-simple-windows/azuredeploy.parameters.json
Um eine in einem privaten Speicherkonto gespeicherte Datei zu verwenden, rufen Sie das SAS-Token (Shared Access Signature) ab und fügen es in die URL der Vorlage ein. Beispiel: <blob_storage_url>/template.json?<SAStoken>
. Um eine Vorlagendatei (oder eine verknüpfte Vorlage) in ein Speicherkonto hochzuladen und ein SAS-Token zu generieren, verwenden Sie die Azure-Dateikopieraufgabe , oder führen Sie die Schritte mithilfe von PowerShell oder der Azure CLI aus.
Um die Vorlagenparameter in einem Raster anzuzeigen, klicken Sie auf ...
neben Textfeld Vorlagenparameter außer Kraft setzen. Diese Funktion erfordert, dass CORS-Regeln in der Quelle aktiviert sind. Wenn sich die Vorlagen in einem Azure Storage-Blob befinden, finden Sie informationen zum Aktivieren von CORS unter Ressourcenfreigabe zwischen verschiedenen Ursprüngen .
csmFile
-
Vorlage
string
. Erforderlich, wenn templateLocation = Linked artifact && action = Create Or Update Resource Group || deploymentScope != Resource Group
.
Gibt den Pfad oder ein Muster an, das auf die Azure Resource Manager-Vorlage verweist. Erfahren Sie mehr über Azure Resource Manager-Vorlagen. Verwenden Sie diese Beispielvorlage, um sofort loszulegen. Unterstützt Bicep-Dateien, wenn die Azure CLI-Version > 2.20.0 verwendet wird.
csmParametersFile
-
Vorlagenparameter
string
. Optional. Verwenden Sie , wenn templateLocation = Linked artifact && action = Create Or Update Resource Group || deploymentScope != Resource Group
.
Geben Sie den Pfad oder ein Muster an, das auf die Parameterdatei für die Azure Resource Manager-Vorlage verweist. Unterstützt Bicep Param-Dateien , wenn die Azure CLI Version > 2.47.0 verwendet wird.
overrideParameters
-
Überschreiben von Vorlagenparametern
string
. Optional. Verwenden Sie , wenn action = Create Or Update Resource Group || deploymentScope != Resource Group
.
Gibt die zu überschreibenden Vorlagenparameter an.
Um die Vorlagenparameter in einem Raster anzuzeigen, klicken Sie auf ...
neben dem Textfeld Parameter außer Kraft setzen. Diese Funktion erfordert, dass CORS-Regeln in der Quelle aktiviert sind. Wenn sich die Vorlagen im Azure Storage-Blob befinden, verweisen Sie auf diese Zeichenfolge, um CORS zu aktivieren, oder geben Sie die Vorlagenparameter ein, die überschrieben werden sollen.
Beispiel: -storageName fabrikam -adminUsername $(vmusername) -adminPassword (ConvertTo-SecureString -String '$(password)' -AsPlainText -Force) -azureKeyVaultName $(fabrikamFibre)
.
Wenn der Parameterwert mehrere Wörter enthält, schließen Sie die Wörter in Anführungszeichen ein, auch wenn Sie den Wert mithilfe von Variablen übergeben.
Beispiel: -name "parameter value" -name2 "$(var)"
.
Verwenden Sie zeichenfolgenisierte JSON-Objekte, um Objekttypparameter zu überschreiben.
Beispiel: -options ["option1"] -map {"key1": "value1" }
.
deploymentMode
-
Bereitstellungsmodus
string
. Erforderlich, wenn action = Create Or Update Resource Group || deploymentScope != Resource Group
. Zulässige Werte: Incremental
, Complete
( Validation
nur Validierung). Standardwert. Incremental
.
Der Incremental
Modus behandelt Bereitstellungen als inkrementelle Updates für die Ressourcengruppe. Ressourcen, die in der Ressourcengruppe vorhanden, aber nicht in der Vorlage angegeben sind, bleiben unverändert.
Der Complete
-Modus löscht Ressourcen, die sich nicht in Ihrer Vorlage befinden. Der vollständige Modus nimmt relativ mehr Zeit in Anspruch als der inkrementelle Modus. Wenn für die Aufgabe ein Timeout auftritt, sollten Sie das Timeout erhöhen oder in den Incremental
Modus wechseln.
Warnung
Im Vollständigen Modus werden alle vorhandenen Ressourcen in der Ressourcengruppe gelöscht, die nicht in der Vorlage angegeben sind. Überprüfen Sie, ob die Ressourcengruppe, für die Sie die Bereitstellung durchführen, keine erforderlichen Ressourcen enthält, die nicht in der Vorlage angegeben sind.
Validate
im Modus können Sie Probleme mit der Vorlage finden, bevor Sie tatsächliche Ressourcen erstellen.
Hinweis
Der Validate
Modus erstellt immer eine Ressourcengruppe, auch wenn keine Ressourcen bereitgestellt werden.
Erfahren Sie mehr über Bereitstellungsmodi.
deploymentName
-
Bereitstellungsname
string
. Optional. Verwenden Sie , wenn action = Create Or Update Resource Group || deploymentScope != Resource Group
.
Gibt den Namen der zu erstellenden Ressourcengruppenbereitstellung an.
deploymentOutputs
-
Bereitstellungsausgaben
string
. Optional. Verwenden Sie , wenn action = Create Or Update Resource Group || deploymentScope != Resource Group
.
Stellt einen Namen für die Variable für die Ausgabevariable bereit, die den Ausgabeabschnitt des aktuellen Bereitstellungsobjekts im Zeichenfolgenformat enthält. Sie können das ConvertFrom-Json
PowerShell-Cmdlet verwenden, um das JSON-Objekt zu analysieren und auf die einzelnen Ausgabewerte zuzugreifen. Erfahren Sie mehr über Bereitstellungsausgaben.
addSpnToEnvironment
-
Zugriff auf Dienstprinzipaldetails in Außerkraftsetzungsparametern
boolean
. Optional. Verwenden Sie , wenn action = Create Or Update Resource Group || deploymentScope != Resource Group
. Standardwert. false
.
Fügt die Dienstprinzipal-ID und den Schlüssel des Azure-Endpunkts hinzu, der als Ausführungsumgebung des Skripts ausgewählt wurde. Die Variablen $servicePrincipalId
und $servicePrincipalKey
können in Außerkraftsetzungsparametern enthalten sein, z. B -key $servicePrincipalKey
. .
useWithoutJSON
-
Verwenden Sie einzelne Ausgabewerte ohne JSON. Stringify angewendet
boolean
. Optional. Verwenden Sie , wenn action = Create Or Update Resource Group || deploymentScope != Resource Group
. Standardwert. false
.
Einzelne Ausgabewerte werden über JSON konvertiert. Standardmäßig stringify. Wenn Sie die Ausgabewerte so verwenden möchten, wie sie sind, ohne sie per JSON zu konvertieren. Stringify aktivieren Sie diese Option. Weitere Informationen finden Sie hier.
Optionen für die Vorgangskontrolle
Alle Vorgänge verfügen zusätzlich zu ihren Eingaben über Steuerungsoptionen. Weitere Informationen finden Sie unter Steuerungsoptionen und allgemeine Aufgabeneigenschaften.
Ausgabevariablen
Keine.
Hinweise
Hinweis
Diese Aufgabe unterstützt Bicep-Dateien, wenn die Azure CLI-Version > 2.20.0 verwendet wird.
- Unterstützung für die Bereitstellung in allen Bereitstellungsbereichen hinzugefügt.
- Alle VM-bezogenen Aktionen wurden entfernt.
Anforderungen
Anforderung | BESCHREIBUNG |
---|---|
Pipelinetypen | YAML, Klassischer Build, klassisches Release |
Wird ausgeführt auf | Agent, DeploymentGroup |
Forderungen | Keine |
Capabilities | Diese Aufgabe erfüllt keine Anforderungen an nachfolgende Aufgaben im Auftrag. |
Befehlseinschränkungen | Any |
Setzbare Variablen | Any |
Agent-Version | 2.119.1 oder höher |
Aufgabenkategorie | Bereitstellen |
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für