更新时间:2024-07-02 GMT+08:00
分享

结构体说明

表1 EventDef结构体参数说明

名称

是否必选

参数类型

描述

payload_filter_request

否

String

参数解释:

事件的参数过滤路径。

约束限制:

必须是合法的JSONPath格式

默认取值:

$

payload_filter_response

否

String

参数解释:

事件的结果过滤路径。

约束限制:

必须是合法的JSONPath格式

默认取值:

$

event_source

是

String

参数解释:

事件触发类型

约束限制:

枚举,当前只支持“OBS”

取值范围:

OBS

默认取值:

无

trigger_type

否

Array String

参数解释:

OBS事件类型列表

约束限制:

枚举,OBS事件类型描述

默认取值:

无

trigger_prefix

否

String

参数解释:

OBS事件触发前缀

约束限制:

不支持正则

默认取值:

无

trigger_suffix

否

String

参数解释:

OBS事件触发后缀

约束限制:

不支持正则

默认取值:

无

trigger_bucket

否

String

参数解释:

OBS事件触发桶

约束限制:

trigger_bucket是已存在的桶

默认取值:

无

表2 Input结构体参数说明

名称

是否必选

参数类型

描述

parameter_name

是

String

参数解释:

输入参数名称。

约束限制:

  • 最多可定义60个。
  • 命名必须唯一。

取值范围:

由小写字母、数字和中划线“-”组成,长度为[1, 20]

默认取值:

无

type

是

  • string:字符串
  • integer:数字
  • float:浮点数
  • boolean:布尔值

参数解释:

参数类型。

取值范围:

  • string:字符串
  • integer:数字
  • float:浮点数
  • boolean:布尔值

默认取值:

无

description

否

String

参数解释:

参数描述信息。

取值范围:

长度为[0, 256]。

默认取值:

无

default

否

String

参数解释:

默认值

约束限制:

  • 默认值信息可在创建工作流实例时由外部输入替换;如果未填写默认值,外部输入将必须填写这个参数的值。
  • 默认值的类型和定义的参数类型必须统一。如果出现不一致,解析器可能会进行自动转换而导致出现与预期不符合的情况。

默认取值:

无

label

否

String

参数解释:

参数的标签,此处定义的标签可在创建堆栈时进行分类展示。

取值范围:

长度为[0, 64]。

默认取值:

无

constraints

否

map

参数解释:

参数约束,用于约束可以定义输入参数的合法值范围

默认取值:

无

invisible

否

Boolean

参数解释:

是否回显。

取值范围:

true:回显,返回值为******。

false:不回显。

默认取值:

无

表3 State公共域说明

名称

是否必选

参数类型

描述

start

否

bool

参数解释:

标识开始的state。

约束限制:

有且只有一个start为true的state。

取值范围:

true:标识此state为开始的state。

false:此state不为开始的state。

默认取值:

false

type

是

string

参数解释:

state的类型。

取值范围:

DELAY、SWITCH、OPERATION、EVENT、END、Noop。

默认取值:

无

payload_filter_in

否

string

参数解释:

过滤输入参数。

约束限制:

必须是合法的JSONPath格式。

默认取值:

$,表示不过滤。

payload_filter_out

否

string

参数解释:

过滤state的输出结果。

约束限制:

必须是合法的JSONPath格式。

默认取值:

$,表示不过滤。

state_name

是

string

参数解释:

state的名字定义。

取值范围:

由小写字母、数字和中划线“-”组成,长度为[1, 20]。

默认取值:

无

END State没有payload_filter_in和payload_filter_out属性

表4 EventState结构体参数说明

名称

是否必选

参数类型

描述

events

是

Array

参数解释:

定义等待的事件消息的json数组。每一个数组成员是一个event消息对象。

默认取值:

无

event_timeout

否

int

参数解释:

等待事件的最大时间,单位秒。

约束限制:

等于0时等同于不设置。默认值是30s

取值范围:

大于等于0且小于等于86400的整型。

默认取值:

无

表5 OperationState结构体参数说明

名称

是否必选

参数类型

说明

action_mode

否

String

参数解释:

任务action调用的模式,并行或者串行。

取值范围:

  • PARALLEL:并行
  • SEQUENTIAL:串行

默认取值:

SEQUENTIAL

actions

是

Array

参数解释:

定义action的json数组

约束限制:

必须定义1个或者以上的Action

默认取值:

无

next_state

是

String

