工作流可能需要在运行时获取的日期,而不是硬编码的日期。这可以通过 sprig 函数或 Expr 提供。
Sprig 文档参考:
Expr 文档参考:
注意
在 masterminds 的文档中使用的语法与在 Orchestrator 中使用的语法不同。例如,now | date "2006-01-02" 变为 {{sprig.date("2006-01-02", sprig.now())}}
使用场景
获取当前时间/日期
-
要在特定工作流执行时仅获取日期,在任何参数字段中输入:
-
Sprig:
{{sprig.now()}} -
Expr:
{{ now() }}
-
-
在运行时,日期以此格式返回:
"2023-02-24 11:33:01.819987888 +0000 UTC m=+77750.651866821"
格式化日期
-
要格式化日期,请使用:
-
Sprig:
sprig.date(“FORMAT_STRING”, “DATE”) -
Expr:
DATE.Format("FORMAT_STRING"
提供一个字符串,格式要求为引用此标准日期:Mon Jan 2 15:04:05 MST 2006 (MST 是 GMT-0700)
-
-
示例:
-
Sprig:
{{sprig.date("02.01.2006 - 15:04", sprig.now())}}结果为“24.02.2023 - 11:36”(在撰写时)。 -
Expr:
{{ now().Format("02.01.2006 - 15:04") }}
要以 TMS API 所需的格式提供日期:
-
Sprig: ("2019-08-24T14:15:22Z") 调用
{{sprig.date("2006-01-02T15:04:05Z", sprig.now())}} -
Expr:
{{ now().Format("2006-01-02T15:04:05Z") }}
-
修改日期
-
要根据示例进行计算
-
Sprig:
sprig.now(),使用sprig.dateModify(“MODIFY_VALUE”, “DATE”)。 -
Expr:
DATE.Add(duration("MODIFY_VALUE"))
-
-
例如:
-
Sprig:
{{sprig.dateModify("24h", sprig.now())}} -
Expr:
{{ now().Add(duration(“24h”)) }}
(在2月24日12:43运行)结果为
"2023-02-25 11:43:48.073101611 +0000 UTC m=+164796.904980545"- 初始日期后的24小时。 -
-
可以使用组合。
要获取执行的时间和日期,并加上 24 小时,格式化为 TMS API,请将此表达式传递到指定字段:
-
Sprig:
{{sprig.date("2006-01-02T15:04:05Z", sprig.dateModify("24h", sprig.now()))}} -
Expr:
{{ now().Add(duration("24.h")).Format("2006-01-02T15:04:05Z") }}
结果为
"2023-02-25T11:50:50Z"(在2月24日11:50运行时)。 -
-
日期应修改的值可以用小时表示,如果需要减去该值,则在前面加上
“-”。也可以使用像“-1.5h”这样的分数。