cdk:导入不相关的不同堆栈的输出
cdk: Importing the output of an unrelated different stack
上下文:
我正在使用 cdk 制作一个新堆栈。此堆栈将使用一个 vpc id,它是来自同一帐户中不同堆栈的输出,不是由 cdk 生成的。
我正在寻找
的 cdk 等价物
Fn::ImportValue: ExportedName
以便在 cdk 中创建 VPC,然后可以将资源附加到它。
然后我将使用该输出来查找 VPC:
Vpc.fromVpcAttributes(this, "MyImportedVPC", VpcAttributes.builder()
.withVpcId(importedValue).build());
我能找到的所有关于使用 cdk 导入值的参考都是关于导入(或者更确切地说,不必手动导入)在堆栈中定义的值,该堆栈也是由 cdk 创建的。我错过了什么吗?
我正在寻找 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);
上下文: 我正在使用 cdk 制作一个新堆栈。此堆栈将使用一个 vpc id,它是来自同一帐户中不同堆栈的输出,不是由 cdk 生成的。
我正在寻找
的 cdk 等价物Fn::ImportValue: ExportedName
以便在 cdk 中创建 VPC,然后可以将资源附加到它。
然后我将使用该输出来查找 VPC:
Vpc.fromVpcAttributes(this, "MyImportedVPC", VpcAttributes.builder()
.withVpcId(importedValue).build());
我能找到的所有关于使用 cdk 导入值的参考都是关于导入(或者更确切地说,不必手动导入)在堆栈中定义的值,该堆栈也是由 cdk 创建的。我错过了什么吗?
我正在寻找 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);