参数解释:

表示下一个state的名字。

约束限制:

必须是工作流中的state名字

默认取值:

无

表6 SwitchState结构体参数说明

名称

是否必选

参数类型

描述

default

是

String

参数解释:

默认节点,标识如果所有分支匹配都没有命中,将默认流转到default指定的节点

约束限制:

必须是工作流中的state名字

默认取值:

无

choices

是

Array

参数解释:

路径选择

约束限制:

choices.size > 0

默认取值:

无

表7 DelayState结构体参数说明

名称

是否必选

参数类型

描述

time_delay

是

String

参数解释:

等待的时间。

取值范围:

必须大于0,最大值为86400,单位:秒。

默认取值:

无

next_state

是

String

参数解释:

表示下一个state的名字。

约束限制:

必须是工作流模板中的state名字

默认取值:

无

表8 Action结构体参数说明

名称

是否必选

参数类型

描述

action_name

是

String

参数解释:

action的名字。

约束限制:

要求state中唯一。

取值范围:

1-20长度的只含数字、字母、-和_的字符串。

默认取值:

无

function

是

String

参数解释:

用户自定义函数URN

约束限制:

function与function-template只能设置其中一个。

默认取值:

无

function_template

是

String

参数解释:

系统内置的函数模板URN

约束限制:

function与function-template只能设置其中一个。

默认取值:

无

invocation_mode

否

String

参数解释:

调用模式

取值范围:

  • SYNC:同步。
  • ASYNC:异步。

默认取值:

无

results

否

Array

参数解释:

Action失败后的捕获重试机制。

约束限制:

值是一个包含result定义的json数组,results如果存在时,size>=0

默认取值:

无

timeout

否

Int

参数解释:

Action的超时时间,最长等待时间。

取值范围:

大于等于0且小于等于300的整型,等于0时等同于不设置,单位:秒。

默认取值:

30

payload_filter

否

String

参数解释:

对结果进行过滤的路径。

约束限制:

必须是合法的JSONPath格式。

默认取值:

$

dynamic_source

否

Map

参数解释:

在创建工作流时会根据OBS自定义的函数模板创建属于用户的function,并指定该参数设置的参数值

约束限制:

必须是指定的参数名称,否则不生效

默认取值:

无

表9 ActionResult结构体参数说明

名称

是否必选

参数类型

描述

match

是

String

参数解释:

表示匹配的错误

取值范围:

MatchAny、States.ActionFailed、States.PermissionError、States.ParameterError、States.NotFound、States.TooManyRequests、States.FunctionStageUnavailable、States.FunctionStageOtherErrors

默认取值:

无

retry_interval

否

Int

参数解释:

表示重试的间隔时间。

取值范围:

大于等于0的整型数,单位:秒

默认取值:

无

max_retry

否

Int

参数解释:

表示最大重试次数。

取值范围:

大于等于0的整型数,等于0时表示不重试,单位:秒

默认取值:

3

next_state

否

String

参数解释:

表示下一个state的名字,String类型。

约束限制:

必须是工作流模板中的state名字。

默认取值:

无

is_terminal

是

Bool

参数解释:

表示是否异常中断该Action,默认为False。

约束限制:

注:如果设置为True,那么不必设置nex-state; 如果设置为False,则必须设置next-state。

取值范围:

True:异常中断该Action。

False:异常不中断该Action。

默认取值:

无

表10 Event结构体参数说明

名称

是否必选

参数类型

描述

event_expression

是

String

参数解释:

标识等待的事件

约束限制:

必须是event定义中存在的event-ref中event项的名字

默认取值:

无

action_mode

否

String

参数解释:

任务action调用的模式,并行或者串行。

取值范围:

  • PARALLEL:并行
  • SEQUENTIAL:串行

默认取值:

SEQUENTIAL

actions

否

Array

参数解释:

定义action的json数组。

约束限制:

如果存在则必须包含0个或者以上的Action

默认取值:

无

next_state

是

String

参数解释:

表示下一个state的名字。

约束限制:

必须是工作流模板中的state名字

默认取值:

无

表11 Choice结构体参数说明

名称

是否必选

参数类型

描述

path

是

string

参数解释:

用来从上一节点的输出中得到某个值,然后和用户预定义的值比较

默认取值:

无

value

是

string

参数解释:

用户预定义的值

默认取值:

无

next_state

是

string

参数解释:

匹配到后转到下一个state的名字

约束限制:

