【问题标题】:cdk: Importing the output of an unrelated different stackcdk:导入不相关的不同堆栈的输出
【发布时间】:2019-12-21 04:28:40
【问题描述】:

上下文: 我正在使用 cdk 创建一个新堆栈。此堆栈将使用 vpc id,它是同一帐户中不同堆栈的输出,不是由 cdk 生成的。

我正在寻找相当于

的 cdk
Fn::ImportValue: ExportedName

为了在 cdk 中创建一个 VPC,然后可以将资源附加到它。

然后我将使用该输出来查找 VPC:

Vpc.fromVpcAttributes(this, "MyImportedVPC", VpcAttributes.builder()
    .withVpcId(importedValue).build());

我能找到的所有关于使用 cdk 导入值的参考都是关于导入(或者更确切地说,不必手动导入)在堆栈中定义的值,该堆栈也是由 cdk 创建的。我错过了什么吗?

【问题讨论】:

    标签: amazon-cloudformation aws-cdk


    【解决方案1】:

    我在找Fn.importValue:

    Fn.importValue("ExportedName")
    
    List<String> availabilityZones = java.util.stream.Stream
            .of("us-west-2a", "us-west-2b", "us-west-2c")
            .collect(toList());
    
    String privateSubnet1 = Fn.importValue("PrivateSubnet01");
    String privateSubnet2 = Fn.importValue("PrivateSubnet02");
    String privateSubnet3 = Fn.importValue("PrivateSubnet03");
    
    List<String> privateSubnets = java.util.stream.Stream
            .of(privateSubnet1, privateSubnet2, privateSubnet3)
            .collect(toList());
    
    VpcAttributes byId = VpcAttributes.builder()
            .withVpcId(vpcId)
            .withAvailabilityZones(availabilityZones)
            .withPrivateSubnetIds(privateSubnets)
            .build();
    
    return Vpc.fromVpcAttributes(this, "ImportedVpc", byId);
    

    【讨论】:

      猜你喜欢
      • 2022-11-04
      • 1970-01-01
      • 1970-01-01
      • 2017-03-14
      • 2011-06-08
      • 2021-06-19
      • 2021-02-18
      • 2020-10-29
      • 2015-07-26
      相关资源
      最近更新 更多