CloudFormation: Как использовать значение Fn :: Import в условиях? - PullRequest
0 голосов
/ 28 мая 2020

У меня есть два стека: стек развертывания VP C и стек развертывания моего приложения. В стеке VP C я экспортирую значение, называемое EnvType, которое может быть dev, prod или staging. В соответствии с этим экспортированным значением я хочу развернуть один ресурс в стеке развертывания приложения. Если EnvType = dev, не развертывайте его. В противном случае разверните его. Как мне этого добиться?

1 Ответ

1 голос
/ 29 мая 2020

Я не думаю, что вы сможете это сделать, поскольку ImportValue не может использоваться в условиях .

Вы можете легко проверить это, используя два образца шаблона:

bucket1.yaml (экспорт EnvType)

---
Resources:

  MyBucket:
    Type: AWS::S3::Bucket

Outputs:

  EnvType:
    Value: "prod"
    Export:
      Name: EnvType

bucket2.yaml (импортирует EnvType и пытается использовать его в IsProd состояние)

---
Conditions:

  IsProd:
    !Equals [!ImportValue EnvType, 'prod']

Resources:

  MyBucket2:
    Condition: IsProd
    Type: AWS::S3::Bucket
...