-# Copyright (C) 2021 Nordix Foundation. All rights reserved.
-# ========================================================================
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-# ============LICENSE_END=================================================
-#
-tosca_definitions_version: tosca_simple_yaml_1_1_0
-data_types:
- onap.datatypes.ToscaConceptIdentifier:
- derived_from: tosca.datatypes.Root
- properties:
- name:
- type: string
- required: true
- version:
- type: string
- required: true
- onap.datatype.controlloop.Target:
- derived_from: tosca.datatypes.Root
- description: Definition for a entity in A&AI to perform a control loop operation on
- properties:
- targetType:
- type: string
- description: Category for the target type
- required: true
- constraints:
- - valid_values:
- - VNF
- - VM
- - VFMODULE
- - PNF
- entityIds:
- type: map
- description: |
- Map of values that identify the resource. If none are provided, it is assumed that the
- entity that generated the ONSET event will be the target.
- required: false
- metadata:
- clamp_possible_values: ClampExecution:CSAR_RESOURCES
- entry_schema:
- type: string
- onap.datatype.controlloop.Actor:
- derived_from: tosca.datatypes.Root
- description: An actor/operation/target definition
- properties:
- actor:
- type: string
- description: The actor performing the operation.
- required: true
- metadata:
- clamp_possible_values: Dictionary:DefaultActors,ClampExecution:CDS/actor
- operation:
- type: string
- description: The operation the actor is performing.
- metadata:
- clamp_possible_values: Dictionary:DefaultOperations,ClampExecution:CDS/operation
- required: true
- target:
- type: onap.datatype.controlloop.Target
- description: The resource the operation should be performed on.
- required: true
- payload:
- type: map
- description: Name/value pairs of payload information passed by Policy to the actor
- required: false
- metadata:
- clamp_possible_values: ClampExecution:CDS/payload
- entry_schema:
- type: string
- onap.datatype.controlloop.Operation:
- derived_from: tosca.datatypes.Root
- description: An operation supported by an actor
- properties:
- id:
- type: string
- description: Unique identifier for the operation
- required: true
- description:
- type: string
- description: A user-friendly description of the intent for the operation
- required: false
- operation:
- type: onap.datatype.controlloop.Actor
- description: The definition of the operation to be performed.
- required: true
- timeout:
- type: integer
- description: The amount of time for the actor to perform the operation.
- required: true
- retries:
- type: integer
- description: The number of retries the actor should attempt to perform the operation.
- required: true
- default: 0
- success:
- type: string
- description: Points to the operation to invoke on success. A value of "final_success" indicates and end to the operation.
- required: false
- default: final_success
- failure:
- type: string
- description: Points to the operation to invoke on Actor operation failure.
- required: false
- default: final_failure
- failure_timeout:
- type: string
- description: Points to the operation to invoke when the time out for the operation occurs.
- required: false
- default: final_failure_timeout
- failure_retries:
- type: string
- description: Points to the operation to invoke when the current operation has exceeded its max retries.
- required: false
- default: final_failure_retries
- failure_exception:
- type: string
- description: Points to the operation to invoke when the current operation causes an exception.
- required: false
- default: final_failure_exception
- failure_guard:
- type: string
- description: Points to the operation to invoke when the current operation is blocked due to guard policy enforcement.
- required: false
- default: final_failure_guard
-policy_types:
- onap.policies.controlloop.operational.Common:
- derived_from: tosca.policies.Root
- version: 1.0.0
- name: onap.policies.controlloop.operational.Common
- description: |
- Operational Policy for Control Loop execution. Originated in Frankfurt to support TOSCA Compliant
- Policy Types. This does NOT support the legacy Policy YAML policy type.
- properties:
- id:
- type: string
- description: The unique control loop id.
- required: true
- timeout:
- type: integer
- description: |
- Overall timeout for executing all the operations. This timeout should equal or exceed the total
- timeout for each operation listed.
- required: true
- abatement:
- type: boolean
- description: Whether an abatement event message will be expected for the control loop from DCAE.
- required: true
- default: false
- trigger:
- type: string
- description: Initial operation to execute upon receiving an Onset event message for the Control Loop.
- required: true
- operations:
- type: list
- description: List of operations to be performed when Control Loop is triggered.
- required: true
- entry_schema:
- type: onap.datatype.controlloop.Operation
- onap.policies.controlloop.operational.common.Apex:
- derived_from: onap.policies.controlloop.operational.Common
- type_version: 1.0.0
- version: 1.0.0
- name: onap.policies.controlloop.operational.common.Apex
- description: Operational policies for Apex PDP
- properties:
- engineServiceParameters:
- type: string
- description: The engine parameters like name, instanceCount, policy implementation, parameters etc.
- required: true
- eventInputParameters:
- type: string
- description: The event input parameters.
- required: true
- eventOutputParameters:
- type: string
- description: The event output parameters.
- required: true
- javaProperties:
- type: string
- description: Name/value pairs of properties to be set for APEX if needed.
- required: false
-node_types:
- org.onap.policy.clamp.controlloop.Participant:
- version: 1.0.1
- derived_from: tosca.nodetypes.Root
- properties:
- provider:
- type: string
- requred: false
- org.onap.policy.clamp.controlloop.ControlLoopElement:
- version: 1.0.1
- derived_from: tosca.nodetypes.Root
- properties:
- provider:
- type: string
- required: false
- metadata:
- common: true
- description: Specifies the organization that provides the control loop element
- participant_id:
- type: onap.datatypes.ToscaConceptIdentifier
- requred: true
- metadata:
- common: true
- participantType:
- type: onap.datatypes.ToscaConceptIdentifier
- required: true
- metadata:
- common: true
- description: The identity of the participant type that hosts this type of Control Loop Element
- startPhase:
- type: integer
- required: false
- constraints:
- - greater_or_equal: 0
- metadata:
- common: true
- description: A value indicating the start phase in which this control loop element will be started, the
- first start phase is zero. Control Loop Elements are started in their start_phase order and stopped
- in reverse start phase order. Control Loop Elements with the same start phase are started and
- stopped simultaneously
- uninitializedToPassiveTimeout:
- type: integer
- required: false
- constraints:
- - greater_or_equal: 0
- default: 60
- metadata:
- common: true
- description: The maximum time in seconds to wait for a state chage from uninitialized to passive
- passiveToRunningTimeout:
- type: integer
- required: false
- constraints:
- - greater_or_equal: 0
- default: 60
- metadata:
- common: true
- description: The maximum time in seconds to wait for a state chage from passive to running
- runningToPassiveTimeout:
- type: integer
- required: false
- constraints:
- - greater_or_equal: 0
- default: 60
- metadata:
- common: true
- description: The maximum time in seconds to wait for a state chage from running to passive
- passiveToUninitializedTimeout:
- type: integer
- required: false
- constraints:
- - greater_or_equal: 0
- default: 60
- metadata:
- common: true
- description: The maximum time in seconds to wait for a state chage from passive to uninitialized
- org.onap.policy.clamp.controlloop.ControlLoop:
- version: 1.0.1
- derived_from: tosca.nodetypes.Root
- properties:
- provider:
- type: string
- required: false
- metadata:
- common: true
- description: Specifies the organization that provides the control loop element
- elements:
- type: list
- required: true
- metadata:
- common: true
- entry_schema:
- type: onap.datatypes.ToscaConceptIdentifier
- description: Specifies a list of control loop element definitions that make up this control loop definition
- org.onap.policy.clamp.controlloop.PolicyControlLoopElement:
- version: 1.0.1
- derived_from: org.onap.policy.clamp.controlloop.ControlLoopElement
- properties:
- policy_type_id:
- type: onap.datatypes.ToscaConceptIdentifier
- requred: true
- policy_id:
- type: onap.datatypes.ToscaConceptIdentifier
- requred: false
-topology_template:
- node_templates:
- org.onap.domain.linkmonitor.LinkMonitorPolicyControlLoopElement:
- version: 1.2.3
- type: org.onap.policy.clamp.controlloop.PolicyControlLoopElement
- type_version: 1.0.1
- description: Control loop element for the Link Monitor
- properties:
- provider: Ericsson
- participant_id:
- name: org.onap.PM_Policy
- version: 1.0.0
- participantType:
- name: org.onap.policy.controlloop.PolicyControlLoopParticipant
- version: 2.3.1
- policy_type_id:
- name: onap.policies.controlloop.operational.common.Apex
- version: 1.0.0
- policy_id:
- name: operational.apex.linkmonitor
- version: 1.0.0
- pdpGroup: defaultGroup
- org.onap.domain.linkmonitor.LinkMonitorControlLoopDefinition0:
- version: 1.2.3
- type: org.onap.policy.clamp.controlloop.ControlLoop
- type_version: 1.0.0
- description: Control loop for Link Monitor
- properties:
- provider: Ericsson
- elements:
- - name: org.onap.domain.linkmonitor.LinkMonitorPolicyControlLoopElement
- version: 1.2.3
- org.onap.policy.controlloop.PolicyControlLoopParticipant:
- version: 2.3.1
- type: org.onap.policy.clamp.controlloop.Participant
- type_version: 1.0.1
- description: Participant for policy framework
- properties:
- provider: ONAP
- policies:
- - operational.apex.linkmonitor:
- type: onap.policies.controlloop.operational.common.Apex
- type_version: 1.0.0
- version: 1.0.0
- metadata:
- policy-id: operational.apex.linkmonitor
- policy-version: 1.0.0
- properties:
- engineServiceParameters:
- name: LinkMonitorApexEngine
- version: 0.0.1
- id: 101
- instanceCount: 1
- deploymentPort: 12345
- engineParameters:
- executorParameters:
- JAVASCRIPT:
- parameterClassName: org.onap.policy.apex.plugins.executor.javascript.JavascriptExecutorParameters
- contextParameters:
- parameterClassName: org.onap.policy.apex.context.parameters.ContextParameters
- schemaParameters:
- Avro:
- parameterClassName: org.onap.policy.apex.plugins.context.schema.avro.AvroSchemaHelperParameters
- taskParameters:
- - key: ORU-ODU-Map
- value: |-
- {"ERICSSON-O-RU-11220": "HCL-O-DU-1122",
- "ERICSSON-O-RU-11221": "HCL-O-DU-1122",
- "ERICSSON-O-RU-11222": "HCL-O-DU-1122",
- "ERICSSON-O-RU-11223": "HCL-O-DU-1122",
- "ERICSSON-O-RU-11224": "HCL-O-DU-1123",
- "ERICSSON-O-RU-11225": "HCL-O-DU-1123",
- "ERICSSON-O-RU-11226": "HCL-O-DU-1123",
- "ERICSSON-O-RU-11227": "HCL-O-DU-1124",
- "ERICSSON-O-RU-11228": "HCL-O-DU-1125",
- "ERICSSON-O-RU-11229": "HCL-O-DU-1125"}
- policy_type_impl:
- apexPolicyModel:
- key:
- name: LinkMonitorModel
- version: 0.0.1
- keyInformation:
- key:
- name: LinkMonitorModel_KeyInfo
- version: 0.0.1
- keyInfoMap:
- entry:
- - key:
- name: ApexMessageOutputEvent
- version: 0.0.1
- value:
- key:
- name: ApexMessageOutputEvent
- version: 0.0.1
- UUID: cca47d74-7754-4a61-b163-ca31f66b157b
- description: Generated description for concept referred to by
- key "ApexMessageOutputEvent:0.0.1"
- - key:
- name: CreateLinkClearedOutfieldsEvent
- version: 0.0.1
- value:
- key:
- name: CreateLinkClearedOutfieldsEvent
- version: 0.0.1
- UUID: a295d6a3-1b73-387e-abba-b41e9b608802
- description: Generated description for concept referred to by
- key "CreateLinkClearedOutfieldsEvent:0.0.1"
- - key:
- name: CreateLinkClearedOutfieldsTask
- version: 0.0.1
- value:
- key:
- name: CreateLinkClearedOutfieldsTask
- version: 0.0.1
- UUID: fd594e88-411d-4a94-b2be-697b3a0d7adf
- description: This task creates the output fields when link failure
- is cleared.
- - key:
- name: CreateLinkFailureOutfieldsEvent
- version: 0.0.1
- value:
- key:
- name: CreateLinkFailureOutfieldsEvent
- version: 0.0.1
- UUID: 02be2b5d-45b7-3c54-ae54-97f2b5c30125
- description: Generated description for concept referred to by
- key "CreateLinkFailureOutfieldsEvent:0.0.1"
- - key:
- name: CreateLinkFailureOutfieldsTask
- version: 0.0.1
- value:
- key:
- name: CreateLinkFailureOutfieldsTask
- version: 0.0.1
- UUID: ac3d9842-80af-4a98-951c-bd79a431c613
- description: This task the output fields when link failure is
- detected.
- - key:
- name: LinkClearedTask
- version: 0.0.1
- value:
- key:
- name: LinkClearedTask
- version: 0.0.1
- UUID: eecfde90-896c-4343-8f9c-2603ced94e2d
- description: This task sends a message to the output when link
- failure is cleared.
- - key:
- name: LinkFailureInputEvent
- version: 0.0.1
- value:
- key:
- name: LinkFailureInputEvent
- version: 0.0.1
- UUID: c4500941-3f98-4080-a9cc-5b9753ed050b
- description: Generated description for concept referred to by
- key "LinkFailureInputEvent:0.0.1"
- - key:
- name: LinkFailureInputSchema
- version: 0.0.1
- value:
- key:
- name: LinkFailureInputSchema
- version: 0.0.1
- UUID: 3b3974fc-3012-3b02-9f33-c9d8eefe4dc1
- description: Generated description for concept referred to by
- key "LinkFailureInputSchema:0.0.1"
- - key:
- name: LinkFailureOutputEvent
- version: 0.0.1
- value:
- key:
- name: LinkFailureOutputEvent
- version: 0.0.1
- UUID: 4f04aa98-e917-4f4a-882a-c75ba5a99374
- description: Generated description for concept referred to by
- key "LinkFailureOutputEvent:0.0.1"
- - key:
- name: LinkFailureOutputSchema
- version: 0.0.1
- value:
- key:
- name: LinkFailureOutputSchema
- version: 0.0.1
- UUID: 2d1a7f6e-eb9a-3984-be1f-283d98111b84
- description: Generated description for concept referred to by
- key "LinkFailureOutputSchema:0.0.1"
- - key:
- name: LinkFailureTask
- version: 0.0.1
- value:
- key:
- name: LinkFailureTask
- version: 0.0.1
- UUID: 3351b0f4-cf06-4fa2-8823-edf67bd30223
- description: This task updates the config for O-RU when link
- failure is detected.
- - key:
- name: LinkMonitorModel
- version: 0.0.1
- value:
- key:
- name: LinkMonitorModel
- version: 0.0.1
- UUID: 540226fb-55ee-4f0e-a444-983a0494818e
- description: This is the Apex Policy Model for link monitoring.
- - key:
- name: LinkMonitorModel_Events
- version: 0.0.1
- value:
- key:
- name: LinkMonitorModel_Events
- version: 0.0.1
- UUID: 27ad3e7e-fe3b-3bd6-9081-718705c2bcea
- description: Generated description for concept referred to by
- key "LinkMonitorModel_Events:0.0.1"
- - key:
- name: LinkMonitorModel_KeyInfo
- version: 0.0.1
- value:
- key:
- name: LinkMonitorModel_KeyInfo
- version: 0.0.1
- UUID: ea0b5f58-eefd-358a-9660-840c640bf981
- description: Generated description for concept referred to by
- key "LinkMonitorModel_KeyInfo:0.0.1"
- - key:
- name: LinkMonitorModel_Policies
- version: 0.0.1
- value:
- key:
- name: LinkMonitorModel_Policies
- version: 0.0.1
- UUID: ee9e0b0f-2b7d-3ab7-9a98-c5ec05ed823d
- description: Generated description for concept referred to by
- key "LinkMonitorModel_Policies:0.0.1"
- - key:
- name: LinkMonitorModel_Schemas
- version: 0.0.1
- value:
- key:
- name: LinkMonitorModel_Schemas
- version: 0.0.1
- UUID: fa5f9b8f-796c-3c70-84e9-5140c958c4bb
- description: Generated description for concept referred to by
- key "LinkMonitorModel_Schemas:0.0.1"
- - key:
- name: LinkMonitorModel_Tasks
- version: 0.0.1
- value:
- key:
- name: LinkMonitorModel_Tasks
- version: 0.0.1
- UUID: eec592f7-69d5-39a9-981a-e552f787ed01
- description: Generated description for concept referred to by
- key "LinkMonitorModel_Tasks:0.0.1"
- - key:
- name: LinkMonitorPolicy
- version: 0.0.1
- value:
- key:
- name: LinkMonitorPolicy
- version: 0.0.1
- UUID: 6c5e410f-489a-46ff-964e-982ce6e8b6d0
- description: Generated description for concept referred to by
- key "LinkMonitorPolicy:0.0.1"
- - key:
- name: MessageSchema
- version: 0.0.1
- value:
- key:
- name: MessageSchema
- version: 0.0.1
- UUID: ac4b34ac-39d6-3393-a267-8d5b84854018
- description: A schema for messages from apex
- - key:
- name: NoPolicyDefinedTask
- version: 0.0.1
- value:
- key:
- name: NoPolicyDefinedTask
- version: 0.0.1
- UUID: d48b619e-d00d-4008-b884-02d76ea4350b
- description: This task sends a message to the output when an
- event is received for which no policy has been defined.
- - key:
- name: OduIdSchema
- version: 0.0.1
- value:
- key:
- name: OduIdSchema
- version: 0.0.1
- UUID: 50662174-a88b-3cbd-91bd-8e91b40b2660
- description: A schema for O-DU-ID
- - key:
- name: OruIdSchema
- version: 0.0.1
- value:
- key:
- name: OruIdSchema
- version: 0.0.1
- UUID: 54daf32b-015f-39cd-8530-a1175c5553e9
- description: A schema for O-RU-ID
- policies:
- key:
- name: LinkMonitorModel_Policies
- version: 0.0.1
- policyMap:
- entry:
- - key:
- name: LinkMonitorPolicy
- version: 0.0.1
- value:
- policyKey:
- name: LinkMonitorPolicy
- version: 0.0.1
- template: Freestyle
- state:
- entry:
- - key: LinkClearedState
- value:
- stateKey:
- parentKeyName: LinkMonitorPolicy
- parentKeyVersion: 0.0.1
- parentLocalName: 'NULL'
- localName: LinkClearedState
- trigger:
- name: CreateLinkClearedOutfieldsEvent
- version: 0.0.1
- stateOutputs:
- entry:
- - key: LinkClearedLogic_Output_Direct
- value:
- key:
- parentKeyName: LinkMonitorPolicy
- parentKeyVersion: 0.0.1
- parentLocalName: LinkClearedState
- localName: LinkClearedLogic_Output_Direct
- outgoingEvent:
- name: ApexMessageOutputEvent
- version: 0.0.1
- nextState:
- parentKeyName: 'NULL'
- parentKeyVersion: 0.0.0
- parentLocalName: 'NULL'
- localName: 'NULL'
- contextAlbumReference: []
- taskSelectionLogic:
- key: 'NULL'
- logicFlavour: UNDEFINED
- logic: ''
- stateFinalizerLogicMap:
- entry: []
- defaultTask:
- name: LinkClearedTask
- version: 0.0.1
- taskReferences:
- entry:
- - key:
- name: LinkClearedTask
- version: 0.0.1
- value:
- key:
- parentKeyName: LinkMonitorPolicy
- parentKeyVersion: 0.0.1
- parentLocalName: LinkClearedState
- localName: LinkClearedTask
- outputType: DIRECT
- output:
- parentKeyName: LinkMonitorPolicy
- parentKeyVersion: 0.0.1
- parentLocalName: LinkClearedState
- localName: LinkClearedLogic_Output_Direct
- - key: LinkFailureOrClearedState
- value:
- stateKey:
- parentKeyName: LinkMonitorPolicy
- parentKeyVersion: 0.0.1
- parentLocalName: 'NULL'
- localName: LinkFailureOrClearedState
- trigger:
- name: LinkFailureInputEvent
- version: 0.0.1
- stateOutputs:
- entry:
- - key: CreateLinkClearedOutfieldsLogic_Output_Direct
- value:
- key:
- parentKeyName: LinkMonitorPolicy
- parentKeyVersion: 0.0.1
- parentLocalName: LinkFailureOrClearedState
- localName: CreateLinkClearedOutfieldsLogic_Output_Direct
- outgoingEvent:
- name: CreateLinkClearedOutfieldsEvent
- version: 0.0.1
- nextState:
- parentKeyName: LinkMonitorPolicy
- parentKeyVersion: 0.0.1
- parentLocalName: 'NULL'
- localName: LinkClearedState
- - key: CreateLinkFailureOutfieldsLogic_Output_Direct
- value:
- key:
- parentKeyName: LinkMonitorPolicy
- parentKeyVersion: 0.0.1
- parentLocalName: LinkFailureOrClearedState
- localName: CreateLinkFailureOutfieldsLogic_Output_Direct
- outgoingEvent:
- name: CreateLinkFailureOutfieldsEvent
- version: 0.0.1
- nextState:
- parentKeyName: LinkMonitorPolicy
- parentKeyVersion: 0.0.1
- parentLocalName: 'NULL'
- localName: LinkFailureState
- - key: NoPolicyDefinedLogic_Output_Direct
- value:
- key:
- parentKeyName: LinkMonitorPolicy
- parentKeyVersion: 0.0.1
- parentLocalName: LinkFailureOrClearedState
- localName: NoPolicyDefinedLogic_Output_Direct
- outgoingEvent:
- name: ApexMessageOutputEvent
- version: 0.0.1
- nextState:
- parentKeyName: 'NULL'
- parentKeyVersion: 0.0.0
- parentLocalName: 'NULL'
- localName: 'NULL'
- contextAlbumReference: []
- taskSelectionLogic:
- key: TaskSelectionLogic
- logicFlavour: JAVASCRIPT
- logic: |-
- /*
- * ============LICENSE_START=======================================================
- * Copyright (C) 2021 Nordix Foundation.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
- executor.logger.info("Task Selection Execution: '"+executor.subject.id+
- "'. InputFields: '"+executor.inFields+"'");
-
- var linkFailureInput = executor.inFields.get("LinkFailureInput");
- var commonEventHeader = linkFailureInput.get("event").get("commonEventHeader");
- var domain = commonEventHeader.get("domain");
-
- taskFailure = executor.subject.getTaskKey("CreateLinkFailureOutfieldsTask");
- taskCleared = executor.subject.getTaskKey("CreateLinkClearedOutfieldsTask");
- taskDefault = executor.subject.getDefaultTaskKey();
-
- if (domain == "fault") {
- var faultFields = linkFailureInput.get("event").get("faultFields");
- var alarmCondition = faultFields.get("alarmCondition");
- var eventSeverity = faultFields.get("eventSeverity");
- if (alarmCondition == "28" && eventSeverity != "NORMAL") {
- taskFailure.copyTo(executor.selectedTask);
- } else if (alarmCondition == "28" && eventSeverity == "NORMAL") {
- taskCleared.copyTo(executor.selectedTask);
- } else {
- taskDefault.copyTo(executor.selectedTask);
- }
- } else {
- taskDefault.copyTo(executor.selectedTask);
- }
-
- true;
- stateFinalizerLogicMap:
- entry: []
- defaultTask:
- name: NoPolicyDefinedTask
- version: 0.0.1
- taskReferences:
- entry:
- - key:
- name: CreateLinkClearedOutfieldsTask
- version: 0.0.1
- value:
- key:
- parentKeyName: LinkMonitorPolicy
- parentKeyVersion: 0.0.1
- parentLocalName: LinkFailureOrClearedState
- localName: CreateLinkClearedOutfieldsTask
- outputType: DIRECT
- output:
- parentKeyName: LinkMonitorPolicy
- parentKeyVersion: 0.0.1
- parentLocalName: LinkFailureOrClearedState
- localName: CreateLinkClearedOutfieldsLogic_Output_Direct
- - key:
- name: CreateLinkFailureOutfieldsTask
- version: 0.0.1
- value:
- key:
- parentKeyName: LinkMonitorPolicy
- parentKeyVersion: 0.0.1
- parentLocalName: LinkFailureOrClearedState
- localName: CreateLinkFailureOutfieldsTask
- outputType: DIRECT
- output:
- parentKeyName: LinkMonitorPolicy
- parentKeyVersion: 0.0.1
- parentLocalName: LinkFailureOrClearedState
- localName: CreateLinkFailureOutfieldsLogic_Output_Direct
- - key:
- name: NoPolicyDefinedTask
- version: 0.0.1
- value:
- key:
- parentKeyName: LinkMonitorPolicy
- parentKeyVersion: 0.0.1
- parentLocalName: LinkFailureOrClearedState
- localName: NoPolicyDefinedTask
- outputType: DIRECT
- output:
- parentKeyName: LinkMonitorPolicy
- parentKeyVersion: 0.0.1
- parentLocalName: LinkFailureOrClearedState
- localName: NoPolicyDefinedLogic_Output_Direct
- - key: LinkFailureState
- value:
- stateKey:
- parentKeyName: LinkMonitorPolicy
- parentKeyVersion: 0.0.1
- parentLocalName: 'NULL'
- localName: LinkFailureState
- trigger:
- name: CreateLinkFailureOutfieldsEvent
- version: 0.0.1
- stateOutputs:
- entry:
- - key: LinkFailureLogic_Output_Direct
- value:
- key:
- parentKeyName: LinkMonitorPolicy
- parentKeyVersion: 0.0.1
- parentLocalName: LinkFailureState
- localName: LinkFailureLogic_Output_Direct
- outgoingEvent:
- name: LinkFailureOutputEvent
- version: 0.0.1
- nextState:
- parentKeyName: 'NULL'
- parentKeyVersion: 0.0.0
- parentLocalName: 'NULL'
- localName: 'NULL'
- contextAlbumReference: []
- taskSelectionLogic:
- key: 'NULL'
- logicFlavour: UNDEFINED
- logic: ''
- stateFinalizerLogicMap:
- entry: []
- defaultTask:
- name: LinkFailureTask
- version: 0.0.1
- taskReferences:
- entry:
- - key:
- name: LinkFailureTask
- version: 0.0.1
- value:
- key:
- parentKeyName: LinkMonitorPolicy
- parentKeyVersion: 0.0.1
- parentLocalName: LinkFailureState
- localName: LinkFailureTask
- outputType: DIRECT
- output:
- parentKeyName: LinkMonitorPolicy
- parentKeyVersion: 0.0.1
- parentLocalName: LinkFailureState
- localName: LinkFailureLogic_Output_Direct
- firstState: LinkFailureOrClearedState
- tasks:
- key:
- name: LinkMonitorModel_Tasks
- version: 0.0.1
- taskMap:
- entry:
- - key:
- name: CreateLinkClearedOutfieldsTask
- version: 0.0.1
- value:
- key:
- name: CreateLinkClearedOutfieldsTask
- version: 0.0.1
- inputFields:
- entry:
- - key: LinkFailureInput
- value:
- key: LinkFailureInput
- fieldSchemaKey:
- name: LinkFailureInputSchema
- version: 0.0.1
- optional: false
- outputFields:
- entry:
- - key: OruId
- value:
- key: OruId
- fieldSchemaKey:
- name: OruIdSchema
- version: 0.0.1
- optional: false
- taskParameters:
- entry: []
- contextAlbumReference: []
- taskLogic:
- key: TaskLogic
- logicFlavour: JAVASCRIPT
- logic: |-
- /*
- * ============LICENSE_START=======================================================
- * Copyright (C) 2021 Nordix Foundation.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
- executor.logger.info("Task Execution: '"+executor.subject.id+"'. Input Fields: '"+executor.inFields+"'");
-
- var linkFailureInput = executor.inFields.get("LinkFailureInput");
- var oruId = linkFailureInput.get("event").get("commonEventHeader").get("sourceName");
-
- executor.outFields.put("OruId", oruId);
-
- executor.logger.info(executor.outFields);
-
- true;
- - key:
- name: CreateLinkFailureOutfieldsTask
- version: 0.0.1
- value:
- key:
- name: CreateLinkFailureOutfieldsTask
- version: 0.0.1
- inputFields:
- entry:
- - key: LinkFailureInput
- value:
- key: LinkFailureInput
- fieldSchemaKey:
- name: LinkFailureInputSchema
- version: 0.0.1
- optional: false
- outputFields:
- entry:
- - key: OduId
- value:
- key: OduId
- fieldSchemaKey:
- name: OduIdSchema
- version: 0.0.1
- optional: false
- - key: OruId
- value:
- key: OruId
- fieldSchemaKey:
- name: OruIdSchema
- version: 0.0.1
- optional: false
- taskParameters:
- entry: []
- contextAlbumReference: []
- taskLogic:
- key: TaskLogic
- logicFlavour: JAVASCRIPT
- logic: |-
- /*
- * ============LICENSE_START=======================================================
- * Copyright (C) 2021 Nordix Foundation.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
- executor.logger.info("Task Execution: '"+executor.subject.id+"'. Input Fields: '"+executor.inFields+"'");
-
- var returnValue = true;
- var linkFailureInput = executor.inFields.get("LinkFailureInput");
- var oruId = linkFailureInput.get("event").get("commonEventHeader").get("sourceName");
- var oruOduMap = JSON.parse(executor.parameters.get("ORU-ODU-Map"));
-
- if (oruId in oruOduMap) {
- var oduId = oruOduMap[oruId];
- executor.outFields.put("OruId", oruId);
- executor.outFields.put("OduId", oduId);
- executor.logger.info(executor.outFields);
- } else {
- executor.message = "No O-RU found in the config with this ID: " + oruId;
- returnValue = false;
- }
-
- returnValue;
- - key:
- name: LinkClearedTask
- version: 0.0.1
- value:
- key:
- name: LinkClearedTask
- version: 0.0.1
- inputFields:
- entry:
- - key: OruId
- value:
- key: OruId
- fieldSchemaKey:
- name: OruIdSchema
- version: 0.0.1
- optional: false
- outputFields:
- entry:
- - key: message
- value:
- key: message
- fieldSchemaKey:
- name: MessageSchema
- version: 0.0.1
- optional: false
- taskParameters:
- entry: []
- contextAlbumReference: []
- taskLogic:
- key: TaskLogic
- logicFlavour: JAVASCRIPT
- logic: |-
- /*
- * ============LICENSE_START=======================================================
- * Copyright (C) 2021 Nordix Foundation.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
- executor.logger.info("Task Execution: '"+executor.subject.id+"'. Input Fields: '"+executor.inFields+"'");
-
- var oruId = executor.inFields.get("OruId");
-
- executor.outFields.put("message", "CLEARED link failure for O-RU: " + oruId);
-
- executor.logger.info(executor.outFields);
-
- true;
- - key:
- name: LinkFailureTask
- version: 0.0.1
- value:
- key:
- name: LinkFailureTask
- version: 0.0.1
- inputFields:
- entry:
- - key: OduId
- value:
- key: OduId
- fieldSchemaKey:
- name: OduIdSchema
- version: 0.0.1
- optional: false
- - key: OruId
- value:
- key: OruId
- fieldSchemaKey:
- name: OruIdSchema
- version: 0.0.1
- optional: false
- outputFields:
- entry:
- - key: LinkFailureOutput
- value:
- key: LinkFailureOutput
- fieldSchemaKey:
- name: LinkFailureOutputSchema
- version: 0.0.1
- optional: false
- taskParameters:
- entry: []
- contextAlbumReference: []
- taskLogic:
- key: TaskLogic
- logicFlavour: JAVASCRIPT
- logic: |-
- /*
- * ============LICENSE_START=======================================================
- * Copyright (C) 2021 Nordix Foundation.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
- executor.logger.info("Task Execution: '"+executor.subject.id+"'. Input Fields: '"+executor.inFields+"'");
-
- var linkFailureOutput = executor.subject.getOutFieldSchemaHelper("LinkFailureOutput").createNewInstance();
-
- var oruId = executor.inFields.get("OruId");
- var oduId = executor.inFields.get("OduId");
-
- var unlockMessageArray = new java.util.ArrayList();
- for (var i = 0; i < 1; i++) {
- unlockMessageArray.add({
- "name" : oruId,
- "administrative_DasH_state" : "UNLOCKED"
- });
- }
-
- linkFailureOutput.put("o_DasH_ran_DasH_sc_DasH_du_DasH_hello_DasH_world_ColoN_du_DasH_to_DasH_ru_DasH_connection", unlockMessageArray);
- executor.outFields.put("LinkFailureOutput", linkFailureOutput.toString());
-
- executor.getExecutionProperties().setProperty("OduId", oduId);
- executor.getExecutionProperties().setProperty("OruId", oruId);
-
- executor.logger.info(executor.outFields);
-
- true;
- - key:
- name: NoPolicyDefinedTask
- version: 0.0.1
- value:
- key:
- name: NoPolicyDefinedTask
- version: 0.0.1
- inputFields:
- entry:
- - key: LinkFailureInput
- value:
- key: LinkFailureInput
- fieldSchemaKey:
- name: LinkFailureInputSchema
- version: 0.0.1
- optional: false
- outputFields:
- entry:
- - key: message
- value:
- key: message
- fieldSchemaKey:
- name: MessageSchema
- version: 0.0.1
- optional: false
- taskParameters:
- entry: []
- contextAlbumReference: []
- taskLogic:
- key: TaskLogic
- logicFlavour: JAVASCRIPT
- logic: |-
- /*
- * ============LICENSE_START=======================================================
- * Copyright (C) 2021 Nordix Foundation.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
- executor.logger.info("Task Execution: '"+executor.subject.id+"'. Input Fields: '"+executor.inFields+"'");
-
- executor.outFields.put("message", "No policy defined for this event");
-
- executor.logger.info(executor.outFields);
-
- true;
- events:
- key:
- name: LinkMonitorModel_Events
- version: 0.0.1
- eventMap:
- entry:
- - key:
- name: ApexMessageOutputEvent
- version: 0.0.1
- value:
- key:
- name: ApexMessageOutputEvent
- version: 0.0.1
- nameSpace: org.onap.policy.apex.auth.clieditor
- source: APEX
- target: APEX
- parameter:
- entry:
- - key: message
- value:
- key: message
- fieldSchemaKey:
- name: MessageSchema
- version: 0.0.1
- optional: false
- - key:
- name: CreateLinkClearedOutfieldsEvent
- version: 0.0.1
- value:
- key:
- name: CreateLinkClearedOutfieldsEvent
- version: 0.0.1
- nameSpace: org.onap.policy.apex.auth.clieditor
- source: APEX
- target: APEX
- parameter:
- entry:
- - key: OruId
- value:
- key: OruId
- fieldSchemaKey:
- name: OruIdSchema
- version: 0.0.1
- optional: false
- - key:
- name: CreateLinkFailureOutfieldsEvent
- version: 0.0.1
- value:
- key:
- name: CreateLinkFailureOutfieldsEvent
- version: 0.0.1
- nameSpace: org.onap.policy.apex.auth.clieditor
- source: APEX
- target: APEX
- parameter:
- entry:
- - key: OduId
- value:
- key: OduId
- fieldSchemaKey:
- name: OduIdSchema
- version: 0.0.1
- optional: false
- - key: OruId
- value:
- key: OruId
- fieldSchemaKey:
- name: OruIdSchema
- version: 0.0.1
- optional: false
- - key:
- name: LinkFailureInputEvent
- version: 0.0.1
- value:
- key:
- name: LinkFailureInputEvent
- version: 0.0.1
- nameSpace: org.onap.policy.apex.auth.clieditor
- source: DMAAP
- target: APEX
- parameter:
- entry:
- - key: LinkFailureInput
- value:
- key: LinkFailureInput
- fieldSchemaKey:
- name: LinkFailureInputSchema
- version: 0.0.1
- optional: false
- - key:
- name: LinkFailureOutputEvent
- version: 0.0.1
- value:
- key:
- name: LinkFailureOutputEvent
- version: 0.0.1
- nameSpace: org.onap.policy.apex.auth.clieditor
- source: APEX
- target: OAM
- parameter:
- entry:
- - key: LinkFailureOutput
- value:
- key: LinkFailureOutput
- fieldSchemaKey:
- name: LinkFailureOutputSchema
- version: 0.0.1
- optional: false
- schemas:
- key:
- name: LinkMonitorModel_Schemas
- version: 0.0.1
- schemas:
- entry:
- - key:
- name: LinkFailureInputSchema
- version: 0.0.1
- value:
- key:
- name: LinkFailureInputSchema
- version: 0.0.1
- schemaFlavour: Avro
- schemaDefinition: |-
- {
- "type": "record",
- "name": "Link_Failure_Input",
- "fields": [
- {
- "name": "event",
- "type": {
- "type": "record",
- "name": "Event_Type",
- "fields": [
- {
- "name": "commonEventHeader",
- "type": {
- "type": "record",
- "name": "Common_Event_Header_Type",
- "fields": [
- {
- "name": "domain",
- "type": "string"
- },
- {
- "name": "eventId",
- "type": "string"
- },
- {
- "name": "eventName",
- "type": "string"
- },
- {
- "name": "eventType",
- "type": "string"
- },
- {
- "name": "sequence",
- "type": "int"
- },
- {
- "name": "priority",
- "type": "string"
- },
- {
- "name": "reportingEntityId",
- "type": "string"
- },
- {
- "name": "reportingEntityName",
- "type": "string"
- },
- {
- "name": "sourceId",
- "type": "string"
- },
- {
- "name": "sourceName",
- "type": "string"
- },
- {
- "name": "startEpochMicrosec",
- "type": "string"
- },
- {
- "name": "lastEpochMicrosec",
- "type": "string"
- },
- {
- "name": "nfNamingCode",
- "type": "string"
- },
- {
- "name": "nfVendorName",
- "type": "string"
- },
- {
- "name": "timeZoneOffset",
- "type": "string"
- },
- {
- "name": "version",
- "type": "string"
- },
- {
- "name": "vesEventListenerVersion",
- "type": "string"
- }
- ]
- }
- },
- {
- "name": "faultFields",
- "type": {
- "type": "record",
- "name": "Fault_Fields_Type",
- "fields": [
- {
- "name": "faultFieldsVersion",
- "type": "string"
- },
- {
- "name": "alarmCondition",
- "type": "string"
- },
- {
- "name": "alarmInterfaceA",
- "type": "string"
- },
- {
- "name": "eventSourceType",
- "type": "string"
- },
- {
- "name": "specificProblem",
- "type": "string"
- },
- {
- "name": "eventSeverity",
- "type": "string"
- },
- {
- "name": "vfStatus",
- "type": "string"
- },
- {
- "name": "alarmAdditionalInformation",
- "type": {
- "type": "record",
- "name": "Alarm_Additional_Information_Type",
- "fields": [
- {
- "name": "eventTime",
- "type": "string"
- },
- {
- "name": "equipType",
- "type": "string"
- },
- {
- "name": "vendor",
- "type": "string"
- },
- {
- "name": "model",
- "type": "string"
- }
- ]
- }
- }
- ]
- }
- }
- ]
- }
- }
- ]
- }
- - key:
- name: LinkFailureOutputSchema
- version: 0.0.1
- value:
- key:
- name: LinkFailureOutputSchema
- version: 0.0.1
- schemaFlavour: Avro
- schemaDefinition: "{\n \"type\": \"record\",\n \"name\":
- \"Link_Failure_Output\",\n \"fields\": [\n {\n \"name\":
- \"o_DasH_ran_DasH_sc_DasH_du_DasH_hello_DasH_world_ColoN_du_DasH_to_DasH_ru_DasH_connection\",\n
- \ \"type\": {\n \t\"type\": \"array\",\n
- \ \t\"items\": {\n\t\t \"name\": \"Config_Change_Message\",\n
- \ \"type\": \"record\",\n \"fields\":
- [\n {\n \"name\":
- \"name\",\n \"type\": \"string\"\n
- \ },\n\t\t\t{\n \"name\":
- \"administrative_DasH_state\",\n \"type\":
- \"string\"\n }\n ]\n
- \ }\n\t }\n }\n ]\n}"
- - key:
- name: MessageSchema
- version: 0.0.1
- value:
- key:
- name: MessageSchema
- version: 0.0.1
- schemaFlavour: Java
- schemaDefinition: java.lang.String
- - key:
- name: OduIdSchema
- version: 0.0.1
- value:
- key:
- name: OduIdSchema
- version: 0.0.1
- schemaFlavour: Java
- schemaDefinition: java.lang.String
- - key:
- name: OruIdSchema
- version: 0.0.1
- value:
- key:
- name: OruIdSchema
- version: 0.0.1
- schemaFlavour: Java
- schemaDefinition: java.lang.String
- eventOutputParameters:
- RestProducer:
- carrierTechnologyParameters:
- carrierTechnology: RESTCLIENT
- parameterClassName: org.onap.policy.apex.plugins.event.carrier.restclient.RestClientCarrierTechnologyParameters
- parameters:
- url: http://sdnr-sim:9990/rests/data/network-topology:network-topology/topology=topology-netconf/node={OduId}/yang-ext:mount/o-ran-sc-du-hello-world:network-function/du-to-ru-connection={OruId}
- httpMethod: PUT
- httpHeaders:
- - - Authorization
- - Basic YWRtaW46S3A4Yko0U1hzek0wV1hsaGFrM2VIbGNzZTJnQXc4NHZhb0dHbUp2VXkyVQ==
- eventProtocolParameters:
- eventProtocol: JSON
- parameters:
- pojoField: LinkFailureOutput
- eventNameFilter: LinkFailureOutputEvent
- StdOutProducer:
- carrierTechnologyParameters:
- carrierTechnology: FILE
- parameters:
- standardIo: true
- eventProtocolParameters:
- eventProtocol: JSON
- parameters:
- pojoField: message
- eventNameFilter: ApexMessageOutputEvent
- eventInputParameters:
- DMaaPConsumer:
- carrierTechnologyParameters:
- carrierTechnology: RESTCLIENT
- parameterClassName: org.onap.policy.apex.plugins.event.carrier.restclient.RestClientCarrierTechnologyParameters
- parameters:
- url: http://onap-dmaap:3904/events/unauthenticated.SEC_FAULT_OUTPUT/users/link-monitor-nonrtric?timeout=15000&limit=100
- eventProtocolParameters:
- eventProtocol: JSON
- parameters:
- versionAlias: version
- pojoField: LinkFailureInput
- eventName: LinkFailureInputEvent