Ошибка проверки свойства в Cloudformation - PullRequest
1 голос
/ 19 февраля 2020

Следующий фрагмент взят из шаблона формирования Cloudformation:

...
LambdaFunctionAssociations:
  - !If
    - ProtectDistribution
    -
      - EventType: viewer-request
        LambdaFunctionARN: !GetAtt LambdaEdgeProtection.Outputs.CheckAuthHandler
      - EventType: origin-response
        LambdaFunctionARN: !GetAtt LambdaEdgeProtection.Outputs.HttpHeadersHandler
    - !Ref AWS::NoValue
...

Это часть DefaultCacheBehavior в DistributionConfig дистрибутива CloudFront. Это выдает мне эту ошибку при попытке создать стек:

Property validation failure: [Value of property {/DistributionConfig/DefaultCacheBehavior/LambdaFunctionAssociations/0} does not match type {Object}]

Куда я иду не так, пожалуйста?

1 Ответ

1 голос
/ 19 февраля 2020

В - !If состоянии вашего кода вы уже объявили массив перед условием if, и если условие выполнено, - - EventType: viewer-request здесь вы снова предоставляете массив, что неверно. Вы должны попробовать это так,

...
LambdaFunctionAssociations:
  - !If
    - ProtectDistribution
    - EventType: viewer-request
      LambdaFunctionARN: !GetAtt LambdaEdgeProtection.Outputs.CheckAuthHandler
    - !Ref AWS::NoValue
  - !If
    - ProtectDistribution
    - EventType: origin-response
      LambdaFunctionARN: !GetAtt LambdaEdgeProtection.Outputs.HttpHeadersHandler
    - !Ref AWS::NoValue 
...
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...