如何在 Cloudformation Yaml 文件中获取最新版本的 SSM 参数

How to fetch latest version of SSM parameter on Cloudformation Yaml file

我有一个 Cloudformation Yaml 文件,它在其中创建了大量资源,其中之一是带有 Windows 的 EC2。我的问题是我需要自动选择最新的 AMI,我创建了一个 Lambda 函数,它检索最新的 AMI ID 并存储在 SSM 参数中,然后使用带有 YAML 模板的 Cloudformation 我可以使用以下命令访问 ssm

{{resolve:ssm:parameter_name:version_number_int}}

但我的问题是它并不总是相同的版本号,每次有新的 AMI 时它都会更改,有没有什么方法可以让我始终获得最新版本?或停止版本控制或其他什么?

谢谢。

SSM Parameter Store 提供public parameters 来检索最新的 AMI。

# Use public Systems Manager Parameter
Parameters:
  LatestAmiId:
    Type: 'AWS::SSM::Parameter::Value<AWS::EC2::Image::Id>'
    Default: '/aws/service/ami-windows-latest/Windows_Server-2019-English-Full-Base'

Resources:
 Instance:
    Type: 'AWS::EC2::Instance'
    Properties:
      ImageId: !Ref LatestAmiId