次の方法で共有


AzureResourceManagerTemplateDeployment@3 - ARM テンプレートデプロイ v3 タスク

このタスクを使用して、Azure Resource Manager (ARM) テンプレートをすべてのデプロイ スコープにデプロイします。

構文

# 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.

入力

deploymentScope - デプロイ スコープ
string. 必須です。 許可値: Management GroupSubscriptionResource Group。 既定値: Resource Group

デプロイのスコープ。 デプロイ スコープの詳細については、こちらを参照してください。


azureResourceManagerConnection - Azure Resource Manager接続
入力エイリアス: ConnectedServiceNamestring. 必須です。

選択したデプロイ スコープにアクセスできる Azure Resource Manager サービス接続を指定します。


subscriptionId - サブスクリプション
入力エイリアス: subscriptionNamestring. deploymentScope != Management Group の場合に必要です。

Azure サブスクリプションを指定します。

重要

指定する値は、サブスクリプション名ではなくサブスクリプション ID である必要があります。


action - アクション
string. deploymentScope = Resource Group の場合に必要です。 使用できる値: Create Or Update Resource GroupDeleteRG (リソース グループの削除)。 既定値: Create Or Update Resource Group

Azure リソースまたはリソース グループに対して実行されるアクション。


resourceGroupName - リソース グループ
string. deploymentScope = Resource Group の場合に必要です。

リソース グループの名前を指定します。


location - 場所
string. action = Create Or Update Resource Group || deploymentScope != Resource Group の場合に必要です。

リソース グループのデプロイ スコープ: リソース グループをデプロイする場所。 リソース グループが Azure サブスクリプションに既に存在する場合、この値は無視されます。 その他のデプロイ スコープ: デプロイ メタデータを格納する場所。


templateLocation - テンプレートの場所
string. action = Create Or Update Resource Group || deploymentScope != Resource Group の場合に必要です。 使用できる値: Linked artifactURL of the file。 既定値: Linked artifact

テンプレートとパラメーター JSON ファイルの場所。 ファイルが リンクされた コード/ビルド成果物の一部である場合は、[リンクされた成果物] を選択します。 リンクされた成果物の場合は、Bicep ファイルへのパスを指定することもできます。 JSON ファイルがパブリックに アクセス可能な http/https URL にある場合は、ファイルの URL を選択します。 プライベート ストレージ アカウントに格納されているファイルを使用するには、Shared Access Signature (SAS) トークンを取得してテンプレートの URL に含めます。 例: <blob_storage_url>/template.json?. パラメーター ファイルをストレージ アカウントにアップロードして SAS トークンを生成するには、 Azure ファイル コピー タスク を使用するか、 PowerShell または Azure CLI を使用する手順に従います。


csmFileLink - テンプレート リンク
string. templateLocation = URL of the file && action = Create Or Update Resource Group || deploymentScope != Resource Group の場合に必要です。

テンプレート ファイルの URL を指定します。 URL の例: https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/101-vm-simple-windows/azuredeploy.json

プライベート ストレージ アカウントに格納されているテンプレートをデプロイするには、Shared Access Signature (SAS) トークンを取得してテンプレートの URL に含めます。 例: <blob_storage_url>/template.json?<SAStoken>. テンプレート ファイル (またはリンクされたテンプレート) をストレージ アカウントにアップロードして SAS トークンを生成するには、 Azure ファイル コピー タスクを使用するか、 PowerShell または Azure CLI を使用する手順に従います。

グリッド内のテンプレート パラメーターを表示するには、[テンプレート パラメーターの ... オーバーライド] テキスト ボックスの横にある をクリックします。 この機能を利用するには、ソースで CORS ルールが有効になっている必要があります。 テンプレートが Azure ストレージ BLOB 内にある場合は、「 クロスオリジン リソース共有 」を参照して CORS を有効にします。


csmParametersFileLink - [テンプレート パラメーター] リンク
string. 省略可能。 の場合は templateLocation = URL of the file && action = Create Or Update Resource Group || deploymentScope != Resource Groupを使用します。

パラメーター ファイルの URL を指定します。 URL の例: https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/101-vm-simple-windows/azuredeploy.parameters.json

プライベート ストレージ アカウントに格納されているファイルを使用するには、Shared Access Signature (SAS) トークンを取得してテンプレートの URL に含めます。 例: <blob_storage_url>/template.json?<SAStoken>. テンプレート ファイル (またはリンクされたテンプレート) をストレージ アカウントにアップロードして SAS トークンを生成するには、 Azure ファイル コピー タスクを使用するか、 PowerShell または Azure CLI を使用する手順に従います。

グリッド内のテンプレート パラメーターを表示するには、[テンプレート パラメーターのオーバーライド] テキスト ボックスの ... 横にある をクリックします。 この機能を利用するには、ソースで CORS ルールが有効になっている必要があります。 テンプレートが Azure ストレージ BLOB 内にある場合は、「 クロスオリジン リソース共有 」を参照して CORS を有効にします。


csmFile - テンプレート
string. templateLocation = Linked artifact && action = Create Or Update Resource Group || deploymentScope != Resource Group の場合に必要です。

Azure Resource Manager テンプレートを指すパスまたはパターンを指定します。 Azure Resource Manager テンプレートの詳細については、こちらを参照してください。 すぐに開始するには、 このサンプル テンプレートを使用します。 Azure CLI バージョン > 2.20.0 の場合、Bicep ファイルをサポートします。


