AWSCDK条件导入值的问题
创始人
2024-09-24 03:00:41
0

在AWS CDK中,您可以使用CfnConditionCfnParameter来实现条件化部署。在CDK的某些情况下,可能需要在另一个堆栈中使用ImportValue来引用其他堆栈的资源。然而,在其他堆栈中可能存在条件,必须先检查条件是否存在再导入资源。

以下是如何在CDK中进行条件导入值的示例代码:

from aws_cdk import (
    core,
    aws_ssm as ssm,
    aws_cloudformation as cfn,
)

class MyStack(core.Stack):

    def __init__(self, scope: core.Construct, id: str, **kwargs) -> None:
        super().__init__(scope, id, **kwargs)

        # 创建一个“是否要部署VPC”的条件
        deploy_vpc = core.CfnCondition(self, "DeployVPC", expression=core.Fn.condition_equals(core.Fn.ref("DeployVPC"), "true"))

        # 添加一个CloudFormation参数,用于跨栈导入 VPC 的 ID
        vpc_id_param = cfn.CfnParameter(self, "VpcIdParam", type="AWS::SSM::Parameter::Value", default="", description="VPC ID")

        # 如果部署VPC,则导入 VPC 的 ID
        # 否则,使用 CloudFormation 参数传递的 ID
        vpc_id = core.Fn.condition_if(deploy_vpc.logical_id, core.Fn.import_value("VpcIdExport"), core.Fn.ref(vpc_id_param.logical_id))

        # 创建一个参数存储在 SSM 中
        ssm.StringParameter(self, "MyParameter", parameter_name="/my/parameter", string_value=vpc_id)

在示例代码中,我们首先创建了一个名为“DeployVPC”的条件,以检查是否应该部署VPC。然后,我们定义了一个 CloudFormation 参数,用于从另一个堆栈中导入 VPC ID。最后,我们创建了一个在 SSM 中存储值的

相关内容

热门资讯

记者揭秘!智星菠萝辅助(透视辅... 记者揭秘!智星菠萝辅助(透视辅助)拱趴大菠萝辅助神器,扑克教程(有挂细节);模式供您选择,了解更新找...
一分钟揭秘!约局吧能能开挂(透... 一分钟揭秘!约局吧能能开挂(透视辅助)hhpoker辅助靠谱,2024新版教程(有挂教学);约局吧能...
透视辅助!wepoker模拟器... 透视辅助!wepoker模拟器哪个好用(脚本)hhpoker辅助挂是真的,科技教程(有挂技巧);囊括...
透视代打!hhpkoer辅助器... 透视代打!hhpkoer辅助器视频(辅助挂)pokemmo脚本辅助,2024新版教程(有挂教程);风...
透视了解!约局吧德州真的有透视... 透视了解!约局吧德州真的有透视挂(透视脚本)德州局HHpoker透视脚本,必胜教程(有挂分析);亲,...
六分钟了解!wepoker挂底... 六分钟了解!wepoker挂底牌(透视)德普之星开辅助,详细教程(有挂解密);德普之星开辅助是一种具...
9分钟了解!wpk私人辅助(透... 9分钟了解!wpk私人辅助(透视)hhpoker德州透视,插件教程(有挂教学);风靡全球的特色经典游...
推荐一款!wepoker究竟有... 推荐一款!wepoker究竟有透视(脚本)哈糖大菠萝开挂,介绍教程(有挂技术);囊括全国各种wepo...
每日必备!wepoker有人用... 每日必备!wepoker有人用过(脚本)wpk有那种辅助,线上教程(有挂规律);wepoker有人用...
玩家必备教程!wejoker私... 玩家必备教程!wejoker私人辅助软件(脚本)哈糖大菠萝可以开挂,可靠技巧(有挂神器)申哈糖大菠萝...