Я пытаюсь использовать значение, возвращаемое лямбда-функцией через. Пользовательские ресурсы CloudFormation; однако, когда я пытаюсь, пользовательский ресурс CloudFormation бесконечно зависает в состоянии ожидания.
Следующий код лямбда-узла, который я пытаюсь и
exports.handler = function(event, context) {
var date = new Date();
var current_hour = date.getHours();
console.log("START :: " + current_hour);
console.log("END :: " + current_hour);
data = {
"val1" : "val1",
"val2" : "val2"
};
result = {
"Status" : "SUCCESS",
"Reason" : "Success Reason",
"PhysicalResourceId" : "LambdaCustomDelayFunction",
"StackId" : event.StackId,
"RequestId" : event.RequestId,
"LogicalResourceId" : event.LogicalResourceId,
"Data" : data
};
console.log('---Event---');
console.log(event);
console.log('---Context---');
console.log(context);
console.log('---Result---');
console.log(result);
context.done(null, result);
};
Следуя сценарию CloudFormation, я пытаюсь работать с лямбда
"DelayFunction" : {
"Type" : "Custom::Delayer",
"Properties" : {
"ServiceToken" : "arn:aws:lambda:us-east-1-123456778:function:delayfunction"
}
},
"MySG": {
"Type": "AWS::EC2::SecurityGroup",
"Properties": {
"GroupDescription": " Server SG 1",
"VpcId": {
"Ref": "VPC"
},
"SecurityGroupIngress": [
{
"IpProtocol": "-1",
"CidrIp": "10.0.0.0/16"
}
],
"SecurityGroupEgress": [
{
"IpProtocol": "-1",
"CidrIp": "0.0.0.0/0"
}
],
"Tags": [
{
"Key": "Name",
"Value": "SG 1"
},
{"Key":"Lambda", "Value":{ "Fn::GetAtt" : ["DelayFunction", "val1"]}} <------ Trying to retrieve the value
]
}
}