function runInst()

in lambda/ec2Run/index.js [189:240]


function runInst(){
    return new Promise(function(resolve, reject) {
        let paramsSub = {
        Filters: [
                { Name: 'tag:gov-cloud-import',
                  Values: ['true']
                }
            ]
        };
        ec2.describeSubnets(paramsSub, function(err, data) {
            if (err) {
                reject(err, err.stack);
            } else {
                const subnetId = data.Subnets[0].SubnetId;
                let params = {
                    MaxCount: 1,
                    MinCount: 1,
                    ImageId: ami,
                    InstanceType: "m5.large",
                    KeyName: keyName,
                    IamInstanceProfile: {
                        Arn: ec2param.arn,
                    },
                    SubnetId: subnetId,
                    SecurityGroupIds: [ec2param.sg],
                    TagSpecifications: [
                        { ResourceType: "instance",
                            Tags: [
                                { Key: 'gov-cloud-import',
                                    Value: 'true'
                                },
                                { Key: 'Name',
                                    Value: 'gov-cloud-import-ec2'
                                }
                            ]
                        },
                    ],
                    UserData: userDataEncoded
                };
                ec2.runInstances(params, function(err, data) {
                if (err) {
                        console.log(err);
                        reject(err);
                    } else {
                        //Respond with pending so we'll check on it again
                        resolve("pending");
                    }
                });
            }
        });
    });
}