如何使用 aws cdk 列出所有部署的 aws 资源

Sch*_*han 2 python amazon-web-services boto3 aws-cdk

我有一个 AWS Cdk 部署程序应用程序,它在 AWS 中部署了多个资源。该应用程序使用一个配置文件作为输入文件,并使用该文件在 Fargate 集群中部署多个 ecs 任务,并将它们放置在应用程序负载均衡器后面。

有什么方法可以获取我运行时正在部署的所有组件/AWS 服务cdk deploy --all。我试图在不使用单独的 boto3 函数的情况下了解 cdk 是否提供了任何方法。

fed*_*nev 6

合成后,来自cdk.out CloudAssembly

import aws_cdk.cx_api as cx_api

cloud_assembly = cx_api.CloudAssembly("cdk.out")
resources = [stack.template["Resources"] for stack in cloud_assembly.stacks]
Run Code Online (Sandbox Code Playgroud)

部署后,使用DescribeStackResourcesListStackResources API:

aws cloudformation describe-stack-resources --stack-name MyStack
Run Code Online (Sandbox Code Playgroud)

两者都返回 CloudFormation 资源信息列表,但内容不同。资源CloudAssembly来自于 生成的本地模板cdk synth。从 boto3 或 CLI 返回的资源是已部署的具有解析名称的云资源。