Condição para o recurso Cloudformation

1

Então a coisa é:

Eu tenho este conjunto de criação de recursos para o AWS Cloudformation usando o ElasticBeanstalk, que cria um internal_loadbalancer adicional:

Resources:
IntLB: 
    Type: AWS::ElasticLoadBalancing::LoadBalancer
    Properties:
        ConnectionDrainingPolicy: 
            Enabled: true 
            Timeout: 20
        CrossZone: true
        HealthCheck:
            HealthyThreshold: 3
            Interval: 10
            Target: "TCP"
            Timeout: 5
            UnhealthyThreshold: 5
        Listeners: 
            - InstancePort: 443
              LoadBalancerPort: 443
              Protocol: HTTPS
              SSLCertificateId: arn:aws:acm:
              InstanceProtocol: HTTP
        Scheme: internal
        SecurityGroups: 
            - { "Ref" : "AWSEBLoadBalancerSecurityGroup" }
        Subnets:
            - "subnet-1"
            - "subnet-2"
            - "subnet-3"
            - "subnet-4"
            - "subnet-5"
            - "subnet-6"

AWSEBAutoScalingGroup:
    Type: AWS::AutoScaling::AutoScalingGroup
    Properties: 
        LoadBalancerNames:
            - { "Ref" : "AWSEBLoadBalancer" }
            - { "Ref" : "IntLB" }

O que eu gostaria de fazer é escrever uma condição que, se environment_ID = XYZ, aplique a criação do recurso e, se não, o ignore.

Eu estava procurando documentação e fóruns da AWS, mas não sei qual seria a abordagem correta.

Alguma idéia?

Obrigado!

    
por DaWe4444 04.05.2018 / 11:53

1 resposta

2

E se você criar uma condição e aplicar isso ao seu recurso?

Conditions: 
     CreateInternalELB: !Equals [ !Ref AWSEBEnvironmentId, XYZ ]
Resources:
    IntLB: 
        Type: AWS::ElasticLoadBalancing::LoadBalancer
        Condition: CreateInternalELB
        Properties:
            [...]

Altere XYZ para o seu ID de ambiente.

Eu apenas escrevi isso no meu telefone, então, por favor, desculpe qualquer erro de digitação. Não tenho certeza se você pode incluir condições como essa na estrutura do EB.

    
por 05.05.2018 / 11:18