调用GetStack接口查询资源栈信息。
本文将提供一个示例,查询杭州地域ID为c754d2a4-28f1-46df-b557-9586173a****的资源栈信息。
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
请求参数
| 名称 | 类型 | 是否必选 | 示例值 | 描述 |
|---|---|---|---|---|
| Action | String | 是 | GetStack |
要执行的操作。取值:GetStack。 |
| StackId | String | 是 | c754d2a4-28f1-46df-b557-9586173a**** |
资源栈ID。 |
| RegionId | String | 是 | cn-hangzhou |
资源栈所属的地域ID。您可以调用DescribeRegions查看最新的阿里云地域列表。 |
| ClientToken | String | 否 | 123e4567-e89b-12d3-a456-42665544**** |
保证请求的幂等性。 该值由客户端生成,并且必须全局唯一。 长度不超过64个字符。 更多信息,请参见如何保证幂等性。 |
| OutputOption | String | 否 | Disabled |
是否返回Outputs参数(资源栈输出列表)。取值:
|
| ShowResourceProgress | String | 否 | Disabled |
是否返回ResourceProgress参数(资源处理进度)。取值:
|
| LogOption | String | 否 | Stack |
日志选项。取值:
|
关于公共请求参数的详情,请参见公共参数。
返回数据
| 名称 | 类型 | 示例值 | 描述 |
|---|---|---|---|
| Status | String | CREATE_COMPLETE |
资源栈状态。取值:
|
| Description | String | Create a VPC. |
资源栈的描述信息。 |
| Parameters | Array of Parameter |
资源栈参数。 |
|
| ParameterKey | String | ALIYUN::Region |
参数名称。 |
| ParameterValue | String | cn-hangzhou |
参数值。 |
| RequestId | String | B288A0BE-D927-4888-B0F7-B35EF84B6E6F |
请求ID。 |
| StatusReason | String | Stack CREATE completed successfully |
资源栈状态说明。 |
| ParentStackId | String | 4a6c9851-3b0f-4f5f-b4ca-a14bf692**** |
父资源栈ID。 |
| CreateTime | String | 2020-09-16T08:21:40 |
资源栈创建时间。按照ISO8601标准表示,需使用UTC时间,格式:YYYY-MM-DDThh:mm:ss。 |
| DeletionProtection | String | Disabled |
是否开启资源栈删除保护。取值:
说明 嵌套资源栈的删除保护机制与根资源栈一致。
|
| RootStackId | String | 4a6c9851-3b0f-4f5f-b4ca-a14bf692**** |
根资源栈ID。当资源栈为嵌套资源栈时,会返回该参数。 |
| TemplateDescription | String | Create a VPC. |
模板描述。 |
| StackType | String | ROS |
资源栈类型。取值:
|
| RamRoleName | String | test-role |
RAM角色名称。ROS会扮演该角色创建资源栈,使用角色的凭证代表用户进行接口调用。 ROS始终将此角色用于资源栈上将进行的操作。只要用户有权在资源栈上进行操作,即使用户无权使用角色,ROS也会使用此角色,确保角色授予最少的权限。 如果用户未指定该值,ROS将使用以前与资源栈关联的角色。如果没有可用角色,ROS将使用从您的用户凭证中生成的临时凭证。 RAM角色名称最大长度为64个字节。 |
| UpdateTime | String | 2020-09-17T08:21:40 |
资源栈更新时间。按照ISO8601标准表示,需使用UTC时间,格式:YYYY-MM-DDThh:mm:ss。 |
| Outputs | Array of Object | [{"Description": "VPC ID","OutputKey": "VpcId","OutputValue": "vpc-bp1m6fww66xbntjyc****"}] |
资源栈输出列表。 说明 当OutputOption取值为Enabled时返回该参数。
|
| DriftDetectionTime | String | 2020-09-16T09:21:40 |
资源栈最近一次成功的偏差检测的时间。 |
| RegionId | String | cn-hangzhou |
要创建的资源栈所属的地域ID。您可以调用DescribeRegions查看最新的阿里云地域列表。 |
| StackDriftStatus | String | IN_SYNC |
资源栈最近一次成功的偏差检测中的资源栈的状态。取值:
|
| NotificationURLs | Array of String | ["http://127.XX.XX.1:8080/x", "http://127.0.XX.XX:8080/y"] |
接收资源栈事件的URL回调地址。 |
| DisableRollback | Boolean | false |
当创建资源栈失败时,是否禁用回滚策略。取值:
|
| StackName | String | MyStack |
资源栈名称。 长度不超过255个字符,必须以数字或英文字母开头,可包含数字、英文字母、短划线(-)和下划线(_)。 |
| Tags | Array of Tag |
资源栈的标签。 |
|
| Key | String | usage |
资源栈的标签键。 |
| Value | String | test |
资源栈的标签值。 |
| TimeoutInMinutes | Integer | 10 |
创建资源栈的超时时间。单位:分钟。 |
| StackId | String | c754d2a4-28f1-46df-b557-9586173a**** |
资源栈ID。 |
| ResourceGroupId | String | rg-acfmxazb4ph6aiy**** |
资源组ID。 |
| ResourceProgress | Object |
资源处理进度。 |
|
| TotalResourceCount | Integer | 2 |
总资源数。 |
| SuccessResourceCount | Integer | 1 |
处理成功的资源数。 |
| FailedResourceCount | Integer | 0 |
处理失败的资源数。 |
| InProgressResourceCount | Integer | 1 |
处理中的资源数。 |
| PendingResourceCount | Integer | 0 |
待处理的资源数。 |
| InProgressResourceDetails | Array of InProgressResourceDetail |
处理中的资源进度详情列表。 |
|
| ResourceName | String | WaitCondition |
资源名称。 |
| ResourceType | String | ALIYUN::ROS::WaitCondition |
资源类型。 |
| ProgressValue | Float | 5 |
资源进度当前值。 |
| ProgressTargetValue | Float | 10 |
资源进度目标值。 |
| Log | Object |
资源栈相关输出日志。 |
|
| TerraformLogs | Array of TerraformLog |
Terraform输出日志。仅Terraform类型资源栈返回该参数。 当LogOption未指定,或者LogOption取值为Stack或All时返回该参数。 说明 运行中的资源栈不返回该参数。该参数表示资源栈最近一次操作(创建、继续创建、更新、删除)的日志。
|
|
| Command | String | apply |
执行的Terraform命令名称。取值:
关于命令含义的更多信息,请参见Command。 |
| Stream | String | stdout |
输出流。取值:
|
| Content | String | Apply complete! Resources: 42 added, 0 changed, 0 destroyed. |
当前命令在当前输出流中输出的内容。 |
| ResourceLogs | Array of ResourceLog |
资源输出日志。当LogOption取值为Resource或All时返回该参数。 说明 仅部分资源类型的资源会返回资源日志,例如:
ALIYUN::ROS::ResourceCleaner。
|
|
| ResourceName | String | MyResourceCleaner |
模板中定义的资源名称。 |
| Logs | Array of Log |
资源关联的所有日志。 |
|
| Keys | Array of String | ResourceDetails |
关键字。 |
| Content | String | [] |
资源关联的某条日志的内容。 |
| TemplateId | String | a52f81be-496f-4e1c-a286-8852ab54**** |
模板ID。仅在资源栈当前所使用的模板来自于用户自定义模板或共享模板时返回该参数。 如果是共享模板,返回结果与模板的TemplateARN相同。 |
| TemplateVersion | String | v1 |
模板版本。仅在资源栈当前所使用的模板来自于用户自定义模板或共享模板时返回该参数。 如果为共享模板,仅当共享时参数VersionOption为AllVersions时,返回该参数。 取值范围:v1~v100。 |
| TemplateScratchId | String | ts-7f7a704cf71c49a6**** |
资源场景ID。仅在资源栈当前所使用的模板来自于资源场景时返回该参数。 |
| TemplateURL | String | oss://ros/template/demo |
包含模板主体的文件的位置。仅在资源栈当前所使用的模板来自于URL时返回该参数,包括Web服务器(HTTP或HTTPS)或阿里云OSS存储空间等。 |
| Interface | String | {} |
界面描述信息。 |
| ServiceManaged | Boolean | false |
是否为托管资源栈。取值:
|
| ServiceName | String | ACVS |
托管资源栈所属的服务名称。 |
| OperationInfo | Object |
资源栈操作发生错误时的补充信息。 说明 该返回属性仅在特定情况下返回,且至少返回一个子属性。例如:调用其他云服务API报错。
|
|
| Code | String | DependencyViolation |
错误码。 |
| Message | String | There is still instance(s) in the specified security group. |
错误内容。 |
| RequestId | String | 071D6166-3F6B-5C7B-A1F0-0113FBB643A8 |
调用其他云服务API的请求ID。 |
| Action | String | DeleteSecurityGroup |
调用其他云服务API的名称。 |
| ResourceType | String | ALIYUN::ECS::SecurityGroup |
发生操作错误的资源类型。 |
| LogicalResourceId | String | EcsSecurityGroup |
发生操作错误的资源逻辑ID。 |
示例
请求示例
http(s)://ros.aliyuncs.com/?Action=GetStack
&StackId=c754d2a4-28f1-46df-b557-9586173a****
&RegionId=cn-hangzhou
&<公共请求参数>
正常返回示例
XML格式
HTTP/1.1 200 OK
Content-Type:application/xml
<GetStackResponse>
<Status>CREATE_COMPLETE</Status>
<Description>Create a VPC.</Description>
<Parameters>
<ParameterKey>ALIYUN::Region</ParameterKey>
<ParameterValue>cn-hangzhou</ParameterValue>
</Parameters>
<RequestId>B288A0BE-D927-4888-B0F7-B35EF84B6E6F</RequestId>
<StatusReason>Stack CREATE completed successfully</StatusReason>
<ParentStackId>4a6c9851-3b0f-4f5f-b4ca-a14bf692****</ParentStackId>
<CreateTime>2020-09-16T08:21:40</CreateTime>
<DeletionProtection>Disabled</DeletionProtection>
<RootStackId>4a6c9851-3b0f-4f5f-b4ca-a14bf692****</RootStackId>
<TemplateDescription>Create a VPC.</TemplateDescription>
<StackType>ROS</StackType>
<RamRoleName>test-role</RamRoleName>
<UpdateTime>2020-09-17T08:21:40</UpdateTime>
<Outputs/>
<DriftDetectionTime>2020-09-16T09:21:40</DriftDetectionTime>
<RegionId>cn-hangzhou</RegionId>
<StackDriftStatus>IN_SYNC</StackDriftStatus>
<NotificationURLs>["http://127.XX.XX.1:8080/x", "http://127.0.XX.XX:8080/y"]</NotificationURLs>
<DisableRollback>false</DisableRollback>
<StackName>MyStack</StackName>
<Tags>
<Key>usage</Key>
<Value>test</Value>
</Tags>
<TimeoutInMinutes>10</TimeoutInMinutes>
<StackId>c754d2a4-28f1-46df-b557-9586173a****</StackId>
<ResourceGroupId>rg-acfmxazb4ph6aiy****</ResourceGroupId>
<ResourceProgress>
<TotalResourceCount>2</TotalResourceCount>
<SuccessResourceCount>1</SuccessResourceCount>
<FailedResourceCount>0</FailedResourceCount>
<InProgressResourceCount>1</InProgressResourceCount>
<PendingResourceCount>0</PendingResourceCount>
<InProgressResourceDetails>
<ResourceName>WaitCondition</ResourceName>
<ResourceType>ALIYUN::ROS::WaitCondition</ResourceType>
<ProgressValue>5</ProgressValue>
<ProgressTargetValue>10</ProgressTargetValue>
</InProgressResourceDetails>
</ResourceProgress>
<Log>
<TerraformLogs>
<Command>apply</Command>
<Stream>stdout</Stream>
<Content>Apply complete! Resources: 42 added, 0 changed, 0 destroyed.</Content>
</TerraformLogs>
<ResourceLogs>
<ResourceName>MyResourceCleaner</ResourceName>
<Logs>
<Keys>ResourceDetails</Keys>
<Content>[]</Content>
</Logs>
</ResourceLogs>
</Log>
<TemplateId>a52f81be-496f-4e1c-a286-8852ab54****</TemplateId>
<TemplateVersion>v1</TemplateVersion>
<TemplateScratchId>ts-7f7a704cf71c49a6****</TemplateScratchId>
<TemplateURL>oss://ros/template/demo</TemplateURL>
<Interface>{}</Interface>
<ServiceManaged>false</ServiceManaged>
<ServiceName>ACVS</ServiceName>
<OperationInfo>
<Code>DependencyViolation</Code>
<Message>There is still instance(s) in the specified security group.</Message>
<RequestId>071D6166-3F6B-5C7B-A1F0-0113FBB643A8</RequestId>
<Action>DeleteSecurityGroup</Action>
<ResourceType>ALIYUN::ECS::SecurityGroup</ResourceType>
<LogicalResourceId>EcsSecurityGroup</LogicalResourceId>
</OperationInfo>
</GetStackResponse>
JSON格式
HTTP/1.1 200 OK
Content-Type:application/json
{
"Status" : "CREATE_COMPLETE",
"Description" : "Create a VPC.",
"Parameters" : {
"ParameterKey" : "ALIYUN::Region",
"ParameterValue" : "cn-hangzhou"
},
"RequestId" : "B288A0BE-D927-4888-B0F7-B35EF84B6E6F",
"StatusReason" : "Stack CREATE completed successfully",
"ParentStackId" : "4a6c9851-3b0f-4f5f-b4ca-a14bf692****",
"CreateTime" : "2020-09-16T08:21:40",
"DeletionProtection" : "Disabled",
"RootStackId" : "4a6c9851-3b0f-4f5f-b4ca-a14bf692****",
"TemplateDescription" : "Create a VPC.",
"StackType" : "ROS",
"RamRoleName" : "test-role",
"UpdateTime" : "2020-09-17T08:21:40",
"Outputs" : "",
"DriftDetectionTime" : "2020-09-16T09:21:40",
"RegionId" : "cn-hangzhou",
"StackDriftStatus" : "IN_SYNC",
"NotificationURLs" : "[\"http://127.XX.XX.1:8080/x\", \"http://127.0.XX.XX:8080/y\"]",
"DisableRollback" : false,
"StackName" : "MyStack",
"Tags" : {
"Key" : "usage",
"Value" : "test"
},
"TimeoutInMinutes" : 10,
"StackId" : "c754d2a4-28f1-46df-b557-9586173a****",
"ResourceGroupId" : "rg-acfmxazb4ph6aiy****",
"ResourceProgress" : {
"TotalResourceCount" : 2,
"SuccessResourceCount" : 1,
"FailedResourceCount" : 0,
"InProgressResourceCount" : 1,
"PendingResourceCount" : 0,
"InProgressResourceDetails" : {
"ResourceName" : "WaitCondition",
"ResourceType" : "ALIYUN::ROS::WaitCondition",
"ProgressValue" : 5,
"ProgressTargetValue" : 10
}
},
"Log" : {
"TerraformLogs" : {
"Command" : "apply",
"Stream" : "stdout",
"Content" : "Apply complete! Resources: 42 added, 0 changed, 0 destroyed."
},
"ResourceLogs" : {
"ResourceName" : "MyResourceCleaner",
"Logs" : {
"Keys" : "ResourceDetails",
"Content" : "[]"
}
}
},
"TemplateId" : "a52f81be-496f-4e1c-a286-8852ab54****",
"TemplateVersion" : "v1",
"TemplateScratchId" : "ts-7f7a704cf71c49a6****",
"TemplateURL" : "oss://ros/template/demo",
"Interface" : "{}",
"ServiceManaged" : false,
"ServiceName" : "ACVS",
"OperationInfo" : {
"Code" : "DependencyViolation",
"Message" : "There is still instance(s) in the specified security group.",
"RequestId" : "071D6166-3F6B-5C7B-A1F0-0113FBB643A8",
"Action" : "DeleteSecurityGroup",
"ResourceType" : "ALIYUN::ECS::SecurityGroup",
"LogicalResourceId" : "EcsSecurityGroup"
}
}
错误码
访问错误中心查看更多错误码。
|
HttpCode |
错误码 |
错误信息 |
描述 |
|---|---|---|---|
|
404 |
StackNotFound |
The Stack ({name}) could not be found. |
资源栈不存在。name为资源栈名称或ID。 |