すべてのプロダクト
Search
ドキュメントセンター

:PreviewStack

最終更新日:Jun 03, 2026

テンプレートに基づき、作成または更新するスタックの情報をプレビューします。このオペレーションを呼び出すことで、テンプレートのリソースが有効かどうかを検証できます。

操作説明

この例では、 China (Hangzhou) リージョンで MyStack という名前のスタックを作成してプレビューします。スタックの TemplateBody パラメーターは {"ROSTemplateFormatVersion":"2015-09-01"} に設定されています。

今すぐお試しください

この API を OpenAPI Explorer でお試しください。手作業による署名は必要ありません。呼び出しに成功すると、入力したパラメーターに基づき、資格情報が組み込まれた SDK コードが自動的に生成されます。このコードをダウンロードしてローカルで使用できます。

テスト

RAM 認証

下表に、この API を呼び出すために必要な認証情報を示します。認証情報は、RAM (Resource Access Management) ポリシーを使用して定義できます。以下で各列名について説明します。

  • アクション:特定のリソースに対して実行可能な操作。ポリシー構文ではAction要素として指定します。

  • API:アクションを具体的に実行するための API。

  • アクセスレベル:各 API に対して事前定義されているアクセスの種類。有効な値:create、list、get、update、delete。

  • リソースタイプ:アクションが作用するリソースの種類。リソースレベルでの権限をサポートするかどうかを示すことができます。ポリシーの有効性を確保するため、アクションの対象として適切なリソースを指定してください。

    • リソースレベルの権限を持つ API の場合、必要なリソースタイプはアスタリスク (*) でマークされます。ポリシーのResource要素で対応する ARN を指定してください。

    • リソースレベルの権限を持たない API の場合、「すべてのリソース」と表示され、ポリシーのResource要素でアスタリスク (*) でマークされます。

  • 条件キー:サービスによって定義された条件のキー。このキーにより、きめ細やかなアクセス制御が可能になります。この制御は、アクション単体に適用することも、特定のリソースに対するアクションに適用することもできます。Alibaba Cloud は、サービス固有の条件キーに加えて、すべての RAM 統合サービスに適用可能な一連の共通条件キーを提供しています。

  • 依存アクション:ある特定のアクションを実行するために、前提として実行が必要となる他のアクション。依存アクションの権限も RAM ユーザーまたは RAM ロールに付与する必要があります。

アクション

アクセスレベル

リソースタイプ

条件キー

依存アクション

ros:PreviewStack

get

*Stack

