Шаблон облачной информации EC2 с использованием условий для добавления объема ebs - PullRequest
0 голосов
/ 05 мая 2020

Я пытаюсь добавить том EBS к своему ресурсу EC2 в зависимости от того, требуется ли том EBS или нет. Как заставить условие работать? Вот фрагмент кода:

Conditions:
  EbsVolumeTrue: !Equals [!Ref EBS, true]
Resources:
  Instance:
    Type: AWS::EC2::Instance
    Properties:
      ImageId: ami-xxxxxx
      !If [EbsVolumeTrue, !Ref BlockDeviceMappings, !Ref "AWS::NoValue"]
      BlockDeviceMappings: 
       - DeviceName: !Ref VolumeName
         Ebs: 
           VolumeType: !Ref VolumeType
           DeleteOnTermination: false
           VolumeSize: !Ref VolumeSize

1 Ответ

0 голосов
/ 20 мая 2020

Это способ go с несколькими строками в Условиях:

Conditions:
  EbsVolumeTrue: !Equals [!Ref EBS, true]
Resources:
  Instance:
    Type: AWS::EC2::Instance
    Properties:
      ImageId: ami-xxxxxx
      Fn::If:
        - EbsVolumeTrue
        - 
          BlockDeviceMappings: 
          - DeviceName: !Ref VolumeName
            Ebs: 
              VolumeType: !Ref VolumeType
              DeleteOnTermination: false
              VolumeSize: !Ref VolumeSize
        - Ref: AWS::NoValue
...