Как запустить экземпляр с несколькими SG, выбранными из списка - PullRequest
0 голосов
/ 13 декабря 2018

Я хотел бы запустить экземпляр и добавить более одной группы безопасности.Я использую параметры AWS.

    "SecurityGroupID": {
        "Description": "Select one Security Group ID (Must be available to the VPC)",
        "Type": "List<AWS::EC2::SecurityGroup::Id>"
    },

Использование! Ref (см. Ниже) Я получаю сообщение об ошибке: Значение свойства SecurityGroupIds должно иметь тип List of String

    "Ec2Instance" : {
        "Type" : "AWS::EC2::Instance",
        "Properties" : {
            "SecurityGroupIds" : [{"Ref": "SecurityGroupID"}],
        }
    }

Работаетс помощью Select, но возвращает только первый SG из списка.Я хотел бы получить полный список SG в SecurityGroupIds.

"SecurityGroupIds": [{"Fn :: Select": ["0", {"Ref": "SecurityGroupID"}]}],

Спасибо

1 Ответ

0 голосов
/ 13 декабря 2018

Вы указываете, что параметр SecurityGroupID является списком, но затем вы ссылаетесь на этот параметр внутри конструкции списка.Итак, вы пытаетесь присвоить список списков атрибуту, который принимает только список.

Измените свой атрибут Properties, чтобы он выглядел так (как сказал @jarmod в комментариях):

"Properties" : {
    "SecurityGroupIds" : {"Ref": "SecurityGroupID"},
}

Было бы также менее запутанным, если бы вы назвали параметр SecurityGroupIDs, чтобы было очевидно, что это список.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...