SAM模板 - 始终为lambda启用事件触发器

问题描述 投票:0回答:1

我有一个使用SAM模板创建的lambda函数,它每隔5分钟安排一次事件触发器。

当lambda第一次创建时,事件被启用。但是,当有人手动禁用触发器时,重新运行堆栈不会再次启用它。

原生云的形成在State中有一个名为AWS::Events::Rule的属性。但是SAM功能的Events属性不支持此功能。需要注意的是,此事件属性由SAM引擎转换为AWS :: Events :: Rule。

我尝试在SAM中添加相同的State属性,但这不起作用。

现在问题是如何确保在使用SAM时始终启用事件。

这有一个hack可用。

示例代码:

MyUpdater:
Type: 'AWS::Serverless::Function'
Properties:
  Handler: myupdater.lambda_handler
  Runtime: python3.6
  FunctionName: "myupdater"
  CodeUri: ./code
  Description: Sample updater lambda
  MemorySize: 128
  Timeout: 60
  Role: !ImportValue myIamRole
  KmsKeyArn: !ImportValue myKeyArn
  Events:
    Timer:
      Type: Schedule
      Properties:
        Schedule: rate(5 minutes)

提前致谢

amazon-web-services aws-lambda aws-sam
1个回答
1
投票

今天这是不可能的。我们正在考虑将来的此功能(CFN属性传递)。

© www.soinside.com 2019 - 2024. All rights reserved.