检索VPC以创建安全组

时间:2019-07-03 08:47:56

标签: pulumi

我正在尝试找回VPC,然后创建一个包含规则的安全组。我一直在按照here in their docs的步骤进行操作,但是我需要获取不是默认vpc的vpc。

我有这样的代码:

const primaryVpcId = config.require("primaryVpcId");

const primaryVpc = awsx.ec2.Vpc.fromExistingIds("primary", {
    vpcId: primaryVpcId
}); 

const sg = new awsx.ec2.SecurityGroup("jcsg", {vpc:primaryVpc});

问题是primaryVpc对象为空,因此当我运行pulumi up时,它会错误地指出子网ID为空。我知道AWS中的vpc没什么问题,因此它的检索由于某种原因而失败。

1 个答案:

答案 0 :(得分:0)

根据文档,使用fromExistingIds时,您还必须指定子资源ID。如果您打算使用子网,则也必须传递这些ID的标识符,它们似乎也不会被自动发现。

使用给定名称及其相关子资源的ID获取现有Vpc资源的状态。这不会导致创建VPC(或任何子资源),并且从pulumi应用程序中删除该Vpc不会导致现有云资源(或子资源)被破坏。

const importedVpc = awsx.ec2.Vpc.fromExistingIds('primary', {
    vpcId: 'theId',
    privateSubnetIds: ['id1', 'id2']
})

我想您必须对计划在程序中其他地方使用的ExistingVpcIdArgs(函数的第二个参数)中的任何属性执行相同的操作。