AzureResourceManagerTemplateDeployment@3 – Bereitstellungsaufgabe der ARM-Vorlage v3
Verwenden Sie diese Aufgabe, um eine Azure Resource Manager (ARM)-Vorlage 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 (action = Create Or Update Resource Group || deploymentScope != Resource Group) && templateLocation = URL of the file. Template link.
#csmParametersFileLink: # string. Optional. Use when (action = Create Or Update Resource Group || deploymentScope != Resource Group) && templateLocation = URL of the file. Template parameters link.
#csmFile: # string. Required when (action = Create Or Update Resource Group || deploymentScope != Resource Group) && templateLocation = Linked artifact. Template.
#csmParametersFile: # string. Optional. Use when (action = Create Or Update Resource Group || deploymentScope != Resource Group) && templateLocation = Linked artifact. 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 (action = Create Or Update Resource Group || deploymentScope != Resource Group) && templateLocation = URL of the file. Template link.
#csmParametersFileLink: # string. Optional. Use when (action = Create Or Update Resource Group || deploymentScope != Resource Group) && templateLocation = URL of the file. Template parameters link.
#csmFile: # string. Required when (action = Create Or Update Resource Group || deploymentScope != Resource Group) && templateLocation = Linked artifact. Template.
#csmParametersFile: # string. Optional. Use when (action = Create Or Update Resource Group || deploymentScope != Resource Group) && templateLocation = Linked artifact. 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.
Eingänge
deploymentScope
-
Bereitstellungsbereich
string
. Erforderlich. Zulässige Werte: Management Group
, Subscription
, 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
.
Stellt den Namen einer Ressourcengruppe bereit.
location
-
string
. Erforderlich, wenn action = Create Or Update Resource Group || deploymentScope != Resource Group
.
Ressourcengruppenbereitstellungsbereiche: Der Speicherort für die Bereitstellung der Ressourcengruppe. 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 Vorlagen- und parameter-JSON-Dateien. Wählen Sie verknüpften Artefakt aus, wenn die Dateien Teil der verknüpften Code-/Buildartefakte sind. Bei verknüpften Artefakten können Sie auch den Pfad zu einer Bicep-Datei angeben. Wählen Sie URL der Datei aus,, wenn sich die JSON-Dateien in allen öffentlich zugänglichen HTTP/https-URLs befinden. Um eine datei zu verwenden, die in einem privaten Speicherkonto gespeichert ist, rufen Sie das SAS-Token (Shared Access Signature) in die URL der Vorlage ab, und fügen Sie es ein. Beispiel: <blob_storage_url>/template.json?
. Um eine Parameterdatei in ein Speicherkonto hochzuladen und ein SAS-Token zu generieren, können Sie Azure-Dateikopie-Aufgabe verwenden oder die Schritte mit PowerShell- oder Azure CLI-ausführen.
csmFileLink
-
Vorlagenlink
string
. Erforderlich, wenn (action = Create Or Update Resource Group || deploymentScope != Resource Group) && templateLocation = URL of the file
.
Gibt die URL der Vorlagendatei an. Beispiel-URL: https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/101-vm-simple-windows/azuredeploy.json
Rufen Sie zum Bereitstellen einer Vorlage, die in einem privaten Speicherkonto gespeichert ist, das SAS-Token (Shared Access Signature) 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-Dateikopie Aufgabe, oder führen Sie die Schritte mit PowerShell- oder Azure CLIaus.
Wenn Sie die Vorlagenparameter in einem Raster anzeigen möchten, klicken Sie auf ...
neben dem Textfeld "Vorlagenparameter außer Kraft setzen". Dieses Feature erfordert, dass CORS-Regeln an der Quelle aktiviert sind. Wenn sich die Vorlagen in einem Azure Storage-BLOB befinden, lesen Sie cross-Origin Resource Sharing, um CORS zu aktivieren.
Link csmParametersFileLink
- Vorlagenparameter
string
. Wahlfrei. Wird verwendet, wenn (action = Create Or Update Resource Group || deploymentScope != Resource Group) && templateLocation = URL of the file
.
Gibt die URL der Parameterdatei an. Beispiel-URL: https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/101-vm-simple-windows/azuredeploy.parameters.json
Um eine datei zu verwenden, die in einem privaten Speicherkonto gespeichert ist, rufen Sie das SAS-Token (Shared Access Signature) in die URL der Vorlage ab, und fügen Sie es 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-Dateikopie Aufgabe, oder führen Sie die Schritte mit PowerShell- oder Azure CLIaus.
Wenn Sie die Vorlagenparameter in einem Raster anzeigen möchten, klicken Sie auf ...
neben dem Textfeld "Vorlagenparameter außer Kraft setzen". Dieses Feature erfordert, dass CORS-Regeln an der Quelle aktiviert sind. Wenn sich die Vorlagen in einem Azure Storage-BLOB befinden, lesen Sie cross-Origin Resource Sharing, um CORS zu aktivieren.
csmFile
-
Vorlage
string
. Erforderlich, wenn (action = Create Or Update Resource Group || deploymentScope != Resource Group) && templateLocation = Linked artifact
.
Gibt den Pfad oder ein Muster an, das auf die Azure Resource Manager-Vorlage verweist. Erfahren Sie mehr über Azure Resource Manager-Vorlagen. Um sofort zu beginnen, verwenden Sie dieser Beispielvorlage. Unterstützt Bicep-Dateien, wenn die Azure CLI-Version > 2.20.0.
csmParametersFile
-
Vorlagenparameter
string
. Wahlfrei. Wird verwendet, wenn (action = Create Or Update Resource Group || deploymentScope != Resource Group) && templateLocation = Linked artifact
.
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.
overrideParameters
-
Außerkraftsetzen von Vorlagenparametern
string
. Wahlfrei. Wird verwendet, 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". Dieses Feature erfordert, dass CORS-Regeln an 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 im Textfeld außer Kraft gesetzt 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 zum Überschreiben von Objekttypparametern zeichenfolgenbasierte JSON-Objekte.
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 Gültigkeitsprüfung). Standardwert: Incremental
.
Der Incremental
Modus behandelt Bereitstellungen als inkrementelle Aktualisierungen der Ressourcengruppe. Sie belässt unveränderte Ressourcen, die in der Ressourcengruppe vorhanden sind, aber nicht in der Vorlage angegeben sind.
Complete
Modus löscht Ressourcen, die sich nicht in Ihrer Vorlage befinden. Der vollständige Modus dauert relativ viel Zeit als der inkrementelle Modus. Wenn das Zeitlimit für den Vorgang zunimmt, sollten Sie das Timeout erhöhen oder in den Incremental
Modus wechseln.
Warnung
Der vollständige Modus löscht alle vorhandenen Ressourcen in der Ressourcengruppe, die nicht in der Vorlage angegeben sind. Überprüfen Sie, ob die Von Ihnen bereitgestellte Ressourcengruppe keine erforderlichen Ressourcen enthält, die nicht in der Vorlage angegeben sind.
mit Validate
Modus können Sie Probleme mit der Vorlage finden, bevor Sie tatsächliche Ressourcen erstellen.
Anmerkung
Der modus Validate
erstellt immer eine Ressourcengruppe, auch wenn keine Ressourcen bereitgestellt werden.
Erfahren Sie mehr über Bereitstellungsmodi.
deploymentName
-
Bereitstellungsname
string
. Wahlfrei. Wird verwendet, wenn action = Create Or Update Resource Group || deploymentScope != Resource Group
.
Gibt den Namen der zu erstellenden Ressourcengruppenbereitstellung an.
deploymentOutputs
-
Bereitstellungsausgabe
string
. Wahlfrei. Wird verwendet, 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 PowerShell-Cmdlet ConvertFrom-Json
verwenden, um das JSON-Objekt zu analysieren und auf die einzelnen Ausgabewerte zuzugreifen. Erfahren Sie mehr über Bereitstellungsausgabe.
addSpnToEnvironment
-
Details des Access-Dienstprinzipals in Außerkraftsetzungsparametern
boolean
. Wahlfrei. Wird verwendet, 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 parameter außer Kraft setzen, z. B. -key $servicePrincipalKey
.
useWithoutJSON
-
Einzelne Ausgabewerte ohne JSON verwenden. Stringify angewendete
boolean
. Wahlfrei. Wird verwendet, wenn action = Create Or Update Resource Group || deploymentScope != Resource Group
. Standardwert: false
.
Einzelne Ausgabewerte werden über JSON konvertiert. Standardmäßig Zeichenfolgen zeichenfolgen. Wenn Sie die Ausgabewerte wie sie verwenden möchten, ohne sie über JSON zu konvertieren. "Stringify" aktivieren Sie diese Option. Weitere Informationen finden Sie in diesem.
Aufgabensteuerungsoptionen
Alle Aufgaben verfügen zusätzlich zu ihren Aufgabeneingaben über Steuerungsoptionen. Weitere Informationen finden Sie unter Steuerelementoptionen und allgemeinen Aufgabeneigenschaften.
Ausgabevariablen
Nichts.
Bemerkungen
Anmerkung
Diese Aufgabe unterstützt Bicep-Dateien, wenn die Azure CLI-Version > 2.20.0.
- Unterstützung für die Bereitstellung in allen Bereitstellungsbereichen hinzugefügt.
- Alle vm-bezogenen Aktionen wurden entfernt.
Anforderungen
Anforderung | Beschreibung |
---|---|
Pipelinetypen | YAML, Classic Build, Classic Release |
Läuft auf | Agent, DeploymentGroup |
Anforderungen | Nichts |
Funktionen | Dieser Vorgang erfüllt keine Anforderungen für nachfolgende Vorgänge im Auftrag. |
Befehlseinschränkungen | Jegliche |
Settable-Variablen | Jegliche |
Agentversion | 2.119.1 oder höher |
Vorgangskategorie | Aufstellen |