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

:CreateChangeSet

最終更新日:Jun 03, 2026

スタックの変更セットを作成します。変更セットを実行する前に、変更内容をプレビューできます。

操作説明

シナリオ

変更セットを使用したスタックの作成

複数のクラウドリソースを管理し、スタックの作成前にそれらがどのように作成されるかをプレビューしたい場合は、変更セットを使用してスタックを作成できます。これを行うには、ChangeSetType パラメーターを CREATE に設定し、他の必須パラメーターも設定します。変更セットの詳細については、「Change sets」をご参照ください。

変更セットを使用したスタックの更新

変更を適用する前に、更新によるスタックへの影響をプレビューしたい場合は、既存のスタックに対して変更セットを作成できます。これを行うには、ChangeSetType パラメーターを UPDATE に設定し、他の必須パラメーターも設定します。変更セットの詳細については、「Change sets」をご参照ください。

既存リソースからのスタックの作成

既存のクラウドリソースを新しいスタックにインポートして一元管理したい場合は、変更セットを作成できます。これを行うには、ChangeSetType パラメーターを IMPORT に設定し、他の必須パラメーターも設定します。リソースインポートの詳細については、「概要」をご参照ください。

スタックへの既存リソースのインポート

既存のリソースを既存のスタックにインポートして一元管理したい場合は、変更セットを作成できます。これを行うには、ChangeSetType パラメーターを IMPORT に設定し、他の必須パラメーターも設定します。リソースインポートの詳細については、「概要」をご参照ください。

制限

  • 変更セットを使用して更新できるのは、特定の状態のスタックのみです。詳細については、「変更セットを使用したスタックの更新」をご参照ください。

  • スタックには、同時に最大 20 件の変更セットを含めることができます。

  • 変更セットは、スタックへの変更内容のみを表示します。スタックが正常に更新されるかどうかは示しません。

  • 変更セットは、アカウントクォータの超過、更新不可能なリソースの更新試行、リソースを変更するためのアクセス許可の不足といった潜在的な問題を確認しません。これらの問題のいずれかにより、スタックの更新が失敗する可能性があります。更新が失敗した場合、ROS はリソースを以前の状態にロールバックしようとします。