csmParametersFile - テンプレート パラメーター
string. 省略可能。 の場合は templateLocation = Linked artifact && action = Create Or Update Resource Group || deploymentScope != Resource Groupを使用します。

Azure Resource Manager テンプレートのパラメーター ファイルを指すパスまたはパターンを指定します。 Azure CLI バージョン > 2.47.0 の場合、Bicep Param ファイルをサポートします。


overrideParameters - テンプレート パラメーターをオーバーライドする
string. 省略可能。 の場合は action = Create Or Update Resource Group || deploymentScope != Resource Groupを使用します。

オーバーライドするテンプレート パラメーターを指定します。

グリッド内のテンプレート パラメーターを表示するには、[パラメーターのオーバーライド] ボックスの ... 横にある をクリックします。 この機能を利用するには、ソースで CORS ルールが有効になっている必要があります。 テンプレートが Azure ストレージ BLOB にある場合は、この文字列を参照して CORS を有効にするか、テキスト ボックスにオーバーライドするテンプレート パラメーターを入力します。

例: -storageName fabrikam -adminUsername $(vmusername) -adminPassword (ConvertTo-SecureString -String '$(password)' -AsPlainText -Force) -azureKeyVaultName $(fabrikamFibre).

パラメーター値に複数の単語がある場合は、変数を使用して値を渡す場合でも、単語を引用符で囲みます。 たとえば、「 -name "parameter value" -name2 "$(var)" 」のように入力します。 オブジェクト型パラメーターをオーバーライドするには、文字列化された JSON オブジェクトを使用します。 たとえば、「 -options ["option1"] -map {"key1": "value1" } 」のように入力します。


deploymentMode - デプロイ モード
string. action = Create Or Update Resource Group || deploymentScope != Resource Group の場合に必要です。 使用できる値: Incremental、、 CompleteValidation (検証のみ)。 既定値: Incremental

モードでは、 Incremental リソース グループへの増分更新としてデプロイが処理されます。 これは、リソース グループ内に存在していてもテンプレートで指定されていないリソースを未変更のまま残します。

Complete モードでは、テンプレートに含まれていないリソースが削除されます。 完全モードは、増分モードよりも比較的時間がかかります。 タスクがタイムアウトした場合は、タイムアウトを増やすか、モードに Incremental 変更することを検討してください。

警告

完全モードでは、テンプレートで指定されていないリソース グループ内のすべての既存のリソースが削除されます。 デプロイするリソース グループに、テンプレートで指定されていない必要なリソースが含まれていないかどうかを確認します。 Validate モードを使用すると、実際のリソースを作成する前にテンプレートに関する問題を見つけることができます。

注意

このモードでは Validate 、リソースがデプロイされていない場合でも、常にリソース グループが作成されます。 デプロイ モードの詳細については、こちらを参照してください。


deploymentName - デプロイ名
string. 省略可能。 の場合は action = Create Or Update Resource Group || deploymentScope != Resource Groupを使用します。

作成するリソース グループデプロイの名前を指定します。


deploymentOutputs - デプロイの出力
string. 省略可能。 の場合は action = Create Or Update Resource Group || deploymentScope != Resource Groupを使用します。

出力変数の変数の名前を指定します。この変数には、現在のデプロイ オブジェクトの outputs セクションが文字列形式で含まれています。 PowerShell コマンドレットを ConvertFrom-Json 使用して JSON オブジェクトを解析し、個々の出力値にアクセスできます。 デプロイ出力の詳細については、こちらを参照してください。


addSpnToEnvironment - オーバーライド パラメーターのサービス プリンシパルの詳細にアクセスする
boolean. 省略可能。 の場合は action = Create Or Update Resource Group || deploymentScope != Resource Groupを使用します。 既定値: false

スクリプトの実行環境として選択された Azure エンドポイントのサービス プリンシパル ID とキーを追加します。 変数 $servicePrincipalId$servicePrincipalKey は、 などの -key $servicePrincipalKeyオーバーライド パラメーターに含めることができます。


useWithoutJSON - JSON を使用せずに個々の出力値を使用します。Stringify が適用されました
boolean. 省略可能。 の場合は action = Create Or Update Resource Group || deploymentScope != Resource Groupを使用します。 既定値: false

個々の出力値は JSON 経由で変換されます。既定では Stringify です。 出力値をそのまま使用する場合は、JSON 経由で変換しません。Stringify、このオプションを有効にします。 詳細については、 こちらを参照してください。


タスク制御オプション

すべてのタスクには、タスク入力に加えて制御オプションがあります。 詳細については、「 コントロール オプションと一般的なタスク プロパティ」を参照してください。

出力変数

[なし] :

解説

注意

このタスクは、Azure CLI バージョン > 2.20.0 の場合に Bicep ファイルをサポートします。

  • すべてのデプロイ スコープでデプロイのサポートが追加されました。
    • VM 関連のすべてのアクションを削除しました。

要件

要件 説明
パイプラインの種類 YAML、クラシック ビルド、クラシック リリース
実行日 エージェント、DeploymentGroup
確認要求 なし
Capabilities このタスクは、ジョブ内の後続のタスクに対する要求を満たしていません。
コマンドの制限 Any
設定可能な変数 Any
エージェントのバージョン 2.119.1 以降
タスクのカテゴリ 配置