Мне нужен сервер приложений, который является экземплярами beanstalk, для выполнения некоторых действий при запуске, и я подумал о запуске сценария bash, переданного экземпляру со свойством UserData, которое доступно обычным экземплярам EC2.Я нашел несколько примеров шаблонов CloudFormation, которые делают это с обычными экземплярами EC2, но нет примера с Beanstalk.Я попытался добавить это в поле свойств для приложения:
"MyApp" : {
"Type" : "AWS::ElasticBeanstalk::Application",
"Properties" : {
"Description" : "MyApp description",
"ApplicationVersions" : [{
...
}],
"UserData" : {
"Fn::Base64" : { "Fn::Join" : ["", [
"#!/bin/bash\n",
"touch /tmp/userdata_sucess\n"
]]
}},
...
Я также попытался добавить в часть среды:
"MyAppEnv" : {
"Type" : "AWS::ElasticBeanstalk::Environment",
"Properties" : {
"ApplicationName" : { "Ref" : "MyApp" },
"Description" : "MyApp environment description",
"UserData" : {
"Fn::Base64" : { "Fn::Join" : ["", [
"#!/bin/bash\n",
"touch /tmp/userdata_sucess\n"
]]
}},
"TemplateName" : "MyAppConfiguration",
"VersionLabel" : "First Cloud version"
}
},
В обоих случаях это привело к сбоюпри попытке создать стек.Кто-нибудь знает, возможно ли передать UserData экземпляру Beanstalk с помощью CloudFormation.Если да - приведите пример.