このトピックでは、China (Hangzhou) リージョン (cn-hangzhou) で MyChangeSet という名前の変更セットを作成する例を示します。この変更セットは、ID が 4a6c9851-3b0f-4f5f-b4ca-a14bf691**** のスタックのテンプレートを {"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:CreateChangeSet

create

*Stack

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

Template

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

なし なし

リクエストパラメーター

パラメーター

必須 / 任意

説明

StackId

string

任意

変更セットを作成するスタックの ID です。Resource Orchestration Service (ROS) は、スタック情報と、変更されたテンプレートや異なるパラメーター値などの送信された情報を比較して、変更セットを生成します。スタック ID を照会するには、ListStacks API を呼び出します。

説明

このパラメーターは、ChangeSetType が UPDATE または IMPORT に設定されている場合にのみ有効です。

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

StackPolicyURL

string

任意

スタックポリシーを含むファイルの URL です。URL は、Web サーバー (HTTP または HTTPS) または Alibaba Cloud OSS バケット (例: oss://ros/stack-policy/demo、oss://ros/stack-policy/demo?RegionId=cn-hangzhou) にあるポリシーを指している必要があります。ポリシーファイルの最大サイズは 16,384 バイトです。

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

説明

OSS バケットのリージョンを指定しない場合、RegionId の値が使用されます。

ChangeSetType が CREATE に設定されている場合、StackPolicyBody パラメーターと StackPolicyURL パラメーターのいずれか一方のみを指定できます。

ChangeSetType が UPDATE に設定されている場合、次のパラメーターのいずれか一方のみを指定できます:

  • StackPolicyBody

  • StackPolicyURL

  • StackPolicyDuringUpdateBody

  • StackPolicyDuringUpdateURL

oss://ros/stack-policy/demo

StackPolicyBody

string

任意

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

ChangeSetType が CREATE に設定されている場合、StackPolicyBody パラメーターと StackPolicyURL パラメーターのいずれか一方のみを指定できます。

ChangeSetType が UPDATE に設定されている場合、次のパラメーターのいずれか一方のみを指定できます:

  • StackPolicyBody

  • StackPolicyURL

  • StackPolicyDuringUpdateBody

  • StackPolicyDuringUpdateURL

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

StackName

string

任意

変更セットを作成するスタックの名前です。名前の長さは最大 255 文字で、数字、英字、ハイフン (-)、アンダースコア (_) を含めることができます。名前は数字または英字で始まる必要があります。

説明

このパラメーターは、ChangeSetType が CREATE または IMPORT に設定されている場合にのみ有効です。

MyStack

UsePreviousParameters

boolean

任意

前回使用したパラメーターの値を使用するかどうかを指定します。有効な値は次のとおりです:

  • true

  • false (デフォルト)

説明

このパラメーターは、ChangeSetType が UPDATE または IMPORT に設定されている場合にのみ有効です。

true

ChangeSetType

string

任意

変更セットのタイプです。有効な値は次のとおりです:

  • CREATE:新しいスタックの変更セットを作成します。

  • UPDATE (デフォルト):既存のスタックの変更セットを作成します。

  • IMPORT:ROS で管理されていないリソースをインポートするために、新しいスタックまたは既存のスタックの変更セットを作成します。

ChangeSetType の値を CREATE に設定すると、ROS は新しいスタックを作成します。変更セットを実行するまで、スタックは REVIEW_IN_PROGRESS 状態になります。

説明
  • UPDATE タイプを使用して新しいスタックの変更セットを作成したり、CREATE タイプを使用して既存のスタックの変更セットを作成したりすることはできません。

  • IMPORT タイプの変更セットにスタックポリシーを設定することはできません。スタックポリシーは、スタックの作成時または更新時に設定できます。

UPDATE

Description

string

任意

変更セットの説明です。説明は最大 1,024 バイトです。

It is a demo.

RegionId

string

必須

変更セットのリージョン ID です。

最新のリージョンリストを照会するには、DescribeRegions API を呼び出します。

cn-hangzhou

ClientToken

string

任意

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

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

TemplateURL

string

任意

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

説明

OSS バケットのリージョンを指定しない場合、RegionId の値が使用されます。

TemplateBody、TemplateURL、TemplateId の各パラメーターのうち、いずれか 1 つを指定できます。

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

oss://ros/template/demo

StackPolicyDuringUpdateURL

string

任意

一時的に上書きするスタックポリシーを含むファイルの URL です。URL は、Web サーバー (HTTP または HTTPS) または OSS バケット (例: oss://ros/stack-policy/demo、oss://ros/stack-policy/demo?RegionId=cn-hangzhou) にあるポリシーを指している必要があります。ポリシーファイルの最大サイズは 16,384 バイトです。

説明

OSS バケットのリージョンを指定しない場合、RegionId の値が使用されます。

URL の長さは最大 1,350 バイトです。保護されたリソースを更新する場合は、更新中に一時的に上書きするスタックポリシーを指定します。スタックポリシーを指定しない場合、スタックに関連付けられている現在のポリシーが使用されます。このパラメーターは、ChangeSetType が UPDATE に設定されている場合にのみ有効です。次のパラメーターのいずれか 1 つを指定できます:

  • StackPolicyBody

  • StackPolicyURL

  • StackPolicyDuringUpdateBody

  • StackPolicyDuringUpdateURL

oss://ros/stack-policy/demo

TemplateBody

string

任意

テンプレート本文の構造です。テンプレート本文の長さは、1~524,288 バイトである必要があります。サイズが大きい場合は、HTTP POST + Body Param メソッドを使用してリクエスト本文でパラメーターを渡し、URL が長すぎることによるリクエストの失敗を回避することを推奨します。

説明

TemplateBody、TemplateURL、TemplateId の各パラメーターのうち、いずれか 1 つを指定できます。

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

TimeoutInMinutes

integer

任意

スタックが CREATE_FAILED または UPDATE_FAILED 状態になるまでのタイムアウト時間 (分) です。ChangeSetType が CREATE に設定されている場合、このパラメーターは必須です。ChangeSetType が UPDATE に設定されている場合、このパラメーターはオプションです。

  • 単位:分

  • 有効な値:10 ~ 1440

  • デフォルト値:60

12

DisableRollback

boolean

任意

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

  • true:スタックの作成に失敗した場合、スタックのロールバックを無効にします。

  • false (デフォルト):スタックの作成に失敗した場合、スタックのロールバックを有効にします。

説明

このパラメーターは、ChangeSetType が CREATE または IMPORT に設定されている場合にのみ有効です。

false

ChangeSetName

string

必須

変更セットの名前です。名前の長さは最大 255 文字で、数字、英字、ハイフン (-)、アンダースコア (_) を含めることができます。名前は数字または英字で始まる必要があります。

説明

変更セットの名前は、同じスタック内で一意である必要があります。

MyChangeSet

StackPolicyDuringUpdateBody

string

任意

一時的に上書きするスタックポリシーの構造です。ポリシー本文の長さは、1~16,384 バイトである必要があります。保護されたリソースを更新する場合は、更新中に一時的に上書きするスタックポリシーを指定します。スタックポリシーを指定しない場合、スタックに関連付けられている現在のポリシーが使用されます。このパラメーターは、ChangeSetType が UPDATE に設定されている場合にのみ有効です。次のパラメーターのいずれか 1 つを指定できます:

  • StackPolicyBody

  • StackPolicyURL

  • StackPolicyDuringUpdateBody

  • StackPolicyDuringUpdateURL

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

RamRoleName

string

任意

RAM ロールの名前です。ROS は RAM ロールを引き受けてスタックを作成し、このロールの認証情報を使用して Alibaba Cloud サービスの API を呼び出します。ROS は、スタックで実行されるすべての操作に対して、常にこのロールを使用します。スタックに対する操作権限が必要です。権限がない場合、ROS は RamRoleName で指定されたロールを引き受けてスタックで操作を実行します。RamRoleName を指定しない場合、ROS はスタックの既存のロールを引き受けます。使用可能なロールがない場合、ROS はアカウントの認証情報から生成された一時的な認証情報を使用します。RAM ロール名の長さは最大 64 バイトです。

RAM ロールの詳細については、「スタックロール」をご参照ください。

test-role

ReplacementOption

string

任意

リソースプロパティが変更され、その変更が変更更新をサポートしていない場合に、置換更新を有効にするかどうかを指定します。置換更新では、リソースが削除され、新しいリソースが作成されます。リソースの物理 ID が変更されます。有効な値は次のとおりです:

  • Enabled:置換更新を有効にします。

  • Disabled (デフォルト):置換更新を無効にします。

説明

変更更新が優先されます。このパラメーターは、ChangeSetType が UPDATE に設定されている場合にのみ有効です。

Disabled

TemplateId

string

任意

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

テンプレート ID を照会するには、ListTemplates API を呼び出します。

説明

TemplateBody、TemplateURL、TemplateId の各パラメーターのうち、いずれか 1 つを指定できます。

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

TemplateVersion

string

任意

テンプレートのバージョンです。

説明

このパラメーターは、TemplateId が指定されている場合にのみ有効です。

v1

Parameters

array<object>

任意

テンプレートで定義されているパラメーターです。

object

任意

ParameterKey

string

必須

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

説明

Parameters パラメーターはオプションです。Parameters を指定する場合は、Parameters.N.ParameterKey も指定する必要があります。

Amount

ParameterValue

string

必須

テンプレートで定義されているパラメーターの値です。N の値は最大 200 です。

説明

Parameters パラメーターはオプションです。Parameters を指定する場合は、Parameters.N.ParameterValue も指定する必要があります。

12

NotificationURLs

array

任意

スタックイベント通知を受信する Webhook アドレスのリストです。

http://my-site.com/ros-notify

string

任意

スタックイベント通知を受信する Webhook アドレスです。有効な値は次のとおりです:

  • HTTP POST URL。各 URL の長さは最大 1,024 バイトです。

  • eventbridge:スタックステータスの変更が EventBridge サービスに送信されます。EventBridge コンソール にログインし、左側のナビゲーションウィンドウで [Event Buses] をクリックして、イベント情報を表示できます。

説明

この機能は、China (Hangzhou)、China (Shanghai)、China (Beijing)、香港 (中国)、China (Zhangjiakou) の各リージョンでサポートされています。

N の値は最大 5 です。スタックのステータスが変更されると、通知が送信されます。スタックでロールバックが有効になっている場合、CREATE_FAILED および UPDATE_FAILED ステータスの通知は送信されません。代わりに、CREATE_ROLLBACK および ROLLBACK ステータスの通知が送信されます。IN_PROGRESS ステータスは報告されません。Outputs パラメーターがスタックに定義されているかどうかにかかわらず、通知が送信されます。次のコードは通知のサンプルを示しています:

{
   "Outputs": [
       {
           "Description": "No description given",
           "OutputKey": "InstanceId",
           "OutputValue": "i-xxx"
       }
   ],
   "StackId": "80bd6b6c-e888-4573-ae3b-93d29113****",
   "StackName": "test-notification-url",
   "Status": "CREATE_COMPLETE"
}

http://example.com/ros-notify

ResourcesToImport

array<object>

任意

インポートするリソースのリストです。

object

任意

ResourceIdentifier

string

任意

インポートするリソースを識別するためのキーと値のペアを定義した JSON 文字列です。キーは、ALIYUN::ECS::VPC リソースの VpcId のようなリソースの識別子プロパティです。値は、vpc-2zevx9ios**** のようなプロパティの値です。

リソースの識別子プロパティを照会するには、GetTemplateSummary API を呼び出します。

説明

このパラメーターは、ChangeSetType が IMPORT に設定されている場合にのみ有効です。ResourcesToImport パラメーターはオプションです。ResourcesToImport を指定する場合は、ResourcesToImport.N.ResourceIdentifier も指定する必要があります。

{"VpcId": "vpc-2zevx9ios******"}

LogicalResourceId

string

任意

リソースの論理 ID です。論理 ID は、テンプレートで定義されているリソース名です。

説明

このパラメーターは、ChangeSetType が IMPORT に設定されている場合にのみ有効です。ResourcesToImport パラメーターはオプションです。ResourcesToImport を指定する場合は、ResourcesToImport.N.LogicalResourceId も指定する必要があります。

Vpc

ResourceType

string

任意

リソースのタイプです。リソースタイプは、テンプレートで定義されているリソースタイプと同じである必要があります。

説明

このパラメーターは、ChangeSetType が IMPORT に設定されている場合にのみ有効です。ResourcesToImport パラメーターはオプションです。ResourcesToImport を指定する場合は、ResourcesToImport.N.ResourceType も指定する必要があります。

ALIYUN::ECS::VPC

TemplateScratchId

string

任意

リソース管理シナリオの ID です。

このパラメーターは、ChangeSetType が IMPORT に設定されている場合にのみ有効です。このパラメーターは、リソースインポート用の新しいスタックの作成のみをサポートします。

リソース管理シナリオでリソースをインポートする場合は、このパラメーターのみを指定します。テンプレートに関連するパラメーターは指定しないでください。

リソース管理シナリオ ID を照会するには、ListTemplateScratches API を呼び出します。

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

Parallelism

integer

任意

リソースで実行できる同時操作の最大数です。値は 0 以上の整数である必要があります。このパラメーターを設定すると、その値はスタックに関連付けられ、後続のスタック操作に影響します。

このパラメーターは、ChangeSetType が CREATE または UPDATE に設定されている場合にのみ有効です。有効な値は次のとおりです:

  • ChangeSetType が CREATE に設定されている場合

    • このパラメーターを 0 より大きい整数に設定すると、その整数が使用されます。

    • このパラメーターを 0 に設定するか、このパラメーターを設定しない場合、ROS スタックには制限が適用されません。Terraform スタックの場合、Terraform のデフォルト値である 10 が使用されます。

  • ChangeSetType が UPDATE に設定されている場合

    • このパラメーターを 0 より大きい整数に設定すると、その整数が使用されます。

    • このパラメーターを 0 に設定すると、ROS スタックには制限が適用されません。Terraform スタックの場合、Terraform のデフォルト値である 10 が使用されます。

    • このパラメーターを設定しない場合、前回の操作で指定した値が使用されます。前回の操作でこのパラメーターを設定しなかった場合、ROS スタックには制限が適用されません。Terraform スタックの場合、Terraform のデフォルト値である 10 が使用されます。

1

Tags

array<object>

任意

変更セットのタグです。

object

任意

変更セットのタグです。

Key

string

任意

スタックのタグキーです。

N の値の範囲は 1~20 です。

説明
  • Tags パラメーターはオプションです。Tags を指定する場合は、Tags.N.Key も指定する必要があります。

  • タグは、タグをサポートする各スタックリソースに伝播されます。詳細については、「タグの伝播」をご参照ください。

usage

Value

string

任意

スタックのタグ値です。

N の値の範囲は 1~20 です。

説明

タグは、タグをサポートする各スタックリソースに伝播されます。詳細については、「タグの伝播」をご参照ください。

test

ResourceGroupId

string

任意

リソースグループ ID です。このパラメーターを指定しない場合、スタックはデフォルトのリソースグループに追加されます。リソースグループの詳細については、「リソースグループとは」をご参照ください。

rg-acfmxazb4ph6aiy****

TaintResources

array

任意

ダーティとしてマークするリソースのリストです。

string

任意

  • ROS スタックの場合、値はリソース名 (my_vpc など) です。

  • Terraform スタックの場合、値はリソースタイプとリソース名 (alicloud_vpc.my_vpc など) です。

my_vpc

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

レスポンスフィールド

フィールド

説明

object

ChangeSetId

string

変更セットの ID です。

e85abe0c-6528-43fb-ae93-fdf8de22****

RequestId

string

リクエスト ID です。

B288A0BE-D927-4888-B0F7-B35EF84B6E6F

StackId

string

スタック ID です。

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

成功レスポンス

JSONJSON

{
  "ChangeSetId": "e85abe0c-6528-43fb-ae93-fdf8de22****",
  "RequestId": "B288A0BE-D927-4888-B0F7-B35EF84B6E6F",
  "StackId": "4a6c9851-3b0f-4f5f-b4ca-a14bf691****"
}

エラーコード

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

変更履歴

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