AWS Cloudformation conditions

0

I would like to have an IF-ELSE statement to assign subnets.

If 1 AZ is being used, assign privatesubnet1 to subnets

If 2 AZ is being used, assign privatesubnet1 and privatesubnet2 to subnets

If 3 AZ is being used, assign privatesubnet1, privatesubnet2 and privatesubnet3 to subnets

The IF function handles 1 and 2 AZ well, but I don’t know how to handle 3 AZ

Suggestions are welcome.

Conditions:
  SingleZone:
    !Equals [!Ref NumberOfZones, 1]
  TwoZones:
    !Equals [!Ref NumberOfZones, 2]
  ThreeZones:
    !Equals [!Ref NumberOfZones, 3]
Resources:
  Properties:
    Subnets:
      - !If [TwoZones, !Join [',', [!Ref PrivateSubnet1, !Ref PrivateSubnet2]], !Ref PrivateSubnet1]
      #How to handle ThreeZones
gefragt vor einem Jahr234 Aufrufe
1 Antwort
0

Hi, Look at https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-conditions.html#intrinsic-function-reference-conditions-if

"Fn::If": [condition_name, value_if_true, value_if_false]

You have to create second If in the value_if_false of your current if.

profile pictureAWS
EXPERTE
beantwortet vor einem Jahr

Du bist nicht angemeldet. Anmelden um eine Antwort zu veröffentlichen.

Eine gute Antwort beantwortet die Frage klar, gibt konstruktives Feedback und fördert die berufliche Weiterentwicklung des Fragenstellers.

Richtlinien für die Beantwortung von Fragen