J'ai un problème plutôt ennuyeux que je suis incapable de résoudre et je ferai de mon mieux pour expliquer.
L'exemple ci-dessous fonctionne, dans lequel je suis capable de référencer un paramètre et d'assigner les groupes de sécurité à mon instance via la propriété SecurityGroupIds :
"Parameters" : {
"pDefaultSg" : {
"Description" : "AWS2 VPC groupes de sécurité par défaut",
"Type" : "List",
"Default" : "sg-245xxxxx,sg-275xxxxx,sg-235xxxxx"
}
}
"Resources" : {
"ec2Instance" : {
"Type" : "AWS::EC2::Instance",
"Properties" : {
"SecurityGroupIds" : { "Ref" : "pDefaultSg" }
}
}
Le problème commence lorsque je veux également ajouter une deuxième valeur à la propriété SecurityGroupIds en faisant référence à une ressource de groupe de sécurité instanciée dans le même modèle :
"Resources" : {
"ec2Instance" : { ...
"SecurityGroupIds" : [ { "Ref" : "pDefaultSg" }, { "Fn::GetAtt" : "sgDb", "GroupId" } ],
....
"sgDb" : {
"Type" : "AWS::EC2::SecurityGroup",
"Properties" : { ...
Je ne parviens alors pas à éviter l'erreur suivante qui provoque le rollback de la pile Cloudformation :
La valeur de la propriété SecurityGroupIds doit être de type Liste de Chaînes
Je serais vraiment reconnaissant pour tout conseil.
Merci beaucoup