Черт возьми, я не могу оставить комментарий, так как мой представитель 48, а не 50.: (
В любом случае, у меня нет фактического ОТВЕТА на ваш вопрос, но я надеюсь, что у меня естьздесь вам помогут.
- В разделе параметров у вас есть следующее:
Conditions:
Enable:
!Equals [True, !Ref Reception]
Disable:
!Equals [False, !Ref Reception]
1a. Это не сработает. Вам просто нужноодно условное утверждение:
Conditions: # Checks to see if Conditional Values are True
ReceptionYes: !Equals [ !Ref Reception, True]
Вот где это становится липким.
Вам нужна условная строка в Ресурсах, например: (Где я застрял, где поставить эту строку ниже):
!If [ReceptionYes, !Ref mySecurityGroup2, !Ref mySecurityGroup1]
First! Ref, если True, иначе, используйте второй! Ref
Теперь, в THEORY , вы ДОЛЖНЫ быть в состоянии сделать следующее:
mySecurityGroup1:
Condition: Disable
Type: 'AWS::EC2::SecurityGroup'
Properties:
VpcId: !Ref myVPC
GroupDescription: Security Group for EC2
SecurityGroupIngress:
- IpProtocol: udp
FromPort: 4114
ToPort: 4114
CidrIp: 0.0.0.0/0
Tags:
- Key: Name
Value: mySecurityGroup
mySecurityGroup2:
Condition: Enable
Type: 'AWS::EC2::SecurityGroup'
Properties:
VpcId: !Ref myVPC
GroupDescription: Security Group for EC2
SecurityGroupIngress:
- IpProtocol: udp
FromPort: 5683
ToPort: 5683
CidrIp: 0.0.0.0/0
Tags:
- Key: Name
Value: mySecurityGroup
Ну, если это не сработает, надеюсь, это немного приблизит вас к ответу. : D