必须是工作流模板中的state名字

默认取值:

无

表12 Tag结构体参数说明

名称

是否必选

参数类型

描述

key

是

String

参数解释:

Tag名称。

取值范围:

由大写或小写的英文字母、数字、下划线和连字符组成,长度在1到256个字符之间。

默认取值:

无

value

是

String

参数解释:

Tag值。

取值范围:

长度在1到256之间的字符串。

默认取值:

无

表13 TemplateItem结构体说明

名称

参数类型

说明

name

String

参数解释:

工作流的名称

约束限制:

名称必须以字母或数字开头,只能由字母、数字、下划线和中划线组成,长度小于等于64个字符,且不能重名。

默认取值:

无

created_at

String

参数解释:

系统记录的创建工作流模板的时间

默认取值:

无

表14 GraphItem结构体说明

名称

参数类型

说明

name

String

参数解释:

工作流的名称

约束限制:

名称必须以字母或数字开头,只能由字母、数字、下划线和中划线组成,长度小于等于64个字符,且不能重名。

默认取值:

无

created_at

String

参数解释:

系统记录的创建工作流模板的时间

默认取值:

无

graph_urn

String

参数解释:

工作流的URN

默认取值:

无

表15 Rule结构体

名称

是否必选

参数类型

描述

id

是

String

参数解释:

策略规则ID。

约束限制:

策略中不允许出现相同规则ID。

取值范围:

由大写或小写的英文字母、数字、下划线和连字符组成,长度在1到256个字符之间。

默认取值:

无

graph_urn

是

String

参数解释:

工作流URN。

约束限制:

需要先创建此工作流

默认取值:

无

events

是

Array

参数解释:

OBS事件列表。

取值范围:

请参考OBS事件类型描述。

默认取值:

无

prefix

否

String

参数解释:

对象名前缀,用于指定的对象名关键字,根据定义的前缀,输入需要过滤的对象的关键字信息,字符越长匹配精度越高。

约束限制:

prefix和suffix加起来长度最大为1024个字符。

取值范围:

0到1204长度的字符串

默认取值:

无

suffix

否

String

参数解释:

对象名后缀,用于指定的对象名关键字,根据定义的后缀,输入需要过滤的对象的关键字信息,字符越长匹配精度越高。

约束限制:

prefix和suffix加起来长度最大为1024个字符。

取值范围:

0到1204长度的字符串

默认取值:

无

表16 ExecutionDetail结构体

名称

参数类型

说明

graph_urn

String

参数解释:

工作流的URN

默认取值:

无

execution_urn

String

参数解释:

运行实例的URN

默认取值:

无

started_at

String

参数解释:

运行实例启动时间

默认取值:

无

stopped_at

String

参数解释:

运行实例结束时间,可选字段

默认取值:

无

execution_state

String

参数解释:

运行实例总体状态

默认取值:

无

execution_type

String

参数解释:

运行实例的触发类型。

取值范围:

  • APICALL
  • TRIGGERCALL

默认取值:

无

start_state

String

参数解释:

工作流的第一个节点

默认取值:

无

isTest

bool

参数解释:

是否是通过启动工作流测试启动的实例。

取值范围:

true:通过启动工作流测试启动的实例

false:不通过启动工作流测试启动的实例

默认取值:

无

execution_name

String

参数解释:

运行实例的名字

默认取值:

无

output

String

参数解释:

运行实例的输出

约束限制:

当前实例未运行结束时,该字段不存在。

默认取值:

无

input

String

参数解释:

运行实例启动时的输入

默认取值:

无

state_map

字典数据结构

参数解释:

包括每个state信息。

取值范围:

参见ExecutionState结构体

默认取值:

无

表17 ExecutionState参数说明

名称

参数类型

说明

key

String

参数解释:

工作流的节点名称。

约束限制:

此名称由用户提供,命名不固定,如"next1"。

默认取值:

无

state_name

String

参数解释:

state的名称

默认取值:

无

status

String

参数解释:

当前state的状态

默认取值:

无

started_at

String

参数解释:

state开始时间

默认取值:

无

stopped_at

String

参数解释:

state结束的时间,可选字段,state结束含有该项

默认取值:

无

type

String

参数解释:

state的类型

默认取值:

无

input

String

参数解释:

当前state启动时的输入,可选字段,state结束含有该项

默认取值:

无

output

String

参数解释:

当前state启动时的输出

默认取值:

无

相关文档