验证 AWS-SAM Template/Reduce 查找错误的周转时间

Validate AWS-SAM Template/Reduce turnaround time to find errors

我在使用错误的关键字部署大型 SAM 模板后出现错误。

我写了 ServerSideEncryptionDefault 而不是 ServerSideEncryptionByDefault(缺少 By)。

    Type: AWS::S3::Bucket
    Properties:
      BucketEncryption:
        ServerSideEncryptionConfiguration:
          - ServerSideEncryptionDefault:
              SSEAlgorithm: AES256

出现此错误的周转时间约为一分钟,因为 CloudFormation 首先处理所有其他资源并在我的部署后期发现此错误。

是否可以在开始部署之前使用 linter 或其他工具检查代码?

我只找到 sam validate 而没有发现此类错误 (https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-cli-command-reference-sam-validate.html)。

The CloudFormation Linter 捕捉到这个:

E3002 Invalid Property Resources/Bucket/Properties/BucketEncryption/ServerSideEncryptionConfiguration/0/ServerSideEncryptionDefault

The CloudFormation Linter Visual Studio Code extension 如果您已安装,则在每次保存文件时运行 linter