{ "type": "object", "title": "Configuration", "required": [ "operational_policy" ], "properties": { "operational_policy": { "type": "object", "title": "Related Parameters", "required": [ "controlLoop", "policies" ], "properties": { "controlLoop": { "type": "object", "title": "Control Loop details", "required": [ "timeout", "abatement", "trigger_policy", "controlLoopName" ], "properties": { "timeout": { "type": "string", "title": "Overall Time Limit", "default": "0", "format": "number" }, "abatement": { "type": "string", "title": "Abatement", "enum": [ "True", "False" ] }, "trigger_policy": { "type": "string", "title": "Policy Decision Entry" }, "controlLoopName": { "type": "string", "title": "Control loop name", "readOnly": "True" } } }, "policies": { "uniqueItems": "true", "id": "policies_array", "type": "array", "title": "Policy Decision Tree", "format": "tabs-top", "items": { "title": "Policy Decision", "type": "object", "id": "policy_item", "headerTemplate": "{{self.id}} - {{self.recipe}}", "format": "categories", "basicCategoryTitle": "recipe", "required": [ "id", "retry", "timeout", "actor", "success", "failure", "failure_timeout", "failure_retries", "failure_exception", "failure_guard", "target" ], "properties": { "id": { "default": "Policy 1", "title": "Policy ID", "type": "string" }, "retry": { "default": "0", "title": "Number of Retry", "type": "string", "format": "number" }, "timeout": { "default": "0", "title": "Timeout", "type": "string", "format": "number" }, "actor": { "type": "object", "title": "Actor", "anyOf": [ { "title": "APPC", "type": "object", "properties": { "actor": { "title": "actor", "type": "string", "default": "APPC", "options": { "hidden": true } }, "recipe": { "title": "recipe", "type": "string", "default": "", "enum": [ "Restart", "Rebuild", "Migrate", "Health-Check", "ModifyConfig" ] }, "payload": { "title": "Payload (YAML)", "type": "string", "format": "textarea" } } }, { "title": "SO", "type": "object", "properties": { "actor": { "title": "actor", "type": "string", "default": "SO", "options": { "hidden": true } }, "recipe": { "title": "recipe", "type": "string", "default": "", "enum": [ "VF Module Create", "VF Module Delete" ] }, "payload": { "title": "Payload (YAML)", "type": "string", "format": "textarea" } } }, { "title": "SDNC", "type": "object", "properties": { "actor": { "title": "actor", "type": "string", "default": "SDNC", "options": { "hidden": true } }, "recipe": { "title": "recipe", "type": "string", "default": "", "enum": [ "Reroute", "BandwidthOnDemand" ] }, "payload": { "title": "Payload (YAML)", "type": "string", "format": "textarea" } } }, { "title": "VFC", "type": "object", "properties": { "actor": { "title": "actor", "type": "string", "default": "VFC", "options": { "hidden": true } }, "recipe": { "title": "recipe", "type": "string", "default": "", "enum": [ "ModifyConfig" ] }, "payload": { "title": "Payload (YAML)", "type": "string", "format": "textarea" } } }, { "title": "CDS", "type": "object", "properties": { "actor": { "title": "actor", "type": "string", "default": "CDS", "options": { "hidden": true } }, "recipe": { "title": "recipe", "type": "object", "anyOf": [ { "title": "user-defined", "type": "object", "properties": { "recipe": { "title": "recipe", "type": "string", "default": "user-defined", "format": "textarea" }, "payload": { "title": "Payload (YAML)", "type": "string", "default": "", "format": "textarea" } } } ] } } } ] }, "success": { "default": "final_success", "title": "When Success", "type": "string" }, "failure": { "default": "final_failure", "title": "When Failure", "type": "string" }, "failure_timeout": { "default": "final_failure_timeout", "title": "When Failure Timeout", "type": "string" }, "failure_retries": { "default": "final_failure_retries", "title": "When Failure Retries", "type": "string" }, "failure_exception": { "default": "final_failure_exception", "title": "When Failure Exception", "type": "string" }, "failure_guard": { "default": "final_failure_guard", "title": "When Failure Guard", "type": "string" }, "target": { "type": "object", "required": [ "type", "resourceID" ], "anyOf": [ { "title": "User Defined", "additionalProperties": "True", "properties": { "type": { "title": "Target type", "type": "string", "default": "", "enum": [ "VNF", "VFMODULE", "VM" ] }, "resourceID": { "title": "Target type", "type": "string", "default": "" } } } ] } } } } } } } }