我一直在尝试使用Serverless部署一个Lambda函数,以便在Cron计划下每小时调用它。当它被调用时,我希望Lambda内部的事件由我的JSON输入填充,而不是默认的Cron事件信息。
在AWS控制台中,我可以手动进入Lambda的Cron触发器,并将输入从“匹配事件”更改为“常量(JSON文本)”,以获得我想要的结果。由于Serverless在部署Lambda时创建了此规则,因此我认为应该通过serverless.yml文件中的配置来更改输入的方式。但是,在搜索Serverless文档时,我没有找到任何相关内容。因此,我现在想知道是否可以通过Serverless在其当前状态下实现这一点,如果可以,应该如何操作。
任何建议都将不胜感激。
编辑:有一个更新,应该添加了这个功能,但是我仍然无法使用Serverless 1.3.0(也已经测试过1.2.0)使用JSON进行部署计划任务。我使用的一些serverless.yml示例如下:
在AWS控制台中,我可以手动进入Lambda的Cron触发器,并将输入从“匹配事件”更改为“常量(JSON文本)”,以获得我想要的结果。由于Serverless在部署Lambda时创建了此规则,因此我认为应该通过serverless.yml文件中的配置来更改输入的方式。但是,在搜索Serverless文档时,我没有找到任何相关内容。因此,我现在想知道是否可以通过Serverless在其当前状态下实现这一点,如果可以,应该如何操作。
任何建议都将不胜感激。
编辑:有一个更新,应该添加了这个功能,但是我仍然无法使用Serverless 1.3.0(也已经测试过1.2.0)使用JSON进行部署计划任务。我使用的一些serverless.yml示例如下:
functions:
test:
handler: test.test
description: "test serverless Lambda"
memorySize: 128
timeout: 300
events:
- schedule:
rate: rate(10 minutes)
input:
key: value
- schedule:
rate: rate(10 minutes)
input: '{"key": "value"}'
- schedule:
rate: rate(10 minutes)
input:
key: 'value'
有人能否评论一下1.3.0版本中Serverless的此功能状态,以及我的serverless.yml是否正确?
编辑2:发布工作的serverless.yml
functions:
test:
handler: test.test
description: "test serverless Lambda"
memorySize: 128
timeout: 300
events:
- schedule:
rate: rate(10 minutes)
enabled: true
input:
key: value
- schedule:
rate: rate(10 minutes)
input: '{"key": "value"}'
enabled: true
- schedule:
rate: rate(10 minutes)
input:
key: 'value'
enabled: true