CreateChangeSet_资源编排_API文档

插件下载了解更多
VS Code 插件
安装插件之前,确保已安装 VS Code安装插件之前,确保已安装 VS Code
Alibaba Cloud Developer Toolkit is a collection of extensions that can help access Alibaba Cloud services in Visual Studio Code.
JetBrains 插件
安装插件之前,确保已安装 JetBrains IDE安装插件之前,确保已安装 JetBrains IDE
The Alibaba Cloud Developer Toolkit for JetBrains makes it easier to access Alibaba Cloud services.

接口说明

使用场景

使用更改集创建资源栈

如果您想管理大量的云资源,并在资源栈创建成功之前预览资源的创建效果,您可以选择使用更改集创建资源栈。此时您需要将ChangeSetType参数设置为 CREATE 并完成相关参数配置。关于更改集的更多信息,请参见更改集

使用更改集更新资源栈

如果您想在更新资源之前预览该操作对资源栈的影响,您可以选择为现有资源栈创建更改集。此时您需要将 ChangeSetType 参数设置为 UPDATE 并完成相关参数配置。 关于更改集的更多信息,请参见更改集

使用现有资源创建资源栈

如果您需要将现有的云资源添加到一个新的资源栈中进行统一管理,您可以选择使用更改集创建资源栈并完成资源导入。此时您需要将 ChangeSetType 参数设置为 IMPORT 并完成相关参数配置。关于资源导入的更多信息,请参见概览

将现有资源导入资源栈

如果您想要将现有资源导入到一个已有资源栈中进行统一管理,您可以选择使用更改集对已有资源栈进行更新。此时您需要将 ChangeSetType 参数设置为 IMPORT 并完成相关参数配置。关于资源导入的更多信息,请参见概览

使用限制

  • 只有部分状态下的资源栈支持通过更改集更新。更多信息,请参见通过更改集更新资源栈
  • 一个资源栈最多同时存在 20 个更改集。
  • 更改集只显示资源栈变化,不显示资源栈是否成功更新。
  • 更改集不检查是否将超出账号限制、是否将更新不支持更新的资源、是否权限不足而无法修改资源,所有这些都将导致资源栈更新失败。如果更新失败,ROS 将尝试将您的资源回滚到原始状态。

本文以使用更改集更新资源栈为例,在杭州地域cn-hangzhou创建一个名为MyChangeSet的更改集,将 ID 为4a6c9851-3b0f-4f5f-b4ca-a14bf691****的资源栈的模板更新为{"ROSTemplateFormatVersion":"2015-09-01"}

流控信息

请求速率为100/60(s)。更多流控信息,请前往配额中心查看

授权信息

如下是此API对应的授权信息,用于RAM权限策略语句的Action元素中,为RAM用户或RAM角色授予调用此API的权限。请通过 RAM 访问控制设置,使用方法可参考访问控制帮助文档

具体说明如下:展开详情

