Ошибка проверки модели (#/EventSourceArn: ошибка проверки ограничения для ключевого слова [шаблон])

#amazon-web-services #amazon-cloudformation

Вопрос:

При формировании облака AWS я сталкиваюсь с ошибкой проверки ниже:

 Model validation failed (#/EventSourceArn: failed validation constraint for keyword [pattern])
 

канарейка.ямл

 Canary:
    Type: AWS::Synthetics::Canary
    Properties:
      Name:
        Fn::Sub: test12345678901234567889-development
      Code:
        Handler: exports.handler
        Script: |
          const https = require('https')
          const URL = process.env.URL;
          var synthetics = require('Synthetics');
          const log = require('SyntheticsLogger');
          log.info('URL:' URL);
          exports.handler = async function(event) {
            const promise = new Promise(function(resolve, reject) {
              https.get(URL, (res) => {
                  resolve(res.statusCode)
                }).on('error', (e) => {
                  reject(Error(e))
                })
              })
            return promise
          }
      ExecutionRoleArn:
        Fn::GetAtt:
          - CloudWatchSyntheticsRole
          - Arn
      RuntimeVersion: syn-nodejs-puppeteer-3.2
      RunConfig:
        TimeoutInSeconds: 60
        EnvironmentVariables:
          URL : !Sub "http://{{resolve:ssm:/${Portfolio}/${ApplicationEnvironmentTag}/common/ApplicationLoadBalancerUrl}}/management/health"
      ArtifactS3Location:
        Fn::Join:
          - ''
          - - s3://
            - Ref: ResultsBucket
      StartCanaryAfterCreation: True
      Schedule:
        Expression: rate(1 minute) # every minute
        DurationInSeconds: 0 # run indefinitely
      SuccessRetentionPeriod: 90
      FailureRetentionPeriod: 180
 

Комментарии:

1. github.com/aws-cloudformation/cloudformation-resource-schema/…

Ответ №1:

Наконец, я нашел проблему

Проблема связана с шаблоном и проверкой имени канарейки.

Имя должно содержать не более 21 символа. Мое было больше, чем это.

https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-synthetics-canary.html#cfn-synthetics-canary-name