使用 boto3 列出 100 多个堆栈
Posted
技术标签:
【中文标题】使用 boto3 列出 100 多个堆栈【英文标题】:Listing more than 100 stacks using boto3 【发布时间】:2017-01-06 19:13:38 【问题描述】:我们需要列出所有处于 CREATE_COMPLETE 状态的堆栈。在我们的 AWS 账户中,我们有超过 400 个这样的堆栈。我们为此编写了以下代码:
stack_session = session.client('cloudformation')
list_stacks = stack_session.list_stacks(StackStatusFilter=['CREATE_COMPLETE'])
但是,这仅列出了前 100 个堆栈。我们想知道如何获得所有的堆栈?我们正在使用 python boto3 库。
【问题讨论】:
【参考方案1】:我使用分页来完成这项工作。我写的代码如下:
stack_session = session.client('cloudformation')
paginator = stack_session.get_paginator('list_stacks')
response_iterator = paginator.paginate(StackStatusFilter=['CREATE_COMPLETE'])
for page in response_iterator:
stack = page['StackSummaries']
for output in stack:
print output['StackName']
这打印了我们需要的所有 451 个堆栈。
【讨论】:
以上是关于使用 boto3 列出 100 多个堆栈的主要内容,如果未能解决你的问题,请参考以下文章