我正在从 Azure 容器注册表中的 Docker 镜像的 https Webhook 触发 Azure 逻辑应用。
工作流程大致为:
-
When a HTTP request is received
-
Queue a new build
-
Delay until
-
FinishTime
的Queue a new build
-
Delay until
操作不起作用,因为已排队 FinishTime
是 0001-01-01T00:00:00
.
它提示格式错误,所以我手动添加了 Z
FinishTime
之后关键字。
现在时间戳的格式正确,但是时间戳 0001-01-01T00:00:00Z
显然没有意义,后续步骤会立即执行。
我缺少什么吗?
编辑:Queue a new build
对 Azure 管道构建进行排队。 IE。 FinishTime
属性来自管道。
最佳答案
您需要设置一个 future 的时间戳,您为“延迟直到”操作设置的时间戳 0001-01-01T00:00:00Z
不是 future 时间。如果您将时间戳设置为 2020-04-02T07:30:00Z
,“延迟直至”操作将会生效。
更新:
我认为“延迟直到”不能达到您所期望的效果,但也许您可以引用下面的操作。只需添加一个“条件” Action 来判断FinishTime
是否大于当前时间。
“条件”中的表达式为:
sub(ticks(variables('FinishTime')), ticks(utcNow()))
总之,如果FinishTime
大于当前时间-->执行“延迟直到”操作。如果 FinishTime
小于当前时间 --> 执行您想要的任何其他操作。(顺便说一下,您需要注意时间戳的时区,也许您需要转换所有时区均转换为 UTC)
关于azure - “延迟直到” 'Queue a new build' 的完成时间在 Azure 逻辑应用程序中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60945500/