GetStack - 查询资源栈信息

查询资源栈信息。

接口说明

本文将提供一个示例,查询杭州地域 ID 为c754d2a4-28f1-46df-b557-9586173a****的资源栈信息。

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

授权信息

下表是API对应的授权信息,可以在RAM权限策略语句的Action元素中使用,用来给RAM用户或RAM角色授予调用此API的权限。具体说明如下:

  • 操作:是指具体的权限点。
  • 访问级别:是指每个操作的访问级别,取值为写入(Write)、读取(Read)或列出(List)。
  • 资源类型:是指操作中支持授权的资源类型。具体说明如下:
    • 对于必选的资源类型,用背景高亮的方式表示。
    • 对于不支持资源级授权的操作,用全部资源表示。
  • 条件关键字:是指云产品自身定义的条件关键字。
  • 关联操作:是指成功执行操作所需要的其他权限。操作者必须同时具备关联操作的权限,操作才能成功。
操作访问级别资源类型条件关键字关联操作
ros:GetStackget
  • stack
    acs:ros:{#regionId}:{#accountId}:stack/{#stackId}

请求参数

名称类型必填描述示例值
StackIdstring

资源栈 ID。

c754d2a4-28f1-46df-b557-9586173a****
RegionIdstring

资源栈所属的地域 ID。您可以调用 DescribeRegions 查看最新的阿里云地域列表。

cn-hangzhou
ClientTokenstring

保证请求的幂等性。 该值由客户端生成,并且必须全局唯一。
长度不超过 64 个字符。
更多信息,请参见如何保证幂等性

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

是否返回 Outputs 参数(资源栈输出列表)。取值:

  • Enabled(默认值):返回 Outputs 参数。

  • Disabled:不返回 Outputs 参数。

说明 Outputs 计算较为耗时。如果不需要获取 Outputs 信息,建议您将 OutputOption 指定为 Disabled,提高接口响应速度。
Disabled
ShowResourceProgressstring

是否返回 ResourceProgress 参数(资源处理进度)。取值:

  • Disabled(默认值):不返回 ResourceProgress 参数。

  • PercentageOnly:返回 ResourceProgress 中 StackOperationProgress 和 StackActionProgress 参数。

说明 支持 ROS 类型和 Terraform 类型资源栈。支持资源栈创建(含继续创建)、更新、删除、导入及相应的回滚操作。
  • EnabledIfCreateStack(不推荐):仅在创建资源栈时返回 ResourceProgress 中*Count 和 InProgressResourceDetails 参数。
说明 创建资源栈时资源栈状态为 CREATE_IN_PROGRESS、CREATE_COMPLETE、CREATE_FAILED、CREATE_ROLLBACK_IN_PROGRESS、CREATE_ROLLBACK_COMPLETE 或 CREATE_ROLLBACK_FAILED。
Disabled
LogOptionstring

日志选项。取值:

  • None:不返回日志。
  • Stack(默认值):返回资源栈相关日志。
  • Resource:返回资源相关日志。
  • All:返回所有日志。
Stack

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

返回参数

名称类型描述示例值
object
Statusstring

资源栈状态。取值:

  • CREATE_IN_PROGRESS:资源栈创建中。
  • CREATE_FAILED:资源栈创建失败。
  • CREATE_COMPLETE:资源栈创建成功。
  • UPDATE_IN_PROGRESS:资源栈更新中。
  • UPDATE_FAILED:资源栈更新失败。
  • UPDATE_COMPLETE:资源栈更新成功。
  • DELETE_IN_PROGRESS:资源栈删除中。
  • DELETE_FAILED:资源栈删除失败。
  • DELETE_COMPLETE:资源栈删除成功。
  • CREATE_ROLLBACK_IN_PROGRESS:创建资源栈回滚中。
  • CREATE_ROLLBACK_FAILED:创建资源栈回滚失败。
  • CREATE_ROLLBACK_COMPLETE:创建资源栈回滚成功。
  • ROLLBACK_IN_PROGRESS:资源栈回滚中。
  • ROLLBACK_FAILED:资源栈回滚失败。
  • ROLLBACK_COMPLETE:资源栈回滚成功。
  • CHECK_IN_PROGRESS:资源栈校验中。
  • CHECK_FAILED:资源栈校验失败。
  • CHECK_COMPLETE:资源栈校验成功。
  • REVIEW_IN_PROGRESS:资源栈核对中。
  • IMPORT_CREATE_IN_PROGRESS:通过资源导入创建资源栈中。
  • IMPORT_CREATE_FAILED:通过资源导入创建资源栈失败。
  • IMPORT_CREATE_COMPLETE:通过资源导入创建资源栈成功。
  • IMPORT_CREATE_ROLLBACK_IN_PROGRESS:通过资源导入创建资源栈回滚中。
  • IMPORT_CREATE_ROLLBACK_FAILED:通过资源导入创建资源栈回滚失败。
  • IMPORT_CREATE_ROLLBACK_COMPLETE:通过资源导入创建资源栈回滚成功。
  • IMPORT_UPDATE_IN_PROGRESS:通过资源导入更新资源栈中。
  • IMPORT_UPDATE_FAILED:通过资源导入更新资源栈失败。
  • IMPORT_UPDATE_COMPLETE:通过资源导入更新资源栈成功。
  • IMPORT_UPDATE_ROLLBACK_IN_PROGRESS:通过资源导入更新资源栈回滚中。
  • IMPORT_UPDATE_ROLLBACK_FAILED:通过资源导入更新资源栈回滚失败。
  • IMPORT_UPDATE_ROLLBACK_COMPLETE:通过资源导入更新资源栈回滚成功。
CREATE_COMPLETE
Descriptionstring

资源栈的描述信息。

Create a VPC.
Parametersarray<object>

资源栈参数。

object
ParameterKeystring

参数名称。

ALIYUN::Region
ParameterValuestring

参数值。

cn-hangzhou
RequestIdstring

请求 ID。

B288A0BE-D927-4888-B0F7-B35EF84B6E6F
StatusReasonstring

资源栈状态说明。

Stack CREATE completed successfully
ParentStackIdstring

父资源栈 ID。

4a6c9851-3b0f-4f5f-b4ca-a14bf692****
CreateTimestring

资源栈创建时间。按照 ISO8601 标准表示,需使用 UTC 时间,格式:YYYY-MM-DDThh:mm:ss。

2020-09-16T08:21:40
DeletionProtectionstring

是否开启资源栈删除保护。取值:

  • Enabled:开启资源栈删除保护。
  • Disabled:关闭资源栈删除保护。此时支持通过控制台或 API(DeleteStack)释放资源栈。
说明 嵌套资源栈的删除保护机制与根资源栈一致。
Disabled
RootStackIdstring

根资源栈 ID。当资源栈为嵌套资源栈时,会返回该参数。

4a6c9851-3b0f-4f5f-b4ca-a14bf692****
TemplateDescriptionstring

模板描述。

Create a VPC.
StackTypestring

资源栈类型。取值:

  • ROS:使用 ROS 模板的资源栈。
  • Terraform:使用 Terraform 模板的资源栈。
ROS
RamRoleNamestring

RAM 角色名称。ROS 会扮演该角色创建资源栈,使用角色的凭证代表用户进行接口调用。
ROS 始终将此角色用于资源栈上将进行的操作。只要用户有权在资源栈上进行操作,即使用户无权使用角色,ROS 也会使用此角色,确保角色授予最少的权限。
如果用户未指定该值,ROS 将使用以前与资源栈关联的角色。如果没有可用角色,ROS 将使用从您的用户凭证中生成的临时凭证。
RAM 角色名称最大长度为 64 个字节。

test-role
UpdateTimestring

资源栈更新时间。按照 ISO8601 标准表示,需使用 UTC 时间,格式:YYYY-MM-DDThh:mm:ss。

2020-09-17T08:21:40
Outputsarray<object>

资源栈输出列表。

object

资源栈输出列表。

说明 当 OutputOption 取值为 Enabled 时返回该参数。
[{"Description": "VPC ID","OutputKey": "VpcId","OutputValue": "vpc-bp1m6fww66xbntjyc****"}]
DriftDetectionTimestring

资源栈最近一次成功的偏差检测的时间。

2020-09-16T09:21:40
RegionIdstring

要创建的资源栈所属的地域 ID。您可以调用 DescribeRegions 查看最新的阿里云地域列表。

cn-hangzhou
StackDriftStatusstring

资源栈最近一次成功的偏差检测中的资源栈的状态。取值:

  • DRIFTED:资源栈处于偏差状态。
  • NOT_CHECKED:资源栈未进行过成功的偏差检测。
  • IN_SYNC:资源栈处于同步状态。
IN_SYNC
NotificationURLsarray

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

string

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

["http://127.XX.XX.1:8080/x", "http://127.0.XX.XX:8080/y"]
DisableRollbackboolean

当创建资源栈失败时,是否禁用回滚策略。取值:

  • true:禁用回滚,即当创建资源栈失败时不进行回滚。
  • false(默认值):不禁用回滚,即当创建资源栈失败时进行回滚。
false
StackNamestring

资源栈名称。
长度不超过 255 个字符,必须以数字或英文字母开头,可包含数字、英文字母、短划线(-)和下划线(_)。

MyStack
Tagsarray<object>

资源栈的标签。

object
Keystring

资源栈的标签键。

usage
Valuestring

资源栈的标签值。

test
TimeoutInMinutesinteger

创建资源栈的超时时间。单位:分钟。

10
StackIdstring

资源栈 ID。

c754d2a4-28f1-46df-b557-9586173a****
ResourceGroupIdstring

资源组 ID。

rg-acfmxazb4ph6aiy****
ResourceProgressobject

资源处理进度。

TotalResourceCountinteger

总资源数。

说明 仅在ShowResourceProgress参数取值为EnabledIfCreateStack时返回。
2
SuccessResourceCountinteger

处理成功的资源数。

说明 仅在ShowResourceProgress参数取值为EnabledIfCreateStack时返回。
1
FailedResourceCountinteger

处理失败的资源数。

说明 仅在ShowResourceProgress参数取值为EnabledIfCreateStack时返回。
0
InProgressResourceCountinteger

处理中的资源数。

说明 仅在ShowResourceProgress参数取值为EnabledIfCreateStack时返回。
1
PendingResourceCountinteger

待处理的资源数。

说明 仅在ShowResourceProgress参数取值为EnabledIfCreateStack时返回。
0
InProgressResourceDetailsarray<object>

处理中的资源进度详情列表。

说明 仅在ShowResourceProgress参数取值为EnabledIfCreateStack时返回。
object

处理中的资源进度详情。

ResourceNamestring

资源名称。

WaitCondition
ResourceTypestring

资源类型。

ALIYUN::ROS::WaitCondition
ProgressValuefloat

资源进度当前值。

5
ProgressTargetValuefloat

资源进度目标值。

10
StackOperationProgressfloat

资源栈操作进度百分比。取值范围:0-100。

示例说明:创建资源栈时,取值从 0 开始一直在增加。如果创建成功,取值达到 100。如果创建失败,开始回滚,则取值一直在减少。回滚成功时,取值达到 0。该参数表示这次创建操作的整体进度,无论资源栈状态是创建中还是回滚中。

说明 仅在ShowResourceProgress参数取值为PercentageOnly时返回。
100
StackActionProgressfloat

资源栈动作进度百分比。取值范围:0-100。

示例说明:创建资源栈时,取值从 0 开始一直在增加。如果创建成功,取值达到 100。如果创建失败,开始回滚,则取值从另一个值(100-资源创建失败时的进度值)开始一直在增加。回滚成功时,取值达到 100。该参数在创建资源栈时,表示创建动作的进度,在资源栈回滚时,表示回滚动作的进度。

说明 仅在ShowResourceProgress参数取值为PercentageOnly时返回。
100
Logobject

资源栈相关输出日志。

TerraformLogsarray<object>

Terraform 输出日志。仅 Terraform 类型资源栈返回该参数。 当 LogOption 未指定,或者 LogOption 取值为 Stack 或 All 时返回该参数。

说明 运行中的资源栈不返回该参数。该参数表示资源栈最近一次操作(创建、继续创建、更新、删除)的日志。
object

test

Commandstring

执行的 Terraform 命令名称。取值:

  • apply

  • plan

  • destroy

  • version

关于命令含义的更多信息,请参见 Command

apply
Streamstring

输出流。取值:

  • stdout:标准输出。

  • stderr:标准错误。

stdout
Contentstring

当前命令在当前输出流中输出的内容。

Apply complete! Resources: 42 added, 0 changed, 0 destroyed.
ResourceLogsarray<object>

资源输出日志。当 LogOption 取值为 Resource 或 All 时返回该参数。

说明 仅部分资源类型的资源会返回资源日志,例如:ALIYUN::ROS::ResourceCleaner
object

test

ResourceNamestring

模板中定义的资源名称。

MyResourceCleaner
Logsarray<object>

资源关联的所有日志。

object

test

Keysarray

资源关联的某条日志的关键字列表。

string

关键字。

ResourceDetails
Contentstring

资源关联的某条日志的内容。

[]
TemplateIdstring

模板 ID。仅在资源栈当前所使用的模板来自于用户自定义模板或共享模板时返回该参数。

如果是共享模板,返回结果与模板的 TemplateARN 相同。

a52f81be-496f-4e1c-a286-8852ab54****
TemplateVersionstring

模板版本。仅在资源栈当前所使用的模板来自于用户自定义模板或共享模板时返回该参数。

如果为共享模板,仅当共享时参数 VersionOption 为 AllVersions 时,返回该参数。

取值范围:v1~v100。

v1
TemplateScratchIdstring

资源场景 ID。仅在资源栈当前所使用的模板来自于资源场景时返回该参数。

ts-7f7a704cf71c49a6****
TemplateURLstring

包含模板主体的文件的位置。仅在资源栈当前所使用的模板来自于 URL 时返回该参数,包括 Web 服务器(HTTP 或 HTTPS)或阿里云 OSS 存储空间等。

oss://ros/template/demo
Interfacestring

界面描述信息。

{}
ServiceManagedboolean

是否为托管资源栈。取值:

  • true:是托管资源栈。

  • false:不是托管资源栈。

false
ServiceNamestring

托管资源栈所属的服务名称。

ACVS
OperationInfoobject

资源栈操作发生错误时的补充信息。

说明 该返回属性仅在特定情况下返回,且至少返回一个子属性。例如:调用其他云服务 API 报错。
Codestring

错误码。

DependencyViolation
Messagestring

错误内容。

There is still instance(s) in the specified security group.
RequestIdstring

调用其他云服务 API 的请求 ID。

071D6166-3F6B-5C7B-A1F0-0113FBB643A8
Actionstring

调用其他云服务 API 的名称。

DeleteSecurityGroup
ResourceTypestring

发生操作错误的资源类型。

ALIYUN::ECS::SecurityGroup
LogicalResourceIdstring

发生操作错误的资源逻辑 ID。

EcsSecurityGroup
OrderIdsarray

订单 ID 列表,当创建资源栈时设置了手动支付包年包月订单时才会返回。

string

订单 ID 信息。

2161413696****
CheckedStackResourceCountinteger

已执行偏差检查的资源数。

说明 仅在资源栈上次偏差检测成功时返回。
1
NotCheckedStackResourceCountinteger

没有执行过偏差检查的资源数。

说明 仅在资源栈上次偏差检测成功时返回。
1
RollbackFailedRootReasonstring

当资源栈状态为回滚失败时,该字段展示导致回滚的前一阶段执行失败的原因。

Resource UPDATE failed: Exception: resources.FailToCreate: FailToCreate: reason

示例

正常返回示例

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": [
    [
      {
        "Description": "VPC ID",
        "OutputKey": "VpcId",
        "OutputValue": "vpc-bp1m6fww66xbntjyc****"
      }
    ]
  ],
  "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
      }
    ],
    "StackOperationProgress": 100,
    "StackActionProgress": 100
  },
  "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"
  },
  "OrderIds": [
    "2161413696****"
  ],
  "CheckedStackResourceCount": 1,
  "NotCheckedStackResourceCount": 1,
  "RollbackFailedRootReason": "Resource UPDATE failed: Exception: resources.FailToCreate: FailToCreate: reason"
}

错误码

访问错误中心查看更多错误码。

变更历史

变更时间变更内容概要操作
2024-02-29OpenAPI 返回结构发生变更查看变更详情
2023-08-11OpenAPI 返回结构发生变更查看变更详情
2023-07-13OpenAPI 返回结构发生变更查看变更详情
2023-07-13OpenAPI 返回结构发生变更查看变更详情
2023-05-18OpenAPI 返回结构发生变更查看变更详情
2022-02-22OpenAPI 返回结构发生变更查看变更详情
HttpCode错误码错误信息描述
404StackNotFoundThe Stack ({name}) could not be found.资源栈不存在。name 为资源栈名称或 ID。