Skip to content

pipeline_tree 协议说明

韩数 edited this page Nov 6, 2023 · 1 revision

Pipeline生成树字段摘要

当调用pipeline_tree=builder.build_tree()之后,我们可快速获得pipeline流程对应的生成树,生成树对应的字段和含义如下:

pipeline_tree:
  description: The builded tree of bamboo engine
  type: dict
  properties:
    id: 
      description: The uuid of tree
      type: string
    start_event: 
      description: The start event node of tree
      type: dict
      properties:
        id:
          description: The uuid of start event node
          type: string
        incoming:
          description: The incoming flow of start event node
          type: string
        name: 
          description: The name of start event node
          type: string
        outgoing:
          description: The outgoing flow of start event node
          type: string
        type: 
          description: The node type of start event node
          type: string
    end_event: 
      description: The end event node of tree
      type: dict
      properties:
        id:
          description: The uuid of end event node
          type: string
        incoming:
          description: The incoming flows of end event node
          type: list[string]
        name: 
          description: The name of end event node
          type: string
        outgoing:
          description: The outgoing flow of end event node
          type: string
        type: 
          description: The node type of end event node
          type: string
    activities: 
      description: The activity nodes in pipeline
      type: dict
      properties: 
        $node_id:
          description: The activity node
          properties: 
            id: 
              description: The uuid of activity node
              type: string
            name: 
              description: The name of activity node
              type: string
            incoming: 
              description: The incoming flows of activity node
              type: list[string]
            outgoing:
              description: The outgoing flow of activity node
              type: string
            type: 
              description: The node type of activity node
              type: string
            error_ignore: 
              description: If the failure of node be ignored
              type: boolean
            optional:
              description: If the node can be excluded when executing
              type: boolean
            retryable: 
              description: If the node can be retried
              type: boolean
            skippable: 
              description: If the node can be skipped
              type: boolean
            timeout: 
              description: Deprecated field
            component: 
              description: The component which defines the activity of the node
              type: dict
              properties: 
                code: 
                  description: The unique code of the component
                  type: string
                inputs: 
                  description: The inputs defined in the component
                  type: dict
    flows:
      description: The flows in pipeline
      type: dict
      properties: 
        $flow_id:
          description: The flow
          type: dict
          properties: 
            id: 
              description: The uuid of flow
              type: string
            source:
              description: The node id which is the source of flow
              type: string
            target:
              description: The node id which is the target of flow
              type: string
            is_default:
              description: Deprecated field
    gateways: 
      description: The gateways in pipeline
      type: dict
      properties: 
        $gateway_id:
          description: The gateway
          type: dict
          properties: 
            id: 
              description: The uuid of gateway
              type: string
            name: 
              description: The name of gateway
              type: string
            outgoing: 
              description: The outgoing flows of gateway
              type: list
    data: 
      description: pipeline data
      type: dict
      properties: 
        inputs: 
          description: The inputs of pipeline
          type: dict
        outputs:
          description: The outputs of pipeline
          type: list

下面是一个流程树生成之后的示例:

{
    "activities": {
        "eb456a70affdf47ae9d96c5d196d36b09": {
            "component": {
                "code": "example_component",
                "inputs": {}
            },
            "error_ignorable": false,
            "id": "eb456a70affdf47ae9d96c5d196d36b09",
            "incoming": [
                "f216d744eae614b71b3ca88002fe81439"
            ],
            "name": "",
            "optional": false,
            "outgoing": "f42b0a808b63f4315bb9b51159617797c",
            "retryable": true,
            "skippable": true,
            "timeout": null,
            "type": "ServiceActivity"
        }
    },
    "data": {
        "inputs": {},
        "outputs": []
    },
    "end_event": {
        "id": "e1f45d04d298a4a1e8510fb6d7dd496d2",
        "incoming": [
            "f42b0a808b63f4315bb9b51159617797c"
        ],
        "name": "",
        "outgoing": "",
        "type": "EmptyEndEvent"
    },
    "flows": {
        "f216d744eae614b71b3ca88002fe81439": {
            "id": "f216d744eae614b71b3ca88002fe81439",
            "is_default": false,
            "source": "e817acc99284348cf9caa45fe0dd0cff4",
            "target": "eb456a70affdf47ae9d96c5d196d36b09"
        },
        "f42b0a808b63f4315bb9b51159617797c": {
            "id": "f42b0a808b63f4315bb9b51159617797c",
            "is_default": false,
            "source": "eb456a70affdf47ae9d96c5d196d36b09",
            "target": "e1f45d04d298a4a1e8510fb6d7dd496d2"
        }
    },
    "gateways": {},
    "id": "pa08352b3bded40768f90912731820b87",
    "start_event": {
        "id": "e817acc99284348cf9caa45fe0dd0cff4",
        "incoming": "",
        "name": "",
        "outgoing": "f216d744eae614b71b3ca88002fe81439",
        "type": "EmptyStartEvent"
    }
}
Clone this wiki locally