Deployments - What If
リソース グループのスコープで実行された場合にデプロイによって行われる変更を返します。
POST https://management.azure.com/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf?api-version=2025-04-01
URI パラメーター
名前 | / | 必須 | 型 | 説明 |
---|---|---|---|---|
deployment
|
path | True |
string minLength: 1maxLength: 64 pattern: ^[-\w\._\(\)]+$ |
デプロイメントの名前。 |
resource
|
path | True |
string minLength: 1maxLength: 90 pattern: ^[-\w\._\(\)]+$ |
テンプレートがデプロイされるリソース グループの名前。 名前は大文字と小文字が区別されます。 |
subscription
|
path | True |
string |
Microsoft Azure サブスクリプション ID。 |
api-version
|
query | True |
string |
この操作に使用する API バージョン。 |
要求本文
名前 | 必須 | 型 | 説明 |
---|---|---|---|
properties | True |
展開プロパティ。 |
|
location |
string |
デプロイ データを格納する場所。 |
応答
名前 | 型 | 説明 |
---|---|---|
200 OK |
OK - 操作の状態 What-If 返します |
|
202 Accepted |
受け入れ済み - 実行時間の長い操作の状態を照会する Url を Location ヘッダーに返します。 ヘッダー
|
|
Other Status Codes |
操作が失敗した理由を説明するエラー応答。 |
セキュリティ
azure_auth
Azure Active Directory OAuth2 フロー
型:
oauth2
フロー:
implicit
Authorization URL (承認 URL):
https://login.microsoftonline.com/common/oauth2/authorize
スコープ
名前 | 説明 |
---|---|
user_impersonation | ユーザー アカウントを偽装する |
例
Predict template changes at resource group scope
要求のサンプル
POST https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000001/resourcegroups/my-resource-group/providers/Microsoft.Resources/deployments/my-deployment/whatIf?api-version=2025-04-01
{
"properties": {
"templateLink": {
"uri": "https://example.com/exampleTemplate.json"
},
"parameters": {},
"mode": "Incremental"
}
}
応答のサンプル
{
"status": "Succeeded",
"properties": {
"changes": [
{
"resourceId": "/subscriptions/00000000-0000-0000-0000-000000000001/resourceGroups/my-resource-group/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myExistingIdentity",
"changeType": "Modify",
"before": {
"apiVersion": "2018-11-30",
"id": "/subscriptions/00000000-0000-0000-0000-000000000001/resourceGroups/my-resource-group/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myExistingIdentity",
"type": "Microsoft.ManagedIdentity/userAssignedIdentities",
"name": "myExistingIdentity",
"location": "westus2"
},
"after": {
"apiVersion": "2018-11-30",
"id": "/subscriptions/00000000-0000-0000-0000-000000000001/resourceGroups/my-resource-group/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myExistingIdentity",
"type": "Microsoft.ManagedIdentity/userAssignedIdentities",
"name": "myExistingIdentity",
"location": "westus2",
"tags": {
"myNewTag": "my tag value"
}
},
"delta": [
{
"path": "tags.myNewTag",
"propertyChangeType": "Create",
"after": "my tag value"
}
]
},
{
"resourceId": "/subscriptions/00000000-0000-0000-0000-000000000001/resourceGroups/my-resource-group/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myNewIdentity",
"changeType": "Create",
"after": {
"apiVersion": "2018-11-30",
"id": "/subscriptions/00000000-0000-0000-0000-000000000001/resourceGroups/my-resource-group/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myNewIdentity",
"type": "Microsoft.ManagedIdentity/userAssignedIdentities",
"name": "myNewIdentity",
"location": "eastus",
"tags": {
"myOtherNewTag": "another new tag value"
}
}
}
]
}
}
Location: /subscriptions/00000000-0000-0000-0000-000000000000/ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ
定義
名前 | 説明 |
---|---|
Change |
デプロイの実行時にリソースに対して行われる変更の種類。 |
Cloud |
リソース管理要求のエラー応答。 |
Debug |
デバッグ設定。 |
Deployment |
|
Deployment |
|
Deployment |
|
Deployment |
パラメーター化のためのデプロイメント外部入力。 |
Deployment |
パラメーター化のためのデプロイメント外部入力定義。 |
Deployment |
リソースのデプロイに使用されるモード。 この値には、Incremental または Complete のいずれかを指定できます。 増分モードでは、テンプレートに含まれていない既存のリソースを削除せずにリソースがデプロイされます。 完全モードでは、リソースがデプロイされ、テンプレートに含まれていないリソース グループ内の既存のリソースが削除されます。 リソースを誤って削除する可能性があるため、完全モードを使用する場合は注意してください。 |
Deployment |
テンプレートのデプロイ パラメーター。 |
Deployment |
デプロイの What-if 操作パラメーター。 |
Deployment |
配置の What-if プロパティ。 |
Deployment |
展開 What-If 操作の設定。 |
Error |
リソース管理エラーの追加情報。 |
Error |
エラー応答 |
Expression |
親テンプレートのスコープ内でテンプレート式を評価するか、入れ子になったテンプレートを評価するかを指定します。 |
Expression |
入れ子になったテンプレート内のパラメーター、変数、関数の評価に使用するスコープ。 |
Extension |
|
Key |
Azure Key Vault パラメーターリファレンス。 |
Key |
Azure Key Vault リファレンス。 |
Level |
追加の応答レベルを示します。 |
On |
エラー動作でのデプロイ。 |
On |
エラー動作の種類でのデプロイ。 指定できる値は LastSuccessful と SpecificDeployment です。 |
Parameters |
デプロイ パラメーターへの参照を表すエンティティ。 |
Property |
プロパティの変更の種類。 |
Template |
テンプレートへの参照を表すエンティティ。 |
Validation |
デプロイメントで実行される検証のレベル。 |
What |
What-If 操作によって予測される単一のリソース変更に関する情報。 |
What |
What-If 操作の結果。 予測された変更の一覧と、次の結果セットにアクセスするための URL リンクが含まれています。 |
What |
リソース プロパティに対する予測された変更。 |
What |
What-If 結果の形式 |
ChangeType
デプロイの実行時にリソースに対して行われる変更の種類。
値 | 説明 |
---|---|
Create |
リソースは現在の状態には存在しませんが、目的の状態にあります。 デプロイの実行時にリソースが作成されます。 |
Delete |
リソースは現在の状態に存在し、目的の状態にはありません。 デプロイの実行時にリソースが削除されます。 |
Ignore |
リソースは現在の状態に存在し、目的の状態にはありません。 デプロイの実行時に、リソースはデプロイまたは変更されません。 |
Deploy |
リソースは現在の状態と目的の状態に存在し、デプロイの実行時に再デプロイされます。 リソースのプロパティは、変更される場合と変更されない場合があります。 |
NoChange |
リソースは現在の状態と目的の状態に存在し、デプロイの実行時に再デプロイされます。 リソースのプロパティは変更されません。 |
Modify |
リソースは現在の状態と目的の状態に存在し、デプロイの実行時に再デプロイされます。 リソースのプロパティが変更されます。 |
Unsupported |
リソースは What-If ではサポートされていません。 |
CloudError
リソース管理要求のエラー応答。
名前 | 型 | 説明 |
---|---|---|
error |
エラー応答 |
DebugSetting
デバッグ設定。
名前 | 型 | 説明 |
---|---|---|
detailLevel |
string |
デバッグのためにログに記録する情報の種類を指定します。 許可される値は none、requestContent、responseContent、または requestContent と responseContent の両方でコンマで区切られています。 既定値は none です。 この値を設定するときは、デプロイ時に渡す情報の種類を慎重に検討してください。 要求または応答に関する情報をログに記録することで、展開操作を通じて取得される機密データを公開する可能性があります。 |
DeploymentDiagnosticsDefinition
名前 | 型 | 説明 |
---|---|---|
additionalInfo |
エラーの追加情報。 |
|
code |
string |
エラー コード。 |
level |
追加の応答レベルを示します。 |
|
message |
string |
エラー メッセージ。 |
target |
string |
エラーターゲット。 |
DeploymentExtensionConfigItem
名前 | 型 | 説明 |
---|---|---|
keyVaultReference |
拡張機能の config プロパティのシークレット値を取得するために使用される Azure Key Vault 参照。 |
|
type |
拡張機能設定プロパティの値の型。 |
|
value |
拡張構成プロパティの値。 |
DeploymentExtensionDefinition
名前 | 型 | 説明 |
---|---|---|
alias |
string |
デプロイメント・テンプレートで定義されている拡張機能の別名。 |
config |
<string,
Deployment |
拡張機能の構成。 |
configId |
string |
拡張機能の構成 ID。 拡張機能内のデプロイ コントロール プレーンを一意に識別します。 |
name |
string |
拡張機能の名前。 |
version |
string |
拡張機能のバージョン。 |
DeploymentExternalInput
パラメーター化のためのデプロイメント外部入力。
名前 | 型 | 説明 |
---|---|---|
value |
外部入力値。 |
DeploymentExternalInputDefinition
パラメーター化のためのデプロイメント外部入力定義。
名前 | 型 | 説明 |
---|---|---|
config |
外部入力の設定。 |
|
kind |
string |
外部入力の種類。 |
DeploymentMode
リソースのデプロイに使用されるモード。 この値には、Incremental または Complete のいずれかを指定できます。 増分モードでは、テンプレートに含まれていない既存のリソースを削除せずにリソースがデプロイされます。 完全モードでは、リソースがデプロイされ、テンプレートに含まれていないリソース グループ内の既存のリソースが削除されます。 リソースを誤って削除する可能性があるため、完全モードを使用する場合は注意してください。
値 | 説明 |
---|---|
Incremental | |
Complete |
DeploymentParameter
テンプレートのデプロイ パラメーター。
名前 | 型 | 説明 |
---|---|---|
expression |
string |
パラメータへの入力式。 |
reference |
Azure Key Vault パラメーターリファレンス。 |
|
value |
パラメーターに値を入力します。 |
DeploymentWhatIf
デプロイの What-if 操作パラメーター。
名前 | 型 | 説明 |
---|---|---|
location |
string |
デプロイ データを格納する場所。 |
properties |
展開プロパティ。 |
DeploymentWhatIfProperties
配置の What-if プロパティ。
名前 | 型 | 説明 |
---|---|---|
debugSetting |
デプロイのデバッグ設定。 |
|
expressionEvaluationOptions |
親テンプレートのスコープ内でテンプレート式を評価するか、入れ子になったテンプレートを評価するかを指定します。 入れ子になったテンプレートにのみ適用されます。 指定しない場合、既定値は outer です。 |
|
extensionConfigs |
object |
デプロイ拡張機能に使用する構成。 このオブジェクトのキーは、デプロイ テンプレートで定義されているデプロイ拡張機能のエイリアスです。 |
externalInputDefinitions |
<string,
Deployment |
外部入力定義は、外部ツールが期待される外部入力値を定義するために使用されます。 |
externalInputs |
<string,
Deployment |
外部入力値は、パラメータ評価のために外部ツールによって使用されます。 |
mode |
リソースのデプロイに使用されるモード。 この値には、Incremental または Complete のいずれかを指定できます。 増分モードでは、テンプレートに含まれていない既存のリソースを削除せずにリソースがデプロイされます。 完全モードでは、リソースがデプロイされ、テンプレートに含まれていないリソース グループ内の既存のリソースが削除されます。 リソースを誤って削除する可能性があるため、完全モードを使用する場合は注意してください。 |
|
onErrorDeployment |
エラー動作でのデプロイ。 |
|
parameters |
<string,
Deployment |
テンプレートのデプロイ パラメーターを定義する名前と値のペア。 この要素は、既存のパラメーター ファイルへのリンクではなく、要求でパラメーター値を直接指定する場合に使用します。 parametersLink プロパティまたは parameters プロパティを使用しますが、両方を使用することはできません。 JObject または整形式の JSON 文字列を指定できます。 |
parametersLink |
パラメーター ファイルの URI。 この要素を使用して、既存のパラメーター ファイルにリンクします。 parametersLink プロパティまたは parameters プロパティを使用しますが、両方を使用することはできません。 |
|
template |
object |
テンプレートの内容。 この要素は、既存のテンプレートへのリンクではなく、要求でテンプレート構文を直接渡す場合に使用します。 JObject または整形式の JSON 文字列を指定できます。 templateLink プロパティまたは template プロパティを使用しますが、両方は使用しないでください。 |
templateLink |
テンプレートの URI。 templateLink プロパティまたは template プロパティを使用しますが、両方は使用しないでください。 |
|
validationLevel |
デプロイの検証レベル |
|
whatIfSettings |
オプションの What-If 操作設定。 |
DeploymentWhatIfSettings
展開 What-If 操作の設定。
名前 | 型 | 説明 |
---|---|---|
resultFormat |
What-If 結果の形式 |
ErrorAdditionalInfo
リソース管理エラーの追加情報。
名前 | 型 | 説明 |
---|---|---|
info |
object |
追加情報。 |
type |
string |
追加情報の種類。 |
ErrorResponse
エラー応答
名前 | 型 | 説明 |
---|---|---|
additionalInfo |
エラーの追加情報。 |
|
code |
string |
エラー コード。 |
details |
エラーの詳細。 |
|
message |
string |
エラー メッセージ。 |
target |
string |
エラーターゲット。 |
ExpressionEvaluationOptions
親テンプレートのスコープ内でテンプレート式を評価するか、入れ子になったテンプレートを評価するかを指定します。
名前 | 型 | 説明 |
---|---|---|
scope |
入れ子になったテンプレート内のパラメーター、変数、関数の評価に使用するスコープ。 |
ExpressionEvaluationOptionsScopeType
入れ子になったテンプレート内のパラメーター、変数、関数の評価に使用するスコープ。
値 | 説明 |
---|---|
NotSpecified | |
Outer | |
Inner |
ExtensionConfigPropertyType
値 | 説明 |
---|---|
String |
文字列値を表すプロパティの型。 |
Int |
整数値を表すプロパティの型。 |
Bool |
ブール値を表すプロパティの型。 |
Array |
配列値を表すプロパティの型。 |
Object |
オブジェクト値を表すプロパティの型。 |
SecureString |
セキュリティで保護された文字列値を表すプロパティの種類。 |
SecureObject |
セキュア・オブジェクト値を表すプロパティ・タイプ。 |
KeyVaultParameterReference
Azure Key Vault パラメーターリファレンス。
名前 | 型 | 説明 |
---|---|---|
keyVault |
Azure Key Vault リファレンス。 |
|
secretName |
string |
Azure Key Vault シークレット名。 |
secretVersion |
string |
Azure Key Vault シークレットのバージョン。 |
KeyVaultReference
Azure Key Vault リファレンス。
名前 | 型 | 説明 |
---|---|---|
id |
string |
Azure Key Vault リソース ID。 |
Level
追加の応答レベルを示します。
値 | 説明 |
---|---|
Warning | |
Info | |
Error |
OnErrorDeployment
エラー動作でのデプロイ。
名前 | 型 | 説明 |
---|---|---|
deploymentName |
string |
エラー ケースで使用するデプロイ。 |
type |
エラー動作の種類でのデプロイ。 指定できる値は LastSuccessful と SpecificDeployment です。 |
OnErrorDeploymentType
エラー動作の種類でのデプロイ。 指定できる値は LastSuccessful と SpecificDeployment です。
値 | 説明 |
---|---|
LastSuccessful | |
SpecificDeployment |
ParametersLink
デプロイ パラメーターへの参照を表すエンティティ。
名前 | 型 | 説明 |
---|---|---|
contentVersion |
string |
含まれている場合は、テンプレートの ContentVersion と一致する必要があります。 |
uri |
string |
パラメーター ファイルの URI。 |
PropertyChangeType
プロパティの変更の種類。
値 | 説明 |
---|---|
Create |
プロパティは現在の状態には存在しませんが、目的の状態にあります。 このプロパティは、デプロイの実行時に作成されます。 |
Delete |
プロパティは現在の状態に存在し、目的の状態にはありません。 デプロイの実行時に削除されます。 |
Modify |
プロパティは現在の状態と目的の状態の両方に存在し、異なります。 プロパティの値は、デプロイの実行時に変更されます。 |
Array |
このプロパティは配列であり、入れ子になった変更が含まれています。 |
NoEffect |
プロパティは設定または更新されません。 |
TemplateLink
テンプレートへの参照を表すエンティティ。
名前 | 型 | 説明 |
---|---|---|
contentVersion |
string |
含まれている場合は、テンプレートの ContentVersion と一致する必要があります。 |
id |
string |
テンプレート スペックのリソース ID。id または uri プロパティを使用しますが、両方は使用しないでください。 |
queryString |
string |
templateLink URI で使用するクエリ文字列 (SAS トークンなど)。 |
relativePath |
string |
relativePath プロパティを使用すると、親に対する相対位置にリンクされたテンプレートを配置できます。 親テンプレートが TemplateSpec にリンクされている場合、TemplateSpec 内の成果物が参照されます。 親が URI にリンクされている場合、子デプロイは親 URI と relativePath URI の組み合わせになります。 |
uri |
string |
デプロイするテンプレートの URI。 uri または id プロパティを使用しますが、両方は使用しないでください。 |
ValidationLevel
デプロイメントで実行される検証のレベル。
値 | 説明 |
---|---|
Template |
テンプレートの静的解析が実行されます。 |
Provider |
テンプレートの静的分析が実行され、セマンティック検証のためにリソース宣言がリソース プロバイダーに送信されます。 呼び出し元が各リソースに対する RBAC 書き込みアクセス許可を持っていることを検証します。 |
ProviderNoRbac |
テンプレートの静的分析が実行され、セマンティック検証のためにリソース宣言がリソース プロバイダーに送信されます。 呼び出し元が各リソースに対する RBAC 書き込みアクセス許可を持っているかどうかの検証をスキップします。 |
WhatIfChange
What-If 操作によって予測される単一のリソース変更に関する情報。
名前 | 型 | 説明 |
---|---|---|
after |
object |
デプロイが実行された後のリソースの予測スナップショット。 |
before |
object |
デプロイが実行される前のリソースのスナップショット。 |
changeType |
デプロイの実行時にリソースに対して行われる変更の種類。 |
|
delta |
リソース プロパティに対する予測された変更。 |
|
deploymentId |
string |
この変更を担当するデプロイのリソース ID。 |
extension |
リソースがデプロイされた拡張機能。 |
|
identifiers |
object |
Azure リソースのようなリソース ID がないため、Bicep 拡張可能なリソースを一意に識別するプロパティのサブセット。 |
resourceId |
string |
リソースID |
symbolicName |
string |
この変更を担当するリソースのシンボリック名。 |
unsupportedReason |
string |
リソースが What-If でサポートされていない理由に関する説明。 |
WhatIfOperationResult
What-If 操作の結果。 予測された変更の一覧と、次の結果セットにアクセスするための URL リンクが含まれています。
名前 | 型 | 説明 |
---|---|---|
error |
エラー応答 |
|
properties.changes |
What-If 操作によって予測されるリソース変更の一覧。 |
|
properties.diagnostics |
What-If 操作によって検出されたリソース診断のリスト。 |
|
properties.potentialChanges |
What-If 操作によって予測されるリソース変更の一覧。 |
|
status |
string |
What-If 操作の状態。 |
WhatIfPropertyChange
リソース プロパティに対する予測された変更。
名前 | 型 | 説明 |
---|---|---|
after |
object |
デプロイの実行後のプロパティの値。 |
before |
object |
配置が実行される前のプロパティの値。 |
children |
入れ子になったプロパティの変更。 |
|
path |
string |
プロパティのパス。 |
propertyChangeType |
プロパティの変更の種類。 |
WhatIfResultFormat
What-If 結果の形式
値 | 説明 |
---|---|
ResourceIdOnly | |
FullResourcePayloads |