app-workflow_engine Schemas

On this page:

workflowPayload

{ "$id": "workflowPayload", "title": "workflow import payload", "description": "A workflow import payload, that has expanded users and groups for transportation between environments", "type": "object", "properties": { "_id": { "$ref": "wfEngineCommon#/definitions/mongoObjectId" }, "name": { "$ref": "#/definitions/workflowName" }, "type": { "type": "string", "default": "automation" }, "description": { "type": [ "null", "string" ] }, "tasks": { "type": "object", "properties": { "workflow_start": { "type": "object", "properties": { "name": { "type": "string", "pattern": "^workflow_start$" }, "summary": { "type": "string", "pattern": "^workflow_start$" }, "groups": { "type": "array" }, "x": { "$ref": "wfEngineCommon#/definitions/x" }, "y": { "$ref": "wfEngineCommon#/definitions/y" } } }, "workflow_end": { "type": "object", "properties": { "name": { "type": "string", "pattern": "^workflow_end$" }, "summary": { "type": "string", "pattern": "^workflow_end$" }, "groups": { "type": "array" }, "x": { "$ref": "wfEngineCommon#/definitions/x" }, "y": { "$ref": "wfEngineCommon#/definitions/y" } } } }, "patternProperties": { "^[0-9a-f]{1,4}$": { "$ref": "#/definitions/anyTask" } }, "required": [ "workflow_start", "workflow_end" ], "additionalProperties": false }, "transitions": { "type": "object", "properties": { "workflow_start": { "type": "object" }, "workflow_end": { "type": "object" } }, "patternProperties": { "^[0-9a-f]{1,4}$": { "type": "object" } }, "required": [ "workflow_start", "workflow_end" ], "additionalProperties": false }, "font_size": { "type": "integer", "default": 12, "minimum": 6, "maximum": 24 }, "groups": { "$ref": "#/definitions/groups" }, "created": { "type": "string", "format": "date-time" }, "created_by": { "$ref": "#/definitions/user" }, "last_updated": { "type": "string", "format": "date-time" }, "last_updated_by": { "$ref": "#/definitions/user" } }, "additionalProperties": false, "required": [ "name", "type", "tasks", "transitions", "groups" ], "definitions": { "workflowName": { "type": "string", "examples": [ "My Workflow" ] }, "groups": { "type": "array", "items": { "type": "object", "properties": { "name": { "type": "string" }, "provenance": { "type": "string" } }, "required": [ "name", "provenance" ] } }, "user": { "type": "object", "properties": { "username": { "type": "string" }, "provenance": { "type": "string" } }, "required": [ "username", "provenance" ] }, "taskBase": { "type": "object", "properties": { "name": { "type": "string", "pattern": "^[$A-Za-z_][0-9A-Za-z_$]*$" }, "summary": { "type": "string" }, "description": { "type": "string" }, "app": { "type": "string" }, "variables": { "type": "object", "properties": { "incoming": { "type": "object" }, "outgoing": { "type": "object" }, "error": { "type": "string", "pattern": "" } }, "required": [ "incoming", "outgoing", "error" ] }, "deprecated": { "type": "boolean" }, "scheduled": { "type": "boolean" }, "groups": { "$ref": "#/definitions/groups" }, "x": { "$ref": "wfEngineCommon#/definitions/x" }, "y": { "$ref": "wfEngineCommon#/definitions/y" } }, "required": [ "name", "summary", "description", "app", "variables", "groups", "x", "y" ] }, "manualTask": { "allOf": [ { "$ref": "#/definitions/taskBase" }, { "type": "object", "properties": { "type": { "type": "string", "const": "manual" }, "view": { "type": "string" }, "groups": { "$ref": "#/definitions/groups" } }, "required": [ "type", "view", "groups" ] } ] }, "automaticTask": { "allOf": [ { "$ref": "#/definitions/taskBase" }, { "type": "object", "properties": { "type": { "type": "string", "const": "automatic" }, "actor": { "type": "string", "pattern": "^Pronghorn|\\$var\\.job\\.[a-zA-Z_0-9]{1,}|\\$var\\.[0-9a-f]{1,4}\\.[a-zA-Z_0-9]{1,}$" } }, "required": [ "type", "actor" ] } ] }, "operationTask": { "allOf": [ { "$ref": "#/definitions/taskBase" }, { "type": "object", "properties": { "type": { "type": "string", "const": "operation" } }, "required": [ "type" ] } ] }, "anyTask": { "oneOf": [ { "$ref": "#/definitions/manualTask" }, { "$ref": "#/definitions/automaticTask" }, { "$ref": "#/definitions/operationTask" } ] } } }