操作访问级别资源类型条件关键字关联操作
ros:CreateChangeSet
Create
Stack
acs:ros:{#regionId}:{#accountId}:stack/{#StackId}

请求参数

字段名称字段详情
StackIdstring

创建更改集的资源栈的 ID。ROS 通过将此资源栈的信息与您提交的信息(例如:修改后的模板或不同的参数输入值)进行比较来生成更改集。 展开详情

示例值:4a6c9851-3b0f-4f5f-b4ca-a14bf691****参考取值来源:
    UpdateStack
    ListStacks
    CreateStack
    GetStackInstance
StackPolicyURLstring

包含资源栈策略的文件的位置。URL 必须指向位于 Web 服务器(HTTP 或 HTTPS)或阿里云 OSS 存储空间(例如:oss://ros/stack-policy/demo、oss://ros/stack-policy/demo?RegionId=cn-hangzhou)的策略,策略文件长为 16384 个字节。展开详情

示例值:oss://ros/stack-policy/demo
StackPolicyBodystring

资源栈策略的结构,长度为 1~16,384 个字节。展开详情

示例值:{"Statement":[{"Effect":"Allow","Action":"Update:*","Principal":"*","Resource":"*"}]}参考取值来源:
    GetStackPolicy
    PreviewStack
StackNamestring

创建更改集的资源栈的名称。 展开详情

示例值:MyStack参考取值来源:
    GetStack
    CreateStack
    PreviewStack
    ListStacks
UsePreviousParametersboolean

对于未传递的参数,是否使用上次传递的值。取值:展开详情

示例值:true
ChangeSetTypestring

更改集的类型。取值:展开详情

示例值:UPDATE参考取值来源:
    GetChangeSet
    ListChangeSets
Descriptionstring

更改集的描述。最大长度为 1024 个字节。

示例值:It is a demo.
RegionIdstring

更改集所属的地域 ID。展开详情

示例值:cn-hangzhou参考取值来源:
    DescribeRegions
ClientTokenstring

保证请求的幂等性。该参数值由客户端生成,并且必须全局唯一。 展开详情

示例值:123e4567-e89b-12d3-a456-42665544****
TemplateURLstring

包含模板主体的文件的位置。URL 必须指向位于 Web 服务器(HTTP 或 HTTPS)或阿里云 OSS 存储空间(例如:oss://ros/template/demo、oss://ros/template/demo?RegionId=cn-hangzhou)中的模板,模板最大值为 524,288 个字节。 展开详情

示例值:oss://ros/template/demo
StackPolicyDuringUpdateURLstring

更新资源栈策略的文件的位置。URL 必须指向位于 Web 服务器(HTTP 或 HTTPS)或阿里云 OSS 存储空间(例如:oss://ros/stack-policy/demo、oss://ros/stack-policy/demo?RegionId=cn-hangzhou)中的策略,策略文件最长为 16,384 个字节。 展开详情

示例值:oss://ros/stack-policy/demo
TemplateBodystring

模板主体的结构。长度为 1~524,288 个字节。如果长度较大,则建议通过 HTTP POST+Body Param 的方式,将参数放在请求体中进行传递,避免因 URL 过长而导致请求失败。 展开详情

示例值:{"ROSTemplateFormatVersion":"2015-09-01"}参考取值来源:
    GetTemplate
    UpdateStackTemplateByResources
    GenerateTemplateByScratch
TimeoutInMinutesinteger<int64>

资源栈状态变为 CREATE_FAILED 或 UPDATE_FAILED 之前可以经过的时间量。 展开详情

注意 该字段类型为 Long,在序列化/反序列化的过程中可能导致精度丢失,请注意数值不得大于 9007199254740991。
示例值:12
DisableRollbackboolean

当创建资源栈失败时,是否禁用回滚策略。 展开详情

示例值:false
ChangeSetNamestring

更改集的名称。 展开详情

示例值:MyChangeSet参考取值来源:
    GetChangeSet
    ListChangeSets
StackPolicyDuringUpdateBodystring

临时覆盖资源栈策略的结构。长度为 1~16,384 个字节。 展开详情

示例值:{"Statement":[{"Effect":"Allow","Action":"Update:*","Principal":"*","Resource":"*"}]}
RamRoleNamestring

RAM 角色名称。ROS 会扮演该角色创建资源栈,使用角色的凭证代表用户进行接口调用。 展开详情

示例值:test-role
ReplacementOptionstring

如果资源的属性发生了变化,且变化的属性不支持修改更新(资源物理 ID 不变),是否使用替换更新(删除资源,重新创建,资源物理 ID 会发生变化)。取值:展开详情

示例值:Disabled
TemplateIdstring

模板 ID。支持共享模板和私有模板。展开详情

示例值:5ecd1e10-b0e9-4389-a565-e4c15efc****参考取值来源:
    GetTemplate
    UpdateTemplate
    ListTemplates
    CreateTemplate
TemplateVersionstring

模板版本。 展开详情

示例值:v1参考取值来源:
    ListTemplateVersions
    GetTemplate
    UpdateTemplate
Parametersarray<object>

模板中已定义的参数。

子级条数 <= 200
NotificationURLsarray<string>

接收资源栈事件的回调地址列表。

示例值:http://my-site.com/ros-notify子级条数 <= 5
ResourcesToImportarray<object>

待导入资源列表。

子级条数 <= 300
TemplateScratchIdstring

资源场景 ID,即资源纳管场景 ID。展开详情

示例值:4a6c9851-3b0f-4f5f-b4ca-a14bf691****参考取值来源:
    UpdateTemplateScratch
    CreateTemplateScratch
    ListTemplateScratches
Parallelisminteger<int64>

资源最大并发数。默认为空,用户可以输入大于等于零的整数。设置资源最大并发数后,将与资源栈进行关联,影响资源栈的后续操作。展开详情

注意 该字段类型为 Long,在序列化/反序列化的过程中可能导致精度丢失,请注意数值不得大于 9007199254740991。
示例值:1
Tagsarray<object>

更改集的标签。

子级条数 <= 20
ResourceGroupIdstring

资源组 ID。如果不指定该参数,更改集对应的资源栈将加入默认资源组。 展开详情

示例值:rg-acfmxazb4ph6aiy****参考取值来源:
    GetStackGroup
    ListStackGroups

请求说明

关于公共请求参数的详情,请参见公共参数

返回参数

字段名称字段详情
ChangeSetIdstring

更改集 ID。

示例值:e85abe0c-6528-43fb-ae93-fdf8de22****
RequestIdstring

请求 ID。

示例值:B288A0BE-D927-4888-B0F7-B35EF84B6E6F
StackIdstring

资源栈 ID。

示例值:4a6c9851-3b0f-4f5f-b4ca-a14bf691****

返回示例

变更历史

变更时间变更内容概要操作
2025-03-28
新增请求参数Tags
新增请求参数ResourceGroupId
2024-01-11
变更请求参数TemplateBody
2023-08-15
变更请求参数ResourcesToImport
  • 1
  • 2
  • 10 条/页

相关示例

调用CreateChangeSet接口创建更改集。
2022-09-15