Я пытаюсь передать сценарий в поле Userdata нового экземпляра EC2, созданного AWS Lambda (с использованием AWS SDK для Javascript, Node.js 6.10):
...
var paramsEC2 = {
ImageId: 'ami-28c90151',
InstanceType: 't1.micro',
KeyName: 'myawesomekwy',
MinCount: 1,
MaxCount: 1,
SecurityGroups: [groupname],
UserData:'#!/bin/sh \n echo "Hello Lambda"'
};
// Create the instance
ec2.runInstances(paramsEC2, function(err, data) {
if (err) {
console.log("Could not create instance", err);
return;
}
var instanceId = data.Instances[0].InstanceId;
console.log("Created instance", instanceId);
// Add tags to the instance
params = {Resources: [instanceId], Tags: [
{
Key: 'Name',
Value: 'taggggg'
}
]};
ec2.createTags(params, function(err) {
console.log("Tagging instance", err ? "failure" : "success");
});
});
...
Я пробовал несколько вещей, например: - создать строку и передать ее в UserData - не работает - создать строку и закодировать ее в base64 и передать строку в UserData - не работает - вставить строку в кодировке base64 - не работает
Не могли бы вы помочь мне понять, как передать скрипт в UserData? Документация по AWS SDK немного отсутствует.
Можно ли также передать в UserData скрипт, помещенный в корзину S3?