使用資源編排模板創(chuàng)建資源棧,完成一組資源的創(chuàng)建。
接口說(shuō)明
資源棧是針對(duì) ROS 資源的管理單元,您可通過(guò)創(chuàng)建資源棧來(lái)創(chuàng)建一組資源。關(guān)于資源棧的更多信息,請(qǐng)參見(jiàn)概覽。
使用限制:
- 每個(gè)阿里云賬號(hào)最多創(chuàng)建 200 個(gè)資源棧。
- 每個(gè)資源棧中最多創(chuàng)建 200 個(gè)資源。
本文將提供一個(gè)示例,在杭州地域創(chuàng)建一個(gè)名為MyStack
的資源棧,并將資源棧的模板TemplateBody
設(shè)置為{"ROSTemplateFormatVersion":"2015-09-01"}
。
調(diào)試
您可以在OpenAPI Explorer中直接運(yùn)行該接口,免去您計(jì)算簽名的困擾。運(yùn)行成功后,OpenAPI Explorer可以自動(dòng)生成SDK代碼示例。
授權(quán)信息
下表是API對(duì)應(yīng)的授權(quán)信息,可以在RAM權(quán)限策略語(yǔ)句的Action
元素中使用,用來(lái)給RAM用戶或RAM角色授予調(diào)用此API的權(quán)限。具體說(shuō)明如下:
- 操作:是指具體的權(quán)限點(diǎn)。
- 訪問(wèn)級(jí)別:是指每個(gè)操作的訪問(wèn)級(jí)別,取值為寫(xiě)入(Write)、讀取(Read)或列出(List)。
- 資源類型:是指操作中支持授權(quán)的資源類型。具體說(shuō)明如下:
- 對(duì)于必選的資源類型,用背景高亮的方式表示。
- 對(duì)于不支持資源級(jí)授權(quán)的操作,用
全部資源
表示。
- 條件關(guān)鍵字:是指云產(chǎn)品自身定義的條件關(guān)鍵字。
- 關(guān)聯(lián)操作:是指成功執(zhí)行操作所需要的其他權(quán)限。操作者必須同時(shí)具備關(guān)聯(lián)操作的權(quán)限,操作才能成功。
操作 | 訪問(wèn)級(jí)別 | 資源類型 | 條件關(guān)鍵字 | 關(guān)聯(lián)操作 |
---|---|---|---|---|
ros:CreateStack | create | *Stack acs:ros:{#regionId}:{#accountId}:stack/* |
| 無(wú) |
請(qǐng)求參數(shù)
名稱 | 類型 | 必填 | 描述 | 示例值 |
---|---|---|---|---|
DisableRollback | boolean | 否 | 當(dāng)創(chuàng)建資源棧失敗時(shí),是否禁用回滾。 取值:
| false |
TemplateBody | string | 否 | 模板主體的結(jié)構(gòu)。長(zhǎng)度為 1~524,288 個(gè)字節(jié)。如果長(zhǎng)度較長(zhǎng),則建議通過(guò) HTTP POST+Body Param 的方式,將參數(shù)放在請(qǐng)求體中進(jìn)行傳遞,避免因 URL 過(guò)長(zhǎng)而導(dǎo)致請(qǐng)求失敗。 說(shuō)明
您必須且僅能指定 TemplateBody、TemplateURL、TemplateId 或 TemplateScratchId 其中一個(gè)參數(shù)。
| {"ROSTemplateFormatVersion":"2015-09-01"} |
StackPolicyURL | string | 否 | 包含資源棧策略的文件的位置。URL 必須指向位于 Web 服務(wù)器(HTTP 或 HTTPS)或阿里云 OSS 存儲(chǔ)空間(例如:oss://ros/stack-policy/demo、oss://ros/stack-policy/demo?RegionId=cn-hangzhou)中的策略,策略文件最大長(zhǎng)度為 16,384 個(gè)字節(jié)。如未指定 OSS 地域,默認(rèn)與接口參數(shù) RegionId 相同。 說(shuō)明
您僅能指定 StackPolicyBody 或 StackPolicyURL 其中一個(gè)參數(shù)。
URL 最大長(zhǎng)度為 1350 個(gè)字節(jié)。 | oss://ros-stack-policy/demo |
TimeoutInMinutes | long | 否 | 創(chuàng)建資源棧的超時(shí)時(shí)間。
| 10 |
StackPolicyBody | string | 否 | 包含資源棧策略主體的結(jié)構(gòu),長(zhǎng)度為 1~16,384 個(gè)字節(jié)。 說(shuō)明
您僅能指定 StackPolicyBody 或 StackPolicyURL 其中一個(gè)參數(shù)。
| {"Statement": [{"Action": "Update:*", "Resource": "*", "Effect": "Allow", "Principal": "*"}]} |
StackName | string | 是 | 資源棧名稱。 | MyStack |
RegionId | string | 是 | 資源棧所屬的地域 ID。您可以調(diào)用 DescribeRegions 查看最新的阿里云地域列表。 | cn-hangzhou |
ClientToken | string | 否 | 保證請(qǐng)求的冪等性。該值由客戶端生成,并且必須是全局唯一的。長(zhǎng)度不超過(guò) 64 個(gè)字符,可包含英文字母、數(shù)字、短劃線(-)和下劃線(_)。 更多信息,請(qǐng)參見(jiàn)如何保證冪等性。 | 123e4567-e89b-12d3-a456-42665544**** |
TemplateURL | string | 否 | 包含模板主體的文件的位置。URL 必須指向位于 Web 服務(wù)器(HTTP 或 HTTPS)或阿里云 OSS 存儲(chǔ)空間(例如:oss://ros/stack-policy/demo、oss://ros/stack-policy/demo?RegionId=cn-hangzhou)中的模板,模板的最大長(zhǎng)度為 524,288 個(gè)字節(jié)。如未指定 OSS 地域,默認(rèn)與 RegionId 取值相同。 說(shuō)明
您必須且僅能指定 TemplateBody、TemplateURL、TemplateId 或 TemplateScratchId 其中一個(gè)參數(shù)。
| oss://ros-template/demo |
RamRoleName | string | 否 | RAM 角色名稱。ROS 會(huì)扮演該角色創(chuàng)建資源棧,使用角色的憑證代表用戶進(jìn)行接口調(diào)用。 如果用戶未指定該值,ROS 將使用以前與資源棧關(guān)聯(lián)的角色。如果沒(méi)有可用角色,ROS 將使用從您的用戶憑證中生成的臨時(shí)憑證。 RAM 角色名稱最大長(zhǎng)度為 64 個(gè)字符。 | test-role |
DeletionProtection | string | 否 | 是否開(kāi)啟資源棧刪除保護(hù)。取值:
說(shuō)明
嵌套資源棧刪除保護(hù)與根資源棧一致。
| Enabled |
CreateOption | string | 否 | 創(chuàng)建選項(xiàng),用于控制創(chuàng)建資源棧的行為。取值:
說(shuō)明
僅能指定 CreateOption 和 CreateOptions 其中一個(gè)參數(shù)。
| KeepStackOnCreationComplete |
CreateOptions | array | 否 | 創(chuàng)建選項(xiàng)列表。 | |
string | 否 | 創(chuàng)建選項(xiàng),用于控制創(chuàng)建資源棧的行為。取值:
說(shuō)明
| KeepStackOnCreationComplete | |
TemplateId | string | 否 | 模板 ID。支持共享模板和私有模板。 說(shuō)明
您必須且僅能指定 TemplateBody、TemplateURL、TemplateId 或 TemplateScratchId 其中一個(gè)參數(shù)。
| 5ecd1e10-b0e9-4389-a565-e4c15efc**** |
TemplateVersion | string | 否 | 模板版本。僅在指定 TemplateId 時(shí)生效。 | v1 |
Parameters | array<object> | 否 | 模板中已定義的參數(shù)。 | |
object | 否 | |||
ParameterKey | string | 是 | 模板中已定義的參數(shù)的名稱。如果未指定參數(shù)的名稱和值,則 ROS 將使用模板中指定的默認(rèn)值。 N 最大值為 200。 說(shuō)明
Parameters 為可選參數(shù)。如果需要指定 Parameters,則 Parameters.N.ParameterKey 和 Parameters.N.ParameterValue 必須同時(shí)指定。
| InstanceId |
ParameterValue | string | 是 | 模板中已定義的參數(shù)的取值。 N 最大值為 200。 說(shuō)明
Parameters 為可選參數(shù)。如果需要指定 Parameters,則 Parameters.N.ParameterKey 和 Parameters.N.ParameterValue 必須同時(shí)指定。
| i-xxxxxx |
NotificationURLs | array | 否 | 接收資源棧事件的回調(diào)地址。取值:
說(shuō)明
當(dāng)前支持華東 1(杭州)、華東 2(上海)、華北 2(北京)、中國(guó)(香港)、華北 3(張家口)五個(gè)地域。
N 最大值為 5。資源棧的狀態(tài)發(fā)生變化時(shí),會(huì)進(jìn)行通知。當(dāng)資源棧啟用回滾時(shí),CREATE_FAILED(創(chuàng)建失敗)和 UPDATE_FAILED(更新失敗)不會(huì)通知,而 CREATE_ROLLBACK(創(chuàng)建失敗回滾)和 ROLLBACK(更新失敗回滾)會(huì)進(jìn)行通知。IN_PROGRESS 狀態(tài)不會(huì)通知。
| |
string | 否 | 接收資源棧事件的回調(diào)地址。取值:
說(shuō)明
當(dāng)前支持華東 1(杭州)、華東 2(上海)、華北 2(北京)、中國(guó)(香港)、華北 3(張家口)五個(gè)地域。
N 最大值為 5。資源棧的狀態(tài)發(fā)生變化時(shí),會(huì)進(jìn)行通知。當(dāng)資源棧啟用回滾時(shí),CREATE_FAILED(創(chuàng)建失敗)和 UPDATE_FAILED(更新失敗)不會(huì)通知,而 CREATE_ROLLBACK(創(chuàng)建失敗回滾)和 ROLLBACK(更新失敗回滾)會(huì)進(jìn)行通知。IN_PROGRESS 狀態(tài)不會(huì)通知。
| http://example.com/ros-event | |
Tags | array<object> | 否 | 資源棧的標(biāo)簽。 | |
object | 否 | |||
Key | string | 是 | 資源棧的標(biāo)簽鍵。 N 的取值范圍為 1~20。 說(shuō)明
| usage |
Value | string | 否 | 資源棧的標(biāo)簽值。 N 的取值范圍為 1~20。 說(shuō)明
此標(biāo)簽會(huì)傳遞到資源棧中每個(gè)支持標(biāo)簽的資源中。更多信息,請(qǐng)參見(jiàn)標(biāo)簽傳遞。
| test |
ResourceGroupId | string | 否 | 資源組 ID。如果不指定該參數(shù),資源棧將加入默認(rèn)資源組。 關(guān)于資源組的更多信息,請(qǐng)參見(jiàn)什么是資源組。 | rg-acfmxazb4ph6aiy**** |
Parallelism | long | 否 | 資源最大并發(fā)數(shù)。 默認(rèn)為空,用戶可以輸入大于等于零的整數(shù)。 說(shuō)明
| 1 |
TemplateScratchId | string | 否 | 資源場(chǎng)景 ID。 關(guān)于如何獲取資源場(chǎng)景 ID,請(qǐng)參見(jiàn) ListTemplateScratches 。 說(shuō)明
您必須且僅能指定 TemplateBody、TemplateURL、TemplateId 或 TemplateScratchId 其中一個(gè)參數(shù)。
| ts-aa9c62feab844a6b**** |
TemplateScratchRegionId | string | 否 | 資源場(chǎng)景所屬的地域 ID,默認(rèn)與 RegionId 取值相同。 您可以調(diào)用 DescribeRegions 查看最新的阿里云地域列表。 | cn-hangzhou |
關(guān)于公共請(qǐng)求參數(shù)的詳情,請(qǐng)參見(jiàn)公共參數(shù)。
返回參數(shù)
示例
正常返回示例
JSON
格式
{
"RequestId": "B288A0BE-D927-4888-B0F7-B35EF84B6E6F",
"StackId": "4a6c9851-3b0f-4f5f-b4ca-a14bf691****"
}
錯(cuò)誤碼
訪問(wèn)錯(cuò)誤中心查看更多錯(cuò)誤碼。
變更歷史
變更時(shí)間 | 變更內(nèi)容概要 | 操作 |
---|---|---|
2024-01-11 | API 內(nèi)部配置變更,不影響調(diào)用 | 查看變更詳情 |
2023-04-13 | OpenAPI 入?yún)l(fā)生變更 | 查看變更詳情 |
錯(cuò)誤代碼 | 錯(cuò)誤信息 | HTTPS 狀態(tài)碼 | 描述 |
---|---|---|---|
CircularDependency | Circular Dependency Found: {reason}. | 400 | 模板包含循環(huán)引用,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 | 模板包含無(wú)效的字段,section 為字段名。 |
InvalidTemplateVersion | The template version is invalid: {reason}. | 400 | 模板版本不正確,reason 為具體原因。 |
StackValidationFailed | {reason}. | 400 | 資源棧校驗(yàn)失敗,reason 為具體原因。 |
UnknownUserParameter | The Parameter ({name}) was not defined in template. | 400 | 傳遞的參數(shù)在模板中未定義,name 為參數(shù)名。 |
UserParameterMissing | The Parameter {name} was not provided. | 400 | 參數(shù)在模板中已定義,但未傳遞值,name 為參數(shù)名。 |
ActionInProgress | Stack {name} already has an action ({action}) in progress. | 409 | 資源棧在變更中,name 為資源棧名稱或 ID,action 為變更操作。 |
StackExists | The Stack ({name}) already exists. | 409 | 同名資源棧已存在,name 為資源棧名稱。 |
TemplateNotFound | The Template ({ ID }) could not be found. | 404 | 模板不存在。ID 為模板 ID。 |
TemplateNotFound | The Template { ID } with version { version } could not be found. | 404 | 模板或指定版本不存在。ID 為模板 ID,version 為模板版本。 |