{
  "created": "2021-10-19T16:37:33.987Z",
  "createdVersion": "5.42.1",
  "created_by": {
    "provenance": "Itential-Okta",
    "username": "zach.baskin@itential.com",
    "firstname": "Zach",
    "inactive": false
  },
  "description": "",
  "font_size": 12,
  "inputSchema": {
    "type": "object",
    "properties": {
      "templateName": {
        "title": "template",
        "type": "string",
        "examples": [
          "show version"
        ]
      },
      "templateVariables": {
        "type": [
          "array",
          "boolean",
          "null",
          "number",
          "object",
          "string"
        ]
      },
      "devices": {
        "type": [
          "array",
          "boolean",
          "null",
          "number",
          "object",
          "string"
        ]
      },
      "zeroTouch": {
        "type": [
          "array",
          "boolean",
          "null",
          "number",
          "object",
          "string"
        ]
      },
      "failureType": {
        "type": "string"
      }
    },
    "required": [
      "templateName",
      "templateVariables",
      "devices",
      "zeroTouch",
      "failureType"
    ]
  },
  "lastUpdatedVersion": "5.40.5-2021.1.52.0",
  "last_updated": "2021-10-20T18:02:01.706Z",
  "last_updated_by": {
    "provenance": "Itential-Okta",
    "username": "kay.wolfe@itential.com",
    "firstname": "Kay",
    "inactive": false,
    "email": "kay.wolfe@itential.com"
  },
  "name": "Command Template Runner",
  "outputSchema": {
    "type": "object",
    "properties": {
      "templateName": {
        "title": "template",
        "type": "string",
        "examples": [
          "show version"
        ]
      },
      "templateVariables": {
        "type": [
          "array",
          "boolean",
          "null",
          "number",
          "object",
          "string"
        ]
      },
      "devices": {
        "type": [
          "array",
          "boolean",
          "null",
          "number",
          "object",
          "string"
        ]
      },
      "zeroTouch": {
        "type": [
          "array",
          "boolean",
          "null",
          "number",
          "object",
          "string"
        ]
      },
      "failureType": {
        "type": "string"
      },
      "_id": {
        "type": "string",
        "pattern": "^[0-9a-f]{24}$"
      },
      "initiator": {
        "type": "string"
      },
      "templateResults": {
        "type": [
          "array",
          "boolean",
          "null",
          "number",
          "object",
          "string"
        ]
      },
      "outcome": {
        "type": "string"
      }
    }
  },
  "tasks": {
    "workflow_start": {
      "name": "workflow_start",
      "groups": [],
      "x": 0,
      "y": 0.5
    },
    "workflow_end": {
      "name": "workflow_end",
      "groups": [],
      "x": 1,
      "y": 0.5
    },
    "8ce4": {
      "name": "RunCommandTemplate",
      "canvasName": "RunCommandTemplate",
      "summary": "Run Command Template",
      "description": "Runs the input Command Template against input devices.",
      "location": "Application",
      "locationType": null,
      "app": "MOP",
      "type": "automatic",
      "displayName": "MOP",
      "variables": {
        "incoming": {
          "template": "$var.job.templateName",
          "variables": "$var.job.templateVariables",
          "devices": "$var.job.devices"
        },
        "outgoing": {
          "mop_template_results": "$var.job.templateResults"
        },
        "error": "",
        "decorators": []
      },
      "deprecated": false,
      "matched": [
        {
          "key": "canvasName",
          "highlightString": "<span class='highlight-string'>RunCommand</span>Template"
        }
      ],
      "groups": [],
      "actor": "Pronghorn",
      "x": 0.25365434221840066,
      "y": 0.4969173859432799,
      "scheduled": false
    },
    "81d8": {
      "name": "viewTemplateResults",
      "canvasName": "viewTemplateResults",
      "summary": "View Command Template Results",
      "description": "This window displays the individual results of each command that is run on the command template, whether it be PASS or FAIL.",
      "location": "Application",
      "app": "MOP",
      "displayName": "MOP",
      "type": "manual",
      "variables": {
        "incoming": {
          "mop_template_results": "$var.8ce4.mop_template_results"
        },
        "outgoing": {},
        "error": "",
        "decorators": []
      },
      "view": "/mop/task/viewTemplateResults",
      "deprecated": false,
      "matched": [
        {
          "key": "canvasName",
          "highlightString": "<span class='highlight-string'>viewTe</span>mplateResults"
        }
      ],
      "groups": [],
      "x": 0.4075666380051591,
      "y": 0.3218249075215783,
      "scheduled": false
    },
    "6bd2": {
      "name": "evaluation",
      "canvasName": "evaluation",
      "summary": "Eval Auto Approve",
      "description": "Evaluates if the command template passed all tests and if ZeroTouch is 'true.' A failure of either presents a window to more closely examine the results.",
      "location": "Application",
      "locationType": null,
      "app": "WorkFlowEngine",
      "type": "operation",
      "displayName": "WorkFlowEngine",
      "variables": {
        "incoming": {
          "all_true_flag": true,
          "evaluation_groups": [
            {
              "all_true_flag": true,
              "evaluations": [
                {
                  "query": "result",
                  "operand_1": {
                    "variable": "mop_template_results",
                    "task": "8ce4"
                  },
                  "operator": "==",
                  "operand_2": {
                    "variable": true,
                    "task": "static"
                  }
                },
                {
                  "query": "",
                  "operand_1": {
                    "variable": "zeroTouch",
                    "task": "job",
                    "editable": true
                  },
                  "operator": "==",
                  "operand_2": {
                    "variable": true,
                    "task": "static"
                  }
                }
              ]
            }
          ]
        },
        "outgoing": {
          "return_value": null
        }
      },
      "deprecated": false,
      "matched": [
        {
          "key": "canvasName",
          "highlightString": "<span class='highlight-string'>eval</span>uation"
        },
        {
          "key": "summary",
          "highlightString": "Run <span class='highlight-string'>Eval</span>uation Task"
        },
        {
          "key": "description",
          "highlightString": "Run an <span class='highlight-string'>eval</span>uation"
        }
      ],
      "groups": [],
      "x": 0.4058469475494411,
      "y": 0.49815043156596794
    },
    "f1a7": {
      "name": "ViewData",
      "canvasName": "ViewData",
      "summary": "View Data",
      "description": "Presents a window with the final opportunity to retry the command template or exit with a failure state.",
      "location": "Application",
      "app": "WorkFlowEngine",
      "displayName": "Tools",
      "type": "manual",
      "variables": {
        "incoming": {
          "header": "Template Failed",
          "message": "The Command Template has failed. Do you want to retry or skip?",
          "body": "",
          "variables": {},
          "btn_success": "Retry",
          "btn_failure": "$var.job.failureType"
        },
        "outgoing": {},
        "error": "",
        "decorators": []
      },
      "view": "/workflow_engine/task/ViewData",
      "deprecated": false,
      "matched": [
        {
          "key": "canvasName",
          "highlightString": "<span class='highlight-string'>ViewData</span>"
        }
      ],
      "groups": [],
      "x": 0.49699054170249357,
      "y": 0.11713933415536375,
      "scheduled": false
    },
    "add9": {
      "name": "evaluation",
      "canvasName": "evaluation",
      "summary": "Eval Success",
      "description": "Evaluates whether the command template passed all tests.",
      "location": "Application",
      "locationType": null,
      "app": "WorkFlowEngine",
      "type": "operation",
      "displayName": "WorkFlowEngine",
      "variables": {
        "incoming": {
          "all_true_flag": false,
          "evaluation_groups": [
            {
              "all_true_flag": false,
              "evaluations": [
                {
                  "query": "result",
                  "operand_1": {
                    "variable": "mop_template_results",
                    "task": "8ce4",
                    "editable": true
                  },
                  "operator": "==",
                  "operand_2": {
                    "variable": true,
                    "task": "static"
                  }
                }
              ]
            }
          ]
        },
        "outgoing": {
          "return_value": null
        }
      },
      "deprecated": false,
      "matched": [
        {
          "key": "canvasName",
          "highlightString": "<span class='highlight-string'>eval</span>uation"
        },
        {
          "key": "summary",
          "highlightString": "Run <span class='highlight-string'>Eval</span>uation Task"
        },
        {
          "key": "description",
          "highlightString": "Run an <span class='highlight-string'>eval</span>uation"
        }
      ],
      "groups": [],
      "x": 0.4972290144024077,
      "y": 0.49938347718865606
    },
    "dab6": {
      "name": "newVariable",
      "canvasName": "newVariable",
      "summary": "Create a Job Variable",
      "description": "Create a new Job variable by Job ID and assign it a value.",
      "location": "Application",
      "locationType": null,
      "app": "WorkFlowEngine",
      "type": "operation",
      "displayName": "WorkFlowEngine",
      "variables": {
        "incoming": {
          "name": "outcome",
          "value": "$var.job.failureType"
        },
        "outgoing": {
          "value": null
        }
      },
      "deprecated": false,
      "matched": [
        {
          "key": "canvasName",
          "highlightString": "<span class='highlight-string'>new</span>Variable"
        },
        {
          "key": "description",
          "highlightString": "Create a <span class='highlight-string'>new</span> Job variable by Job ID and assign it a value."
        }
      ],
      "groups": [],
      "x": 0.7441197434069851,
      "y": 0.2923387096774194
    },
    "993f": {
      "name": "newVariable",
      "canvasName": "newVariable",
      "summary": "Create a Job Variable",
      "description": "Create a new Job variable by Job ID and assign it a value.",
      "location": "Application",
      "locationType": null,
      "app": "WorkFlowEngine",
      "type": "operation",
      "displayName": "WorkFlowEngine",
      "variables": {
        "incoming": {
          "name": "outcome",
          "value": "success"
        },
        "outgoing": {
          "value": null
        }
      },
      "deprecated": false,
      "matched": [
        {
          "key": "canvasName",
          "highlightString": "<span class='highlight-string'>new</span>Variable"
        },
        {
          "key": "description",
          "highlightString": "Create a <span class='highlight-string'>new</span> Job variable by Job ID and assign it a value."
        }
      ],
      "groups": [],
      "x": 0.7386070507308684,
      "y": 0.5063437139561707
    },
    "1b3d": {
      "name": "ViewData",
      "canvasName": "ViewData",
      "summary": "Command Template Error",
      "description": "This error is displayed if the command template errors out without completing.",
      "location": "Application",
      "app": "WorkFlowEngine",
      "displayName": "Tools",
      "type": "manual",
      "variables": {
        "incoming": {
          "header": "Command Template Error",
          "message": "There was an error running the command template.",
          "body": "$var.8ce4.error",
          "variables": {},
          "btn_success": "Retry",
          "btn_failure": "$var.job.failureType"
        },
        "outgoing": {},
        "error": "",
        "decorators": []
      },
      "view": "/workflow_engine/task/ViewData",
      "deprecated": false,
      "matched": [
        {
          "key": "canvasName",
          "highlightString": "<span class='highlight-string'>View</span>Data"
        },
        {
          "key": "summary",
          "highlightString": "<span class='highlight-string'>View</span> Data"
        }
      ],
      "groups": [],
      "x": 0.2594440484675695,
      "y": 0.15628415300546447,
      "scheduled": false
    }
  },
  "transitions": {
    "workflow_start": {
      "8ce4": {
        "type": "standard",
        "state": "success"
      }
    },
    "workflow_end": {},
    "8ce4": {
      "6bd2": {
        "type": "standard",
        "state": "success"
      },
      "1b3d": {
        "type": "standard",
        "state": "error"
      }
    },
    "81d8": {
      "8ce4": {
        "type": "revert",
        "state": "failure"
      },
      "add9": {
        "type": "standard",
        "state": "success"
      }
    },
    "6bd2": {
      "add9": {
        "type": "standard",
        "state": "success"
      },
      "81d8": {
        "type": "standard",
        "state": "failure"
      }
    },
    "f1a7": {
      "8ce4": {
        "type": "revert",
        "state": "success"
      },
      "dab6": {
        "type": "standard",
        "state": "failure"
      }
    },
    "add9": {
      "f1a7": {
        "type": "standard",
        "state": "failure"
      },
      "993f": {
        "type": "standard",
        "state": "success"
      }
    },
    "dab6": {
      "workflow_end": {
        "type": "standard",
        "state": "success"
      }
    },
    "993f": {
      "workflow_end": {
        "type": "standard",
        "state": "success"
      }
    },
    "9dc1": {},
    "1b3d": {
      "dab6": {
        "type": "standard",
        "state": "failure"
      },
      "8ce4": {
        "type": "revert",
        "state": "success"
      }
    }
  },
  "type": "automation",
  "canvasVersion": 1,
  "tags": [],
  "groups": []
}