ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [AWS] Cloudformation Conditions, AllowedPattern으로 파라미터 값 검사하기
    CLOUD/AWS 2022. 2. 15. 20:35
    반응형

    Cloudformation

    AllowedPattern으로 특정 패턴이 아니면 설정하지 않는 법

    1. Default값을 설정하고, 특정 정규식과 Default값만 가능하게 AllowedPattern을 지정한다.

      InboundIp:
        Type: String
        Default: unused
        AllowedPattern: "^[0-9]{1,3}[.][0-9]{1,3}[.][0-9]{1,3}[.][0-9]{1,3}[/][0-9]{1,2}$|^unused$"

    2. Conditions 지정

    Conditions:
      IsUnused: !Equals [!Ref InboundIp, "unused"]

    Conditions는 Parameter, Metadata와 같은 줄에 생성해야 한다.
    해당 String이 unused인지 아닌지를 확인하는 조건식이다

    3. 리소스 생성

    Security Group을 예로 들면

    // SecurityGroupInbounds리스트부분에 
            - !If
              - IsUnused # 해당 값이 true인지 false인지 Condition 확인 
              - !Ref AWS::NoValue # True이면 NoValue -> Security Group 설정하지 않겠다는 의미
              - IpProtocol: all # False이면 Security Group 생성 
                FromPort: -1
                ToPort: -1
                CidrIp: !Ref InboundIp
                Description: !Ref EKSSecurityRule1IpName

    List형식으로 되면 If문을 어떻게 걸어줘야 하나 했는데 다음과 같이 하면 된다.

    댓글

Designed by Tistory.