我们需要列出处于CREATE_COMPLETE状态的所有堆栈.在我们的AWS账户中,我们有大约400个这样的堆栈.我们为此编写了以下代码:
stack_session = session.client('cloudformation') list_stacks = stack_session.list_stacks(StackStatusFilter=['CREATE_COMPLETE'])
但是,这仅列出前100个堆栈.我们想知道如何获得所有堆栈?我们正在使用python boto3库.
解决方法
我使用分页工作了.我写的代码如下:
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个堆栈.