acs:ros:{#regionId}:{#accountId}:stack/{#StackId}

Template

acs:ros:{#regionId}:{#accountId}:template/{#TemplateId}

なし なし

リクエストパラメーター

パラメーター

必須 / 任意

説明

DisableRollback

boolean

任意

スタックの作成が失敗した場合に、リソースのロールバックを無効にするかどうかを指定します。有効な値は次のとおりです:

  • true

  • false (デフォルト)

false

TimeoutInMinutes

integer

任意

スタックを作成するためのタイムアウト期間です。

単位:分。

デフォルト値:60。

60

TemplateBody

string

任意

テンプレート本文を含む構造です。テンプレート本文の長さは、1~524,288 バイトである必要があります。テンプレート本文の長さが上限を超えた場合、URL が長すぎることによるリクエストの失敗を防ぐため、HTTP POST リクエストの本文にパラメーターを追加することを推奨します。

説明

TemplateBody、TemplateURL、TemplateId、TemplateScratchId のうち、いずれか 1 つのみ指定できます。

{"ROSTemplateFormatVersion":"2015-09-01"}

StackPolicyURL

string

任意

スタックポリシーを含むファイルの URL です。URL は、HTTP または HTTPS の Web サーバー、あるいは Object Storage Service (OSS) バケットにあるポリシーを指す必要があります。例: oss://ros/stack-policy/demo、oss://ros/stack-policy/demo?RegionId=cn-hangzhou。ポリシーファイルの長さは最大 16,384 バイトです。OSS バケットのリージョン ID を指定しない場合、RegionId の値が使用されます。

説明

StackPolicyBody と StackPolicyURL のうち、いずれか 1 つのみを指定できます。

URL の長さは最大 1,350 バイトです。

oss://ros-stack-policy/demo

RegionId

string

必須

スタックのリージョン ID です。DescribeRegions API を呼び出して、最新のリージョンリストを確認できます。

cn-hangzhou

StackPolicyBody

string

任意

スタックポリシー本文を含む構造です。スタックポリシー本文の長さは、1~16,384 バイトである必要があります。

説明

StackPolicyBody と StackPolicyURL のうち、いずれか 1 つのみを指定できます。

{"Statement": [{"Action": "Update:*", "Resource": "*", "Effect": "Allow", "Principal": "*"}]}

StackName

string

任意

スタック名です。このパラメーターを使用して、作成するスタックをプレビューできます。名前の長さは最大 255 文字で、数字、英字、ハイフン (-)、アンダースコア (_) が使用できます。先頭は数字または英字である必要があります。

説明

StackName と StackId のうち、いずれか 1 つのみ指定できます。

MyStack

ClientToken

string

任意

リクエストのべき等性を保証するために使用されるクライアントトークンです。クライアントを使用してトークンを生成できますが、トークンがリクエスト間で一意であることを確認する必要があります。トークンの長さは最大 64 文字で、英字、数字、アンダースコア (_)、ハイフン (-) が使用できます。詳細については、「べき等性の確保」をご参照ください。

123e4567-e89b-12d3-a456-42665544****

TemplateURL

string

任意

テンプレート本文を含むファイルの URL です。URL は、HTTP または HTTPS の Web サーバー、あるいは OSS バケットにあるテンプレートを指す必要があります。例: oss://ros/template/demo、oss://ros/template/demo?RegionId=cn-hangzhou。テンプレート本文の長さは最大 524,288 バイトです。OSS バケットのリージョン ID を指定しない場合、RegionId の値が使用されます。

説明

TemplateBody、TemplateURL、TemplateId、TemplateScratchId のうち、いずれか 1 つのみ指定できます。

oss://ros-template/demo

TemplateId

string

任意

テンプレート ID です。このパラメーターは、共有テンプレートとプライベートテンプレートに適用されます。

説明

TemplateBody、TemplateURL、TemplateId、TemplateScratchId のうち、いずれか 1 つのみ指定できます。

5ecd1e10-b0e9-4389-a565-e4c15efc****

TemplateVersion

string

任意

テンプレートのバージョンです。このパラメーターは、TemplateId が指定されている場合にのみ有効です。

v1

Parameters

array<object>

任意

スタックのパラメーター。

object

任意

ParameterKey

string

必須

パラメーター N の名前。パラメーターの名前と値を指定しない場合、Resource Orchestration Service (ROS) はテンプレートで指定されたデフォルトの名前と値を使用します。N の最大値:200。

説明

Parameters を指定する場合、Parameters.N.ParameterKey を指定する必要があります。

ALIYUN::AccountId

ParameterValue

string

必須

パラメーター N の値。N の最大値:200。

説明

Parameters を指定する場合、Parameters.N.ParameterValue を指定する必要があります。

151266687691****

Parallelism

integer

任意

リソースに対して実行できる同時操作の最大数です。このパラメーターは、Terraform スタックに対してのみ有効です。

デフォルトでは、このパラメーターは空です。このパラメーターには、0 以上の整数を設定できます。

説明

このパラメーターに 0 より大きい整数を設定した場合、その値が使用されます。0 に設定するか空のままにした場合は、Terraform のデフォルト値 (通常は 10) が使用されます。

1

TemplateScratchId

string

任意

シナリオ ID。

シナリオ ID の確認方法については、「ListTemplateScratches」をご参照ください。

説明

TemplateBody、TemplateURL、TemplateId、TemplateScratchId のうち、いずれか 1 つのみ指定できます。

ts-aa9c62feab844a6b****

TemplateScratchRegionId

string

任意

シナリオのリージョン ID です。デフォルト値は RegionId の値と同じです。

DescribeRegions API を呼び出して、最新のリージョンリストを確認できます。

cn-hangzhou

StackId

string

任意

スタック ID。このパラメーターは、更新するスタックをプレビューするために使用します。

説明
  • StackName と StackId のうち、いずれか 1 つのみ指定できます。

  • スタックの作成または更新をプレビューする場合、ネストされたスタック内のリソースはプレビューできません。

4a6c9851-3b0f-4f5f-b4ca-a14bf691****

EnablePreConfig

boolean

任意

コンプライアンスの事前チェックで使用するパラメーターを照会するかどうかを指定します。

有効な値は次のとおりです:

  • true

  • false (デフォルト)

false

TaintResources

array

任意

汚染されたリソース。

string

任意

汚染されたリソース。

  • ROS スタックの場合、パラメーター値としてリソース名を指定する必要があります。例:my_vpc。

  • Terraform スタックの場合、パラメーター値としてリソースタイプとリソース名を指定する必要があります。例:alicloud_vpc.my_vpc。

my_vpc

UsePreviousParameters

boolean

任意

最後に使用されたパラメーターの値を使用するかどうかを指定します。

有効な値は次のとおりです:

  • true:最後に使用したパラメーターを再利用します。

  • false:最後に使用したパラメーターを再利用しません。

true

共通リクエストパラメーターについては、「共通パラメーター」をご参照ください。

レスポンスフィールド

フィールド

説明

object

RequestId

string

リクエスト ID です。

B288A0BE-D927-4888-B0F7-B35EF84B6E6F

Stack

object

プレビュー対象のスタックに関する情報です。

TemplateDescription

string

テンプレートの説明です。

One ECS instance.

Parameters

array<object>

スタックのパラメーターです。

object

ParameterKey

string

パラメーターの名前です。

ALIYUN::AccountId

ParameterValue

string

パラメーターの値です。

151266687691****

Description

string

スタックの説明です。

One ECS instance.

DisableRollback

boolean

スタックの作成に失敗した場合に、リソースのロールバックが無効になるかどうかを示します。

false

StackName

string

スタック名です。

MyStack

TimeoutInMinutes

integer

スタック作成のタイムアウト期間です。

単位:分。

60

StackPolicyBody

object

スタックポリシー本文の構造です。

{ "Statement": [ { "Action": "Update:*", "Resource": "*", "Effect": "Allow", "Principal": "*" }, { "Action": "Update:*", "Resource": "LogicalResourceId/apple1", "Effect": "Deny", "Principal": "*" } ] }

Resources

array<object>

スタック内のリソースです。

array<object>

LogicalResourceId

string

リソースの論理リソース ID です。

WebServer

AcsResourceType

string

Alibaba Cloud サービスのリソースタイプです。

ACS::ECS::Instance

ResourceType

string

リソースタイプです。

ALIYUN::ECS::Instance

Description

string

リソースの説明です。

ECS instance.

Stack

object

ネストされたスタックに関する情報です。値のデータ構造は、レスポンス全体のデータ構造と同じです。

{}

RequiredBy

array

スタックが依存するリソースのリストです。

string

スタックが依存する単一のリソースです。

["Resource1", "Resource2"]

Properties

object

リソースのプロパティです。

{ "DiskMappings": [ { "Category": "cloud_ssd", "Size": "20" } ], "SystemDisk_Category": "cloud_ssd", "InstanceChargeType": "PostPaid", "AutoRenew": "False", "WillReplace": true, "ImageId": "centos_7", "InstanceType": "ecs.g6.large", "AllocatePublicIP": true, "AutoRenewPeriod": 1, "IoOptimized": "optimized", "ZoneId": "cn-beijing-g", "VSwitchId": "", "SecurityGroupId": "", "Period": 1, "InternetChargeType": "PayByTraffic", "SystemDiskCategory": "cloud_efficiency", "InternetMaxBandwidthOut": 1, "VpcId": "", "InternetMaxBandwidthIn": 200, "PeriodUnit": "Month" }

Action

string

リソースに対して実行するアクションです。有効な値は次のとおりです。

  • Add

  • Modify

  • Remove

  • None

Add

Replacement

string

テンプレートに対して置換更新を実行するかどうかを示します。有効な値は次のとおりです。

  • True:テンプレートに対して置換更新を実行します。

  • False:テンプレートを変更します。

  • Conditional:テンプレートに対して置換更新を実行する場合があります。テンプレートの使用時に置換更新が実行されるかを確認できます。

説明

このパラメーターは、Action が Modify の場合にのみ返されます。

False

PhysicalResourceId

string

リソースの物理リソース ID です。

このパラメーターは、Action が Modify または Remove の場合にのみ返されます。

i-a1b2c3***

RegionId

string

スタックが存在するリージョンです。

cn-hangzhou

Log

object

スタックの実行ログです。

TerraformLogs

array<object>

Terraform のログです。このパラメーターは、スタックが Terraform スタックである場合にのみ返されます。

説明

このパラメーターには、スタックのプレビューログが含まれます。

object

Command

string

実行する Terraform コマンドの名前です。有効な値は次のとおりです。

  • apply

  • plan

  • destroy

  • version

Terraform コマンドの詳細については、「Basic CLI Features」をご参照ください。

apply

Stream

string

出力ストリームです。有効な値は次のとおりです。

  • stdout:標準出力

  • stderr:標準エラー出力

stdout

Content

string

コマンド実行後、出力ストリームから返されるコンテンツです。

Apply complete! Resources: 42 added, 0 changed, 0 destroyed.

成功レスポンス

JSONJSON

{
  "RequestId": "B288A0BE-D927-4888-B0F7-B35EF84B6E6F",
  "Stack": {
    "TemplateDescription": "One ECS instance.",
    "Parameters": [
      {
        "ParameterKey": "ALIYUN::AccountId",
        "ParameterValue": "151266687691****"
      }
    ],
    "Description": "One ECS instance.",
    "DisableRollback": false,
    "StackName": "MyStack",
    "TimeoutInMinutes": 60,
    "StackPolicyBody": {
      "Statement": [
        {
          "Action": "Update:*",
          "Resource": "*",
          "Effect": "Allow",
          "Principal": "*"
        },
        {
          "Action": "Update:*",
          "Resource": "LogicalResourceId/apple1",
          "Effect": "Deny",
          "Principal": "*"
        }
      ]
    },
    "Resources": [
      {
        "LogicalResourceId": "WebServer",
        "AcsResourceType": "ACS::ECS::Instance",
        "ResourceType": "ALIYUN::ECS::Instance",
        "Description": "ECS instance.",
        "Stack": {},
        "RequiredBy": [
          "[\"Resource1\", \"Resource2\"]"
        ],
        "Properties": {
          "DiskMappings": [
            {
              "Category": "cloud_ssd",
              "Size": "20"
            }
          ],
          "SystemDisk_Category": "cloud_ssd",
          "InstanceChargeType": "PostPaid",
          "AutoRenew": "False",
          "WillReplace": true,
          "ImageId": "centos_7",
          "InstanceType": "ecs.g6.large",
          "AllocatePublicIP": true,
          "AutoRenewPeriod": 1,
          "IoOptimized": "optimized",
          "ZoneId": "cn-beijing-g",
          "VSwitchId": "",
          "SecurityGroupId": "",
          "Period": 1,
          "InternetChargeType": "PayByTraffic",
          "SystemDiskCategory": "cloud_efficiency",
          "InternetMaxBandwidthOut": 1,
          "VpcId": "",
          "InternetMaxBandwidthIn": 200,
          "PeriodUnit": "Month"
        },
        "Action": "Add",
        "Replacement": "False",
        "PhysicalResourceId": "i-a1b2c3***"
      }
    ],
    "RegionId": "cn-hangzhou",
    "Log": {
      "TerraformLogs": [
        {
          "Command": "apply",
          "Stream": "stdout",
          "Content": "Apply complete! Resources: 42 added, 0 changed, 0 destroyed."
        }
      ]
    }
  }
}

エラーコード

完全なリストについては、「エラーコード」をご参照ください。

変更履歴

完全なリストについては、「変更履歴」をご参照ください。