调用UpdateStackGroup接口更新资源栈组。
本文将提供一个示例,将杭州地域已有的自助管理权限模式的资源栈组MyStackGroup
的模板更新为{"ROSTemplateFormatVersion": "2015-09-01"}
。
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
请求参数
名称 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
Action | String | 是 | UpdateStackGroup |
要执行的操作。取值:UpdateStackGroup。 |
RegionId | String | 是 | cn-hangzhou |
资源栈组所属的地域ID。您可以调用DescribeRegions查看最新的阿里云地域列表。 |
StackGroupName | String | 是 | MyStackGroup |
资源栈组名称。名称在单个地域内唯一。 长度不超过255个字符,必须以数字或英文字母开头,可包含数字、英文字母、短划线(-)和下划线(_)。 |
Description | String | 否 | My Stack Group |
资源栈组描述。 长度为1~256个字符。 |
AccountIds | Array of String | 否 | ["151266687691****","141261387191****"] |
使用自助管理权限模式部署资源栈的目标账号ID列表。最多支持添加20个目标账号ID。 |
RegionIds | Array of String | 否 | ["cn-hangzhou","cn-beijing"] |
目标执行地域列表。最多支持添加20个地域。 |
TemplateBody | String | 否 | {"ROSTemplateFormatVersion": "2015-09-01"} |
模板主体的结构。长度为1~524,288个字节。如果长度较大,则建议通过HTTP POST+Body Param的方式,将参数放在请求体中进行传递,避免因URL过长而导致请求失败。 说明 您必须且仅能指定TemplateBody、TemplateURL或TemplateId其中一个参数。
|
TemplateURL | String | 否 | oss://ros-template/demo |
包含模板主体的文件的位置。URL必须指向位于HTTP Web服务器(HTTP或HTTPS)或阿里云OSS存储桶中的模板(1~524,288个字节)。OSS存储桶的URL,例如oss://ros/template/demo或oss://ros/template/demo?RegionId=cn-hangzhou。如未指定OSS地域,默认与接口参数RegionId相同。 说明 您必须且仅能指定TemplateBody、TemplateURL或TemplateId其中一个参数。
|
ClientToken | String | 否 | 123e4567-e89b-12d3-a456-42665544**** |
保证请求的幂等性。该值由客户端生成,并且必须是全局唯一的。 长度不超过64个字符,可包含英文字母、数字、短划线(-)和下划线(_)。 更多信息,请参见如何保证幂等性。 |
OperationDescription | String | 否 | Update stack instances in hangzhou |
更新资源栈组的操作描述。 |
OperationPreferences | Map | 否 | {"FailureToleranceCount": 1,"MaxConcurrentCount": 2} |
更新资源栈组的操作设置。 包含以下参数:
多个参数之间用半角逗号(,)分隔。 说明
|
AdministrationRoleName | String | 否 | AliyunROSStackGroupAdministrationRole |
创建具有自助管理权限的资源栈组时,需指定的供ROS扮演的RAM管理员角色名称。若不指定,则使用AliyunROSStackGroupAdministrationRole作为默认值。ROS以该角色身份进一步扮演执行角色(AliyunROSStackGroupExecutionRole)来操作资源栈组中资源栈实例所对应的资源栈。 长度为1~64个字符,可包含英文字母、数字和短划线(-)。 |
ExecutionRoleName | String | 否 | AliyunROSStackGroupExecutionRole |
创建具有自助管理权限的资源栈组时,需指定的供管理员角色(AliyunROSStackGroupAdministrationRole)扮演的RAM执行角色名称。若不指定,则使用AliyunROSStackGroupExecutionRole作为默认值。ROS以该角色身份来操作资源栈组中资源栈实例所对应的资源栈。 长度为1~64个字符,可包含英文字母、数字和短划线(-)。 |
TemplateId | String | 否 | 5ecd1e10-b0e9-4389-a565-e4c15efc**** |
模板ID。支持共享模板和私有模板。 说明 您必须且仅能指定TemplateBody、TemplateURL或TemplateId其中一个参数。
|
TemplateVersion | String | 否 | v1 |
模板版本。若不指定,默认取最新版本。 说明 TemplateVersion仅在指定TemplateId时生效。
|
PermissionModel | String | 否 | SELF_MANAGED |
授权模式。 取值:
|
AutoDeployment | Object | 否 |
自动部署设置信息。 说明 仅当PermissionModel为SERVICE_MANAGED时,需要指定该参数。
|
|
Enabled | Boolean | 是 | true |
启用或者禁用自动部署。 取值:
|
RetainStacksOnAccountRemoval | Boolean | 否 | true |
目标资源夹中删除成员账号时,是否保留成员账号中的资源栈。 取值:
说明 当Enabled为true时,RetainStacksOnAccountRemoval必选。
|
DeploymentTargets | Object | 否 |
使用服务管理权限模式更新资源栈的部署目标。 |
|
RdFolderIds | Array of String | 否 | ["fd-4PvlVLOL8v"] |
资源目录的资源夹ID列表。最多支持添加5个资源夹ID。 您需要至少指定RdFolderIds和AccountIds其中一个参数,具体如下:
说明 您可以在资源管理控制台的概览页面查看资源夹ID。具体操作,请参见查看资源夹基本信息。
|
AccountIds | Array of String | 否 | ["151266687691****","141261387191****"] |
资源目录中的成员账号ID列表。最多支持添加20个成员账号ID。 说明 您可以在资源管理控制台的概览页面查看成员账号ID。具体操作,请参见查看成员详情。
|
Parameters.N.ParameterKey | String | 是 | Amount |
参数的名称。若未指定参数的名称和值,则ROS将使用模板中指定的默认值。 N最大值为200。 说明 Parameters为可选参数。若指定了Parameters,则Parameters.N.ParameterKey为必选参数。
|
Parameters.N.ParameterValue | String | 是 | 1 |
参数的值。 N最大值为200。 说明 Parameters为可选参数。若指定了Parameters,则Parameters.N.ParameterValue为必选参数。
|
关于公共请求参数的详情,请参见公共参数。
返回数据
名称 | 类型 | 示例值 | 描述 |
---|---|---|---|
RequestId | String | 14A07460-EBE7-47CA-9757-12CC4761D47A |
请求ID。 |
OperationId | String | 6da106ca-1784-4a6f-a7e1-e723863d**** |
操作ID。 |
示例
请求示例
http(s)://ros.aliyuncs.com/?Action=UpdateStackGroup
&TemplateBody={"ROSTemplateFormatVersion": "2015-09-01"}
&RegionId=cn-hangzhou
&StackGroupName=MyStackGroup
&<公共请求参数>
正常返回示例
XML
格式
HTTP/1.1 200 OK
Content-Type:application/xml
<UpdateStackGroupResponse>
<RequestId>14A07460-EBE7-47CA-9757-12CC4761D47A</RequestId>
<OperationId>6da106ca-1784-4a6f-a7e1-e723863d****</OperationId>
</UpdateStackGroupResponse>
JSON
格式
HTTP/1.1 200 OK
Content-Type:application/json
{
"RequestId" : "14A07460-EBE7-47CA-9757-12CC4761D47A",
"OperationId" : "6da106ca-1784-4a6f-a7e1-e723863d****"
}
错误码
访问错误中心查看更多错误码。
错误代码 |
错误信息 |
HTTP状态码 |
描述 |
---|---|---|---|
CircularDependency |
Circular Dependency Found: {reason}. |
400 |
模板包含循环引用。reason为具体原因。 |
InvalidSchema |
{reason}. |
400 |
模板格式不正确。reason为具体原因。 |
InvalidTemplateAttribute |
The Referenced Attribute ({resource} {name}) is incorrect. |
400 |
模板包含不正确的资源属性(输出)引用。resource为资源名,name为属性名。 |
InvalidTemplatePropertyType |
The specified value type of ({resource} {section}) is incorrect. |
400 |
模板资源定义的字段类型不正确。resource为资源名,section为字段名。 |
InvalidTemplateReference |
The specified reference "{name}" (in {referencer}) is incorrect. |
400 |
模板包含不正确的引用。name为引用名,referencer为引用者。 |
InvalidTemplateSection |
The template section is invalid: {section}. |
400 |
模板包含无效的字段。section为字段名。 |
InvalidTemplateVersion |
The template version is invalid: {reason}. |
400 |
模板版本不正确。reason为具体原因。 |
UnknownUserParameter |
The Parameter ({name}) was not defined in template. |
400 |
传递的参数在模板中未定义。name为参数名。 |
UserParameterMissing |
The Parameter {name} was not provided. |
400 |
参数在模板中已定义,但未传递值。name为参数名。 |
StackGroupOperationInProgress |
Another Operation on StackGroup ({name})s is in progress. |
409 |
资源栈组存在进行中的操作。name为资源栈组名称。 |
TemplateNotFound |
The Tempalte ({ ID }) could not be found. |
404 |
模板不存在。ID为模板ID。 |
TemplateNotFound |
The Template { ID } with version { version } could not be found. |
404 |
模板或指定版本不存在。ID为模板ID,version为模板版本。 |