更新时间: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启动时的输出

默认取值:

相关文档