@itentialopensource/arista-eos-upgrade-iag
Version:
[Deprecated] This Pre-built automation performs a standard software upgrade or downgrade on Arista EOS Switch.
1,069 lines • 27.7 kB
JSON
{
"name": "Device-Connection-Health-Check",
"tasks": {
"3552": {
"name": "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",
"displayName": "WorkFlowEngine",
"type": "operation",
"variables": {
"incoming": {
"name": "outcome",
"value": "success"
},
"outgoing": {
"value": null
}
},
"deprecated": false,
"matched": [
{
"key": "name",
"highlightString": "<span class='highlight-string'>new</span>Variable"
},
{
"key": "description",
"highlightString": "Create a <span class='highlight-string'>new</span> <span class='highlight-string'>Job</span> variable by Job ID and assign it a value."
},
{
"key": "summary",
"highlightString": "Create a <span class='highlight-string'>Job</span> Variable"
}
],
"groups": [],
"x": 0.3925561797752809,
"y": 0.23215984776403426
},
"3872": {
"name": "transformation",
"canvasName": "transformation",
"summary": "JSON Transformation",
"description": "Perform a JSON Transformation using the JST library.",
"location": "Application",
"locationType": null,
"app": "WorkFlowEngine",
"type": "operation",
"displayName": "WorkFlowEngine",
"variables": {
"incoming": {
"tr_id": "6037fc47058d4a65713f3868",
"variableMap": {
"tally": "$var.job.failureCounter"
},
"options": {
"extractOutput": true
}
},
"outgoing": {
"tally": null
}
},
"deprecated": false,
"matched": [
{
"key": "description",
"highlightString": "Perform a JSON Transformation using the <span class='highlight-string'>JST</span> library."
}
],
"groups": [],
"x": -0.18047752808988765,
"y": 0.12749762131303521,
"task_name": "incrementNumber"
},
"8601": {
"name": "transformation",
"canvasName": "transformation",
"summary": "JSON Transformation",
"description": "Perform a JSON Transformation using the JST library.",
"location": "Application",
"locationType": null,
"app": "WorkFlowEngine",
"type": "operation",
"displayName": "WorkFlowEngine",
"variables": {
"incoming": {
"tr_id": "6037fc47058d4a65713f3868",
"variableMap": {
"tally": "$var.job.consecutiveSuccess"
},
"options": {
"extractOutput": true
}
},
"outgoing": {
"tally": null
}
},
"deprecated": false,
"matched": [
{
"key": "description",
"highlightString": "Perform a JSON Transformation using the <span class='highlight-string'>JST</span> library."
}
],
"groups": [],
"x": -0.11025280898876405,
"y": 0.2340627973358706,
"task_name": "incrementNumber"
},
"9839": {
"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": "consecutiveSuccess",
"value": 0
},
"outgoing": {
"value": null
}
},
"deprecated": false,
"matched": [
{
"key": "canvasName",
"highlightString": "<span class='highlight-string'>newVar</span>iable"
}
],
"groups": [],
"x": -0.5066948555320648,
"y": 0.2497398543184183
},
"workflow_start": {
"name": "workflow_start",
"groups": [],
"x": -0.8434913468773514,
"y": 0.24753694581280788
},
"workflow_end": {
"name": "workflow_end",
"groups": [],
"x": 0.5287921348314607,
"y": 0.2340627973358706
},
"18d6": {
"name": "isAlive",
"summary": "Test Connection",
"description": "This method will retrieve the status of the device in Automation Gateway",
"location": "Application",
"locationType": null,
"app": "ConfigurationManager",
"displayName": "ConfigurationManager",
"type": "automatic",
"variables": {
"incoming": {
"name": "$var.job.device"
},
"outgoing": {
"status": null
},
"error": ""
},
"deprecated": false,
"matched": [
{
"key": "app",
"highlightString": "<span class='highlight-string'>Configu</span>rationManager"
}
],
"groups": [],
"actor": "Pronghorn",
"x": -0.28893905191873587,
"y": 0.24630541871921183,
"scheduled": false
},
"567c": {
"name": "delay",
"summary": "Delay a Job",
"description": "Wait for #seconds for device to come alive before connecting.",
"location": "Application",
"locationType": null,
"app": "WorkFlowEngine",
"displayName": "WorkFlowEngine",
"type": "operation",
"variables": {
"incoming": {
"time": "$var.job.pingDelay"
},
"outgoing": {
"time_in_milliseconds": null
},
"error": ""
},
"deprecated": false,
"matched": [
{
"key": "name",
"highlightString": "<span class='highlight-string'>delay</span>"
},
{
"key": "summary",
"highlightString": "<span class='highlight-string'>Delay</span> a Job"
},
{
"key": "description",
"highlightString": "<span class='highlight-string'>Delay</span> a Job for a duration by Job ID and number of seconds."
}
],
"groups": [],
"x": -0.3890142964635064,
"y": 0.24753694581280788,
"scheduled": false
},
"f195": {
"name": "evaluation",
"summary": "Have we exceeded numberOfRetries",
"description": "Check to verify that the length of failCounter does not exceed our numberOfRetries.",
"location": "Application",
"locationType": null,
"app": "WorkFlowEngine",
"displayName": "WorkFlowEngine",
"type": "operation",
"variables": {
"incoming": {
"all_true_flag": false,
"evaluation_groups": [
{
"all_true_flag": false,
"evaluations": [
{
"query": "",
"operand_1": {
"variable": "failureCounter",
"task": "job"
},
"operator": ">",
"operand_2": {
"variable": "numberOfRetries",
"task": "job"
}
}
]
}
]
},
"outgoing": {
"return_value": null
}
},
"deprecated": false,
"matched": [
{
"key": "name",
"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.1875,
"y": -0.1493815413891532
},
"3a95": {
"name": "evaluation",
"summary": "Evaluate connection response from device.",
"description": "Evaluate connection response from device.",
"location": "Application",
"locationType": null,
"app": "WorkFlowEngine",
"displayName": "WorkFlowEngine",
"type": "operation",
"variables": {
"incoming": {
"all_true_flag": false,
"evaluation_groups": [
{
"all_true_flag": false,
"evaluations": [
{
"query": ".response",
"operand_1": {
"variable": "status",
"task": "18d6"
},
"operator": "==",
"operand_2": {
"variable": true,
"task": "static"
}
},
{
"query": "",
"operand_1": {
"variable": "status",
"task": "18d6"
},
"operator": "==",
"operand_2": {
"variable": true,
"task": "static"
}
}
]
}
]
},
"outgoing": {
"return_value": null
}
},
"deprecated": false,
"matched": [
{
"key": "name",
"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.17970401691331925,
"y": 0.2351716961498439
},
"3eba": {
"name": "evaluation",
"summary": "Count success attempts",
"description": "Check to verify that the total number of successes is not more than the numberOfRetriesStability. If it's not, then go back and try again.",
"location": "Application",
"locationType": null,
"app": "WorkFlowEngine",
"displayName": "WorkFlowEngine",
"type": "operation",
"variables": {
"incoming": {
"all_true_flag": false,
"evaluation_groups": [
{
"all_true_flag": false,
"evaluations": [
{
"query": "",
"operand_1": {
"variable": "consecutiveSuccess",
"task": "job"
},
"operator": ">",
"operand_2": {
"variable": "numberOfRetries",
"task": "job"
}
}
]
}
]
},
"outgoing": {
"return_value": null
}
},
"deprecated": false,
"matched": [
{
"key": "name",
"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.2970505617977528,
"y": 0.23215984776403426
},
"6ca1": {
"name": "delay",
"summary": "Delay before next test",
"description": "Wait for 1 second before connecting to the device to continue stability testing.",
"location": "Application",
"locationType": null,
"app": "WorkFlowEngine",
"displayName": "WorkFlowEngine",
"type": "operation",
"variables": {
"incoming": {
"time": 1
},
"outgoing": {
"time_in_milliseconds": null
},
"error": ""
},
"deprecated": false,
"matched": [
{
"key": "name",
"highlightString": "<span class='highlight-string'>delay</span>"
},
{
"key": "summary",
"highlightString": "<span class='highlight-string'>Delay</span> a Job"
},
{
"key": "description",
"highlightString": "<span class='highlight-string'>Delay</span> a Job for a duration by Job ID and number of seconds."
}
],
"groups": [],
"x": 0.15941011235955055,
"y": 0.23215984776403426,
"scheduled": false
},
"16f7": {
"name": "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",
"displayName": "WorkFlowEngine",
"type": "operation",
"variables": {
"incoming": {
"name": "outcome",
"value": "fail"
},
"outgoing": {
"value": null
}
},
"deprecated": false,
"matched": [
{
"key": "name",
"highlightString": "<span class='highlight-string'>new</span>Variable"
},
{
"key": "description",
"highlightString": "Create a <span class='highlight-string'>new</span> <span class='highlight-string'>Job</span> variable by Job ID and assign it a value."
},
{
"key": "summary",
"highlightString": "Create a <span class='highlight-string'>Job</span> Variable"
}
],
"groups": [],
"x": 0.38553370786516855,
"y": -0.15128449096098953
},
"b88f": {
"name": "evaluation",
"summary": "Verify required job variables are greater than 0",
"description": "Verify the follow values are greater than 0 : numberOfRetries, numberOfRetriesStability, pingDelay",
"location": "Application",
"locationType": null,
"app": "WorkFlowEngine",
"displayName": "WorkFlowEngine",
"type": "operation",
"variables": {
"incoming": {
"all_true_flag": false,
"evaluation_groups": [
{
"all_true_flag": true,
"evaluations": [
{
"query": "",
"operand_1": {
"variable": "numberOfRetries",
"task": "job",
"editable": true
},
"operator": ">",
"operand_2": {
"variable": 0,
"task": "static"
}
},
{
"query": "",
"operand_1": {
"variable": "numberOfRetriesStability",
"task": "job",
"editable": true
},
"operator": ">",
"operand_2": {
"variable": 0,
"task": "static"
}
},
{
"query": "",
"operand_1": {
"variable": "pingDelay",
"task": "job",
"editable": true
},
"operator": ">",
"operand_2": {
"variable": 0,
"task": "static",
"editable": true
}
}
]
}
]
},
"outgoing": {
"return_value": null
}
},
"deprecated": false,
"matched": [
{
"key": "name",
"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.7599699021820918,
"y": 0.24753694581280788
},
"2e93": {
"name": "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",
"displayName": "WorkFlowEngine",
"type": "operation",
"variables": {
"incoming": {
"name": "outcome",
"value": "bad input"
},
"outgoing": {
"value": null
}
},
"deprecated": false,
"matched": [
{
"key": "name",
"highlightString": "<span class='highlight-string'>new</span>Variable"
},
{
"key": "description",
"highlightString": "Create a <span class='highlight-string'>new</span> <span class='highlight-string'>Job</span> variable by Job ID and assign it a value."
},
{
"key": "summary",
"highlightString": "Create a <span class='highlight-string'>Job</span> Variable"
}
],
"groups": [],
"x": 0.40168539325842695,
"y": 0.3967649857278782
},
"150f": {
"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": "failureCounter",
"value": 0
},
"outgoing": {
"value": null
}
},
"deprecated": false,
"matched": [
{
"key": "canvasName",
"highlightString": "<span class='highlight-string'>newVar</span>iable"
}
],
"groups": [],
"x": -0.6321353065539113,
"y": 0.25078043704474506
},
"187a": {
"name": "reattempt",
"canvasName": "reattempt",
"summary": "Re-attempt Test Connection",
"description": "If the test connection task is unable to connect due to an adapter failure, we will reattempt by the number of retries passed in the job variables.",
"location": "Application",
"locationType": null,
"app": "MOP",
"type": "automatic",
"displayName": "MOP",
"variables": {
"incoming": {
"job_id": "$var.job._id",
"attemptID": "retry_test_connection",
"minutes": 0,
"attempts": "$var.job.numberOfRetries"
},
"outgoing": {
"response": null
},
"error": ""
},
"deprecated": false,
"matched": [
{
"key": "canvasName",
"highlightString": "<span class='highlight-string'>reattempt</span>"
}
],
"groups": [],
"actor": "Pronghorn",
"x": -0.2898212898212898,
"y": 0.41427155599603566,
"scheduled": false
},
"52d9": {
"name": "stub",
"canvasName": "stub",
"summary": "Exit Workflow",
"description": "One of the values was not greater than 0 : numberOfRetries, numberOfRetriesStability, secondsBetweenRetry",
"location": "Application",
"locationType": null,
"app": "WorkFlowEngine",
"type": "automatic",
"displayName": "Tools",
"variables": {
"incoming": {
"type": "success",
"delay": 0,
"response": "success"
},
"outgoing": {
"response": null
},
"error": ""
},
"deprecated": false,
"matched": [
{
"key": "canvasName",
"highlightString": "<span class='highlight-string'>stub</span>"
},
{
"key": "summary",
"highlightString": "<span class='highlight-string'>Stub</span>"
},
{
"key": "description",
"highlightString": "Create a <span class='highlight-string'>stub</span> for an automated task"
}
],
"groups": [],
"actor": "Pronghorn",
"x": -0.7618040873854828,
"y": 0.4172736732570239,
"scheduled": false
},
"471d": {
"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": "consecutiveSuccess",
"value": "$var.8601.tally"
},
"outgoing": {
"value": null
}
},
"deprecated": false,
"matched": [
{
"key": "canvasName",
"highlightString": "<span class='highlight-string'>newVar</span>iable"
}
],
"groups": [],
"x": 0.011938202247191011,
"y": 0.22930542340627974
},
"8aa1": {
"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": "failureCounter",
"value": "$var.3872.tally"
},
"outgoing": {
"value": null
}
},
"deprecated": false,
"matched": [
{
"key": "canvasName",
"highlightString": "<span class='highlight-string'>newVar</span>iable"
}
],
"groups": [],
"x": -0.18328651685393257,
"y": -0.003805899143672693
}
},
"transitions": {
"609": {},
"3552": {
"workflow_end": {
"type": "standard",
"state": "success"
}
},
"3872": {
"8aa1": {
"type": "standard",
"state": "success"
}
},
"8089": {},
"8335": {},
"8601": {
"471d": {
"type": "standard",
"state": "success"
}
},
"8675": {},
"9839": {
"567c": {
"type": "standard",
"state": "success"
}
},
"workflow_start": {
"b88f": {
"type": "standard",
"state": "success"
}
},
"workflow_end": {},
"7c30": {},
"a4db": {},
"18d6": {
"3a95": {
"type": "standard",
"state": "success"
},
"187a": {
"type": "standard",
"state": "error"
}
},
"e1cc": {},
"a9c9": {},
"542d": {},
"567c": {
"18d6": {
"type": "standard",
"state": "success"
}
},
"ff59": {},
"4e82": {},
"3aa0": {},
"d193": {},
"cfe8": {},
"b3cb": {},
"f195": {
"9839": {
"type": "revert",
"state": "failure"
},
"16f7": {
"type": "standard",
"state": "success"
}
},
"3a95": {
"3872": {
"type": "standard",
"state": "failure"
},
"8601": {
"type": "standard",
"state": "success"
}
},
"3eba": {
"3552": {
"type": "standard",
"state": "success"
},
"18d6": {
"type": "revert",
"state": "failure"
}
},
"6ca1": {
"3eba": {
"type": "standard",
"state": "success"
}
},
"16f7": {
"workflow_end": {
"type": "standard",
"state": "success"
}
},
"461c": {},
"b544": {},
"f921": {},
"b88f": {
"150f": {
"type": "standard",
"state": "success"
},
"52d9": {
"type": "standard",
"state": "failure"
}
},
"2e93": {
"workflow_end": {
"type": "standard",
"state": "success"
}
},
"150f": {
"9839": {
"type": "standard",
"state": "success"
}
},
"187a": {
"18d6": {
"type": "revert",
"state": "success"
},
"2e93": {
"type": "standard",
"state": "error"
}
},
"52d9": {
"2e93": {
"type": "standard",
"state": "success"
}
},
"c17b": {},
"77df": {},
"471d": {
"6ca1": {
"type": "standard",
"state": "success"
}
},
"8aa1": {
"f195": {
"type": "standard",
"state": "success"
}
}
},
"font_size": 12,
"created": "2019-08-15T21:09:06.430Z",
"created_by": {
"provenance": "Local AAA",
"username": "Itential Artifacts",
"firstname": "admin",
"inactive": true,
"email": ""
},
"createdVersion": "5.10.4-2020.1.45.0",
"last_updated": "2021-10-14T17:31:20.086Z",
"last_updated_by": {
"provenance": "Itential-Okta",
"username": "zack.strulovitch@itential.com",
"firstname": "Zack",
"inactive": false
},
"lastUpdatedVersion": "5.40.5-2021.1.52.0",
"type": "automation",
"description": null,
"inputSchema": {
"type": "object",
"properties": {
"device": {
"type": [
"array",
"boolean",
"null",
"number",
"object",
"string"
]
},
"pingDelay": {
"type": "integer",
"minimum": 1,
"examples": [
1200
]
},
"numberOfRetries": {
"title": "attempts",
"type": "integer",
"examples": [
2
]
},
"numberOfRetriesStability": {
"type": [
"array",
"boolean",
"null",
"number",
"object",
"string"
]
},
"_id": {
"title": "job_id",
"type": "string",
"examples": [
"test"
]
}
},
"required": [
"device",
"pingDelay",
"numberOfRetries",
"numberOfRetriesStability",
"_id"
]
},
"outputSchema": {
"type": "object",
"properties": {
"device": {
"type": [
"array",
"boolean",
"null",
"number",
"object",
"string"
]
},
"pingDelay": {
"type": "integer",
"minimum": 1,
"examples": [
1200
]
},
"numberOfRetries": {
"title": "attempts",
"type": "integer",
"examples": [
2
]
},
"numberOfRetriesStability": {
"type": [
"array",
"boolean",
"null",
"number",
"object",
"string"
]
},
"_id": {
"type": "string",
"pattern": "^[0-9a-f]{24}$"
},
"initiator": {
"type": "string"
},
"outcome": {
"type": "string"
},
"failureCounter": {
"type": [
"array",
"boolean",
"null",
"number",
"object",
"string"
]
},
"consecutiveSuccess": {
"type": [
"array",
"boolean",
"null",
"number",
"object",
"string"
]
}
}
},
"tags": [],
"groups": []
}