如何在GG环境外触发Lambda以进行测试目的

0

【以下的问题经过翻译处理】 你好!

我们正在基于GGV2开发一种物联网设备,并且有一些组件是我们制作的Lambda函数。我们可以成功部署和运行它们,但是事件来源相当有限。如果我想触发它,我需要:

  1. 另外一个组件发起我想要的调用。这很糟糕,因为每次我想要发送不同的负载到Lambda时,我都需要重新部署那个组件,并且它的负担并没有帮助隔离组件的开发。
  2. 从IoT Core触发。不是理想的方法,因为我必须指定一个主题,而且甚至不能是设备特定的,因为那将需要每个设备都有自己部署这些组件的步骤。

以下是具体的问题:

  1. 什么是最好的手动触发GG Lambda的方法?您是否计划添加一项功能以触发像在AWS控制台> Lambda中那样触发它?
  2. 您是否计划添加在IOT_CORE事件源中使用食谱变量的选项?那将会很好。
  3. 是否可以创建Lambda函数的本地部署?这对迭代速度来说非常方便。

我只关心开发/测试,对于生产来说它是本地主题。

最后,我们知道IDP。我们计划使用它,但对于开发来说,强制拥有一个就绪的设备并不方便。事实上,我们通常将GG运行在Docker容器中。

profile picture
专家
已提问 6 个月前3 查看次数
1 回答
0

【以下的回答经过翻译处理】 你好,

感谢您的问题。

对于问题#1,很遗憾,目前您描述的是触发GG Lambda的唯一方法。我们将考虑将来的改进建议。如果您的lambda函数不需要特定设备进行测试,则最好先在AWS Lambda中进行测试,然后再部署到Greengrass。

对于问题#2,您所说的“recipe variables”是什么意思?您是指部署配置吗?您可以通过更新默认配置中的“pubsubTopics”字段在部署过程中覆盖事件源。

对于问题#3,当您说“为Lambda函数创建本地部署”时,我将其解释为使用Greengrass CLIhttps://docs.aws.amazon.com/greengrass/v2/developerguide/gg-cli-deployment.html更新您的lambda函数并将其部署到GG设备。目前,Greengrass CLI仅支持更新和部署常规组件。与问题1类似,如果您的lambda相对孤立且不需要特定设备进行测试,则建议您先在AWS Lambda中开发和测试。

profile picture
专家
已回答 6 个月前

您未登录。 登录 发布回答。

一个好的回答可以清楚地解答问题和提供建设性反馈,并能促进提问者的职业发展。

回答问题的准则