我可以在 openwhisk 中安排一次性操作吗?

Can I schedule a one-shot action in openwhisk?

我正在 IBM Bluemix 中使用 openwhisk,现在我正在寻找一种方法来安排一次性操作。

我知道我可以使用 'feed /whisk.system/alarms/alarm' 以 "cron" 的方式以固定的时间间隔 运行 操作。我要查找的内容类似于 at linux 命令。

我发现最接近的涉及另一个用于生成事件的服务器,但我希望尽可能 "serverless"。

另一个不理想的解决方案是使用 js setTimeout 但是......我想这会浪费执行时间。 (并且可能达到执行时间限制)

提前致谢。

使用带有适当字段的 cron 计划,并将 maxTriggers 参数设置为 1。

maxTriggers 参数确保在单个事件之后不会再次调用触发器。

可以从命令行创建一次性触发器。

这是一个在 1 月 1 日@00:00.

触发 运行 的例子
wsk trigger create new_year --feed /whisk.system/alarms/alarm
  -p cron '0 0 1 0 *' 
  -p maxTriggers 1 
  -p trigger_payload '{"message":"Happy New Year!"}'

开源库中有一个未解决的问题,可以为此类事件提供更好的支持。 https://github.com/apache/incubator-openwhisk-package-alarms/issues/89