{ "type": "object", "title": "Configuration", "required": [ "operational_policy", "guard_policies" ], "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" } } }, { "title": "resource-assignment", "type": "object", "properties": { "recipe": { "title": "recipe", "type": "string", "default": "resource-assignment", "options": { "hidden": true } }, "payload": { "title": "Payload", "type": "object", "properties": { "artifact_name": { "title": "artifact name", "type": "string", "default": "baseconfiguration", "readOnly": "True" }, "artifact_version": { "title": "artifact version", "type": "string", "default": "1.0.0", "readOnly": "True" }, "mode": { "title": "mode", "type": "string", "default": "async" }, "data": { "title": "data", "properties": { "request-id": { "title": "request-id", "type": "string" }, "service-instance-id": { "title": "service-instance-id", "type": "string" }, "vnf-id": { "title": "vnf-id", "type": "string" }, "action-name": { "title": "action-name", "type": "string" }, "scope-type": { "title": "scope-type", "type": "string" }, "hostname": { "title": "hostname", "type": "string" }, "vnf_name": { "title": "vnf_name", "type": "string" } } } } } } }, { "title": "activate", "type": "object", "properties": { "recipe": { "title": "recipe", "type": "string", "default": "activate", "options": { "hidden": true } }, "payload": { "title": "Payload", "type": "object", "properties": { "artifact_name": { "title": "artifact name", "type": "string", "default": "baseconfiguration", "readOnly": "True" }, "artifact_version": { "title": "artifact version", "type": "string", "default": "1.0.0", "readOnly": "True" }, "mode": { "title": "mode", "type": "string", "default": "async" }, "data": { "title": "data", "properties": { "request-id": { "title": "request-id", "type": "string" }, "service-instance-id": { "title": "service-instance-id", "type": "string" }, "vnf-id": { "title": "vnf-id", "type": "string" }, "action-name": { "title": "action-name", "type": "string" }, "scope-type": { "title": "scope-type", "type": "string" }, "hostname": { "title": "hostname", "type": "string" }, "vnf_name": { "title": "vnf_name", "type": "string" } } } } } } }, { "title": "activate-restconf", "type": "object", "properties": { "recipe": { "title": "recipe", "type": "string", "default": "activate-restconf", "options": { "hidden": true } }, "payload": { "title": "Payload", "type": "object", "properties": { "artifact_name": { "title": "artifact name", "type": "string", "default": "baseconfiguration", "readOnly": "True" }, "artifact_version": { "title": "artifact version", "type": "string", "default": "1.0.0", "readOnly": "True" }, "mode": { "title": "mode", "type": "string", "default": "async" }, "data": { "title": "data", "properties": { "request-id": { "title": "request-id", "type": "string" }, "service-instance-id": { "title": "service-instance-id", "type": "string" }, "vnf-id": { "title": "vnf-id", "type": "string" }, "action-name": { "title": "action-name", "type": "string" }, "scope-type": { "title": "scope-type", "type": "string" }, "hostname": { "title": "hostname", "type": "string" }, "vnf_name": { "title": "vnf_name", "type": "string" } } } } } } }, { "title": "activate-cli", "type": "object", "properties": { "recipe": { "title": "recipe", "type": "string", "default": "activate-cli", "options": { "hidden": true } }, "payload": { "title": "Payload", "type": "object", "properties": { "artifact_name": { "title": "artifact name", "type": "string", "default": "baseconfiguration", "readOnly": "True" }, "artifact_version": { "title": "artifact version", "type": "string", "default": "1.0.0", "readOnly": "True" }, "mode": { "title": "mode", "type": "string", "default": "async" }, "data": { "title": "data", "properties": { "request-id": { "title": "request-id", "type": "string" }, "service-instance-id": { "title": "service-instance-id", "type": "string" }, "vnf-id": { "title": "vnf-id", "type": "string" }, "action-name": { "title": "action-name", "type": "string" }, "scope-type": { "title": "scope-type", "type": "string" }, "hostname": { "title": "hostname", "type": "string" }, "vnf_name": { "title": "vnf_name", "type": "string" } } } } } } }, { "title": "assign-activate", "type": "object", "properties": { "recipe": { "title": "recipe", "type": "string", "default": "assign-activate", "options": { "hidden": true } }, "payload": { "title": "Payload", "type": "object", "properties": { "artifact_name": { "title": "artifact name", "type": "string", "default": "baseconfiguration", "readOnly": "True" }, "artifact_version": { "title": "artifact version", "type": "string", "default": "1.0.0", "readOnly": "True" }, "mode": { "title": "mode", "type": "string", "default": "async" }, "data": { "title": "data", "properties": { "request-id": { "title": "request-id", "type": "string" }, "service-instance-id": { "title": "service-instance-id", "type": "string" }, "vnf-id": { "title": "vnf-id", "type": "string" }, "action-name": { "title": "action-name", "type": "string" }, "scope-type": { "title": "scope-type", "type": "string" }, "hostname": { "title": "hostname", "type": "string" }, "vnf_name": { "title": "vnf_name", "type": "string" } } } } } } }, { "title": "imperative-test-wf", "type": "object", "properties": { "recipe": { "title": "recipe", "type": "string", "default": "imperative-test-wf", "options": { "hidden": true } }, "payload": { "title": "Payload", "type": "object", "properties": { "artifact_name": { "title": "artifact name", "type": "string", "default": "baseconfiguration", "readOnly": "True" }, "artifact_version": { "title": "artifact version", "type": "string", "default": "1.0.0", "readOnly": "True" }, "mode": { "title": "mode", "type": "string", "default": "async" }, "data": { "title": "data", "properties": { "request-id": { "title": "request-id", "type": "string" }, "service-instance-id": { "title": "service-instance-id", "type": "string" }, "vnf-id": { "title": "vnf-id", "type": "string" }, "action-name": { "title": "action-name", "type": "string" }, "scope-type": { "title": "scope-type", "type": "string" }, "hostname": { "title": "hostname", "type": "string" }, "vnf_name": { "title": "vnf_name", "type": "string" } } } } } } } ] } } } ] }, "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": "" } } }, { "title": "VNF-vLoadBalancerMS 0", "properties": { "type": { "title": "Type", "type": "string", "default": "VNF", "readOnly": "True" }, "resourceID": { "title": "Resource ID", "type": "string", "default": "vLoadBalancerMS", "readOnly": "True" } } }, { "title": "VFMODULE-Vloadbalancerms..vpkg..module-1", "properties": { "type": { "title": "Type", "type": "string", "default": "VFMODULE", "readOnly": "True" }, "resourceID": { "title": "Resource ID", "type": "string", "default": "Vloadbalancerms..vpkg..module-1", "readOnly": "True" }, "modelInvariantId": { "title": "Model Invariant Id (ModelInvariantUUID)", "type": "string", "default": "ca052563-eb92-4b5b-ad41-9111768ce043", "readOnly": "True" }, "modelVersionId": { "title": "Model Version Id (ModelUUID)", "type": "string", "default": "1e725ccc-b823-4f67-82b9-4f4367070dbc", "readOnly": "True" }, "modelName": { "title": "Model Name", "type": "string", "default": "Vloadbalancerms..vpkg..module-1", "readOnly": "True" }, "modelVersion": { "title": "Model Version", "type": "string", "default": "1", "readOnly": "True" }, "modelCustomizationId": { "title": "Customization ID", "type": "string", "default": "1bffdc31-a37d-4dee-b65c-dde623a76e52", "readOnly": "True" } } }, { "title": "VFMODULE-Vloadbalancerms..vdns..module-3", "properties": { "type": { "title": "Type", "type": "string", "default": "VFMODULE", "readOnly": "True" }, "resourceID": { "title": "Resource ID", "type": "string", "default": "Vloadbalancerms..vdns..module-3", "readOnly": "True" }, "modelInvariantId": { "title": "Model Invariant Id (ModelInvariantUUID)", "type": "string", "default": "4c10ba9b-f88f-415e-9de3-5d33336047fa", "readOnly": "True" }, "modelVersionId": { "title": "Model Version Id (ModelUUID)", "type": "string", "default": "4fa73b49-8a6c-493e-816b-eb401567b720", "readOnly": "True" }, "modelName": { "title": "Model Name", "type": "string", "default": "Vloadbalancerms..vdns..module-3", "readOnly": "True" }, "modelVersion": { "title": "Model Version", "type": "string", "default": "1", "readOnly": "True" }, "modelCustomizationId": { "title": "Customization ID", "type": "string", "default": "bafcdab0-801d-4d81-9ead-f464640a38b1", "readOnly": "True" } } }, { "title": "VFMODULE-Vloadbalancerms..base_template..module-0", "properties": { "type": { "title": "Type", "type": "string", "default": "VFMODULE", "readOnly": "True" }, "resourceID": { "title": "Resource ID", "type": "string", "default": "Vloadbalancerms..base_template..module-0", "readOnly": "True" }, "modelInvariantId": { "title": "Model Invariant Id (ModelInvariantUUID)", "type": "string", "default": "921f7c96-ebdd-42e6-81b9-1cfc0c9796f3", "readOnly": "True" }, "modelVersionId": { "title": "Model Version Id (ModelUUID)", "type": "string", "default": "63734409-f745-4e4d-a38b-131638a0edce", "readOnly": "True" }, "modelName": { "title": "Model Name", "type": "string", "default": "Vloadbalancerms..base_template..module-0", "readOnly": "True" }, "modelVersion": { "title": "Model Version", "type": "string", "default": "1", "readOnly": "True" }, "modelCustomizationId": { "title": "Customization ID", "type": "string", "default": "86baddea-c730-4fb8-9410-cd2e17fd7f27", "readOnly": "True" } } }, { "title": "VFMODULE-Vloadbalancerms..vlb..module-2", "properties": { "type": { "title": "Type", "type": "string", "default": "VFMODULE", "readOnly": "True" }, "resourceID": { "title": "Resource ID", "type": "string", "default": "Vloadbalancerms..vlb..module-2", "readOnly": "True" }, "modelInvariantId": { "title": "Model Invariant Id (ModelInvariantUUID)", "type": "string", "default": "a772a1f4-0064-412c-833d-4749b15828dd", "readOnly": "True" }, "modelVersionId": { "title": "Model Version Id (ModelUUID)", "type": "string", "default": "0f5c3f6a-650a-4303-abb6-fff3e573a07a", "readOnly": "True" }, "modelName": { "title": "Model Name", "type": "string", "default": "Vloadbalancerms..vlb..module-2", "readOnly": "True" }, "modelVersion": { "title": "Model Version", "type": "string", "default": "1", "readOnly": "True" }, "modelCustomizationId": { "title": "Customization ID", "type": "string", "default": "96a78aad-4ffb-4ef0-9c4f-deb03bf1d806", "readOnly": "True" } } } ] } } } } } }, "guard_policies": { "type": "array", "format": "tabs-top", "title": "Associated Guard policies", "items": { "headerTemplate": "{{self.policy-id}} - {{self.content.recipe}}", "anyOf": [ { "title": "Guard MinMax", "type": "object", "properties": { "policy-id": { "type": "string", "default": "guard.minmax.new", "pattern": "^(guard.minmax\\..*)$" }, "content": { "properties": { "actor": { "type": "string", "enum": [ "APPC", "SO", "VFC", "SDNC", "SDNR" ] }, "recipe": { "type": "string", "enum": [ "Restart", "Rebuild", "Migrate", "Health-Check", "ModifyConfig", "VF Module Create", "VF Module Delete", "Reroute" ] }, "targets": { "type": "string", "default": ".*" }, "clname": { "type": "string", "template": "{{loopName}}", "watch": { "loopName": "operational_policy.controlLoop.controlLoopName" } }, "guardActiveStart": { "type": "string", "default": "00:00:00Z" }, "guardActiveEnd": { "type": "string", "default": "10:00:00Z" }, "min": { "type": "string", "default": "0" }, "max": { "type": "string", "default": "1" } } } } }, { "title": "Guard Frequency", "type": "object", "properties": { "policy-id": { "type": "string", "default": "guard.frequency.new", "pattern": "^(guard.frequency\\..*)$" }, "content": { "properties": { "actor": { "type": "string", "enum": [ "APPC", "SO", "VFC", "SDNC", "SDNR" ] }, "recipe": { "type": "string", "enum": [ "Restart", "Rebuild", "Migrate", "Health-Check", "ModifyConfig", "VF Module Create", "VF Module Delete", "Reroute" ] }, "targets": { "type": "string", "default": ".*" }, "clname": { "type": "string", "template": "{{loopName}}", "watch": { "loopName": "operational_policy.controlLoop.controlLoopName" } }, "guardActiveStart": { "type": "string", "default": "00:00:00Z" }, "guardActiveEnd": { "type": "string", "default": "10:00:00Z" }, "limit": { "type": "string" }, "timeWindow": { "type": "string" }, "timeUnits": { "type": "string", "enum": [ "minute", "hour", "day", "week", "month", "year" ] } } } } } ] } } } }