...
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
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": "O-DU-1122", "ERICSSON-O-RU-1122111222": "HCL-O-DU-1122", "ERICSSON-O-RU-11223": "O-DU-1122", "ERICSSON-O-RU-1122211224": "HCL-O-DU-11221123", "ERICSSON-O-RU-11225": "O-DU-1123", "ERICSSON-O-RU-1122311226": "HCL-O-DU-11221123", "ERICSSON-O-RU-11227": "O-DU-1124", "ERICSSON-O-RU-1122411228": "HCL-O-DU-11231125", "ERICSSON-O-RU-11229": "O-DU-1125" } "ERICSSON-O-RU-11225": "HCL-O-DU-1123",policy_type_impl: apexPolicyModel: key: name: LinkMonitorModel "ERICSSON-O-RU-11226": "HCL-O-DU-1123",version: 0.0.1 keyInformation: key: "ERICSSON-O-RU-11227": "HCL-O-DU-1124", name: LinkMonitorModel_KeyInfo version: 0.0.1 keyInfoMap: "ERICSSON-O-RU-11228": "HCL-O-DU-1125", entry: - key: "ERICSSON-O-RU-11229": "HCL-O-DU-1125"}name: ApexMessageOutputEvent policy_type_impl: apexPolicyModel: version: 0.0.1 keyvalue: name: LinkMonitorModel key: version: 0.0.1 name: ApexMessageOutputEvent keyInformation: key: version: 0.0.1 nameUUID: LinkMonitorModel_KeyInfocca47d74-7754-4a61-b163-ca31f66b157b version: 0.0.1 description: Generated description for concept referred to by keyInfoMap: key entry:"ApexMessageOutputEvent:0.0.1" - key: name: ApexMessageOutputEventCreateLinkClearedOutfieldsEvent version: 0.0.1 value: key: name: ApexMessageOutputEventCreateLinkClearedOutfieldsEvent version: 0.0.1 UUID: cca47d74a295d6a3-77541b73-4a61387e-b163abba-ca31f66b157bb41e9b608802 description: Generated description for concept referred to by key "ApexMessageOutputEventCreateLinkClearedOutfieldsEvent:0.0.1" - key: name: CreateLinkClearedOutfieldsEventCreateLinkClearedOutfieldsTask version: 0.0.1 value: key: name: CreateLinkClearedOutfieldsEventCreateLinkClearedOutfieldsTask version: 0.0.1 UUID: a295d6a3fd594e88-1b73411d-387e4a94-abbab2be-b41e9b608802697b3a0d7adf description: This task Generatedcreates descriptionthe foroutput conceptfields referredwhen tolink byfailure key "CreateLinkClearedOutfieldsEvent:0.0.1" is cleared. - key: name: CreateLinkClearedOutfieldsTaskCreateLinkFailureOutfieldsEvent version: 0.0.1 value: key: name: CreateLinkClearedOutfieldsTaskCreateLinkFailureOutfieldsEvent version: 0.0.1 UUID: fd594e8802be2b5d-411d45b7-4a943c54-b2beae54-697b3a0d7adf97f2b5c30125 description: ThisGenerated taskdescription createsfor theconcept outputreferred fields when link failureto by is cleared.key "CreateLinkFailureOutfieldsEvent:0.0.1" - key: name: CreateLinkFailureOutfieldsEventCreateLinkFailureOutfieldsTask version: 0.0.1 value: key: name: CreateLinkFailureOutfieldsEventCreateLinkFailureOutfieldsTask version: 0.0.1 UUID: 02be2b5dac3d9842-45b780af-3c544a98-ae54951c-97f2b5c30125bd79a431c613 description: Generated description for concept referred to byThis task the output fields when link failure is key "CreateLinkFailureOutfieldsEvent:0.0.1"detected. - key: name: CreateLinkFailureOutfieldsTaskLinkClearedTask version: 0.0.1 value: key: name: CreateLinkFailureOutfieldsTaskLinkClearedTask version: 0.0.1 UUID: ac3d9842eecfde90-80af896c-4a984343-951c8f9c-bd79a431c6132603ced94e2d description: This task sends a message to the output fields when link failure is failure is detectedcleared. - key: name: LinkClearedTaskLinkFailureInputEvent version: 0.0.1 value: key: name: LinkClearedTaskLinkFailureInputEvent version: 0.0.1 UUID: eecfde90c4500941-896c3f98-43434080-8f9ca9cc-2603ced94e2d5b9753ed050b description: ThisGenerated taskdescription sendsfor aconcept messagereferred to the output when linkby failure is cleared.key "LinkFailureInputEvent:0.0.1" - key: name: LinkFailureInputEventLinkFailureInputSchema version: 0.0.1 value: key: name: LinkFailureInputEventLinkFailureInputSchema version: 0.0.1 UUID: c45009413b3974fc-3f983012-40803b02-a9cc9f33-5b9753ed050bc9d8eefe4dc1 description: Generated description for concept referred to by key "LinkFailureInputEventLinkFailureInputSchema:0.0.1" - key: name: LinkFailureInputSchemaLinkFailureOutputEvent version: 0.0.1 value: key: name: LinkFailureInputSchemaLinkFailureOutputEvent version: 0.0.1 UUID: 3b3974fc4f04aa98-3012e917-3b024f4a-9f33882a-c9d8eefe4dc1c75ba5a99374 description: Generated description for concept referred to by key "LinkFailureInputSchemaLinkFailureOutputEvent:0.0.1" - key: name: LinkFailureOutputEventLinkFailureOutputSchema version: 0.0.1 value: key: name: LinkFailureOutputEventLinkFailureOutputSchema version: 0.0.1 UUID: 4f04aa982d1a7f6e-e917eb9a-4f4a3984-882abe1f-c75ba5a99374283d98111b84 description: Generated description for concept referred to by key "LinkFailureOutputEventLinkFailureOutputSchema:0.0.1" - key: name: LinkFailureOutputSchemaLinkFailureTask version: 0.0.1 value: key: name: LinkFailureOutputSchemaLinkFailureTask version: 0.0.1 UUID: 2d1a7f6e3351b0f4-eb9acf06-39844fa2-be1f8823-283d98111b84edf67bd30223 description: Generated description This task updates the config for conceptO-RU referredwhen to bylink key "LinkFailureOutputSchema:0.0.1"failure is detected. - key: name: LinkFailureTaskLinkMonitorModel version: 0.0.1 value: key: name: LinkFailureTaskLinkMonitorModel version: 0.0.1 UUID: 3351b0f4540226fb-cf0655ee-4fa24f0e-8823a444-edf67bd30223983a0494818e description: This task updatesis the configApex forPolicy O-RUModel whenfor link failure is detected monitoring. - key: name: LinkMonitorModel_Events version: 0.0.1 value: key: name: LinkMonitorModel_Events version: 0.0.1 UUID: 540226fb27ad3e7e-55eefe3b-4f0e3bd6-a4449081-983a0494818e718705c2bcea description: This is the Apex Policy Model for link monitoring. Generated description for concept referred to by key "LinkMonitorModel_Events:0.0.1" - key: name: LinkMonitorModel_EventsKeyInfo version: 0.0.1 value: key: name: LinkMonitorModel_EventsKeyInfo version: 0.0.1 UUID: 27ad3e7eea0b5f58-fe3beefd-3bd6358a-90819660-718705c2bcea840c640bf981 description: Generated description for concept referred to by key "LinkMonitorModel_EventsKeyInfo:0.0.1" - key: name: LinkMonitorModel_KeyInfoPolicies version: 0.0.1 value: key: name: LinkMonitorModel_KeyInfoPolicies version: 0.0.1 UUID: ea0b5f58ee9e0b0f-eefd2b7d-358a3ab7-96609a98-840c640bf981c5ec05ed823d description: Generated description for concept referred to by key "LinkMonitorModel_KeyInfoPolicies:0.0.1" - key: name: LinkMonitorModel_PoliciesSchemas version: 0.0.1 value: key: name: LinkMonitorModel_PoliciesSchemas version: 0.0.1 UUID: ee9e0b0ffa5f9b8f-2b7d796c-3ab73c70-9a9884e9-c5ec05ed823d5140c958c4bb description: Generated description for concept referred to by key "LinkMonitorModel_PoliciesSchemas:0.0.1" - key: name: LinkMonitorModel_SchemasTasks version: 0.0.1 value: key: name: LinkMonitorModel_SchemasTasks version: 0.0.1 UUID: fa5f9b8feec592f7-796c69d5-3c7039a9-84e9981a-5140c958c4bbe552f787ed01 description: Generated description for concept referred to by key "LinkMonitorModel_SchemasTasks:0.0.1" - key: name: LinkMonitorModel_TasksLinkMonitorPolicy version: 0.0.1 value: key: name: LinkMonitorModel_TasksLinkMonitorPolicy version: 0.0.1 UUID: eec592f76c5e410f-69d5489a-39a946ff-981a964e-e552f787ed01982ce6e8b6d0 description: Generated description for concept referred to by key "LinkMonitorModel_TasksLinkMonitorPolicy:0.0.1" - key: name: LinkMonitorPolicyMessageSchema version: 0.0.1 value: key: name: LinkMonitorPolicyMessageSchema version: 0.0.1 UUID: 6c5e410fac4b34ac-489a39d6-46ff3393-964ea267-982ce6e8b6d08d5b84854018 description: GeneratedA descriptionschema for conceptmessages referredfrom to byapex key "LinkMonitorPolicy:0.0.1" - key: - key: name: MessageSchemaNoPolicyDefinedTask version: 0.0.1 value: key: name: MessageSchemaNoPolicyDefinedTask version: 0.0.1 UUID: ac4b34acd48b619e-39d6d00d-33934008-a267b884-8d5b8485401802d76ea4350b description: A schema for messages from apex This task sends a message to the output when an event is received for which no policy has been defined. - key: name: NoPolicyDefinedTaskOduIdSchema version: 0.0.1 value: key: name: NoPolicyDefinedTaskOduIdSchema version: 0.0.1 UUID: d48b619e50662174-d00da88b-40083cbd-b88491bd-02d76ea4350b8e91b40b2660 description: This task sends a message to the output when an event is received for which no policy has been defined.A schema for O-DU-ID - key: name: OduIdSchemaOruIdSchema version: 0.0.1 value: key: name: OduIdSchemaOruIdSchema version: 0.0.1 UUID: 5066217454daf32b-a88b015f-3cbd39cd-91bd8530-8e91b40b2660a1175c5553e9 description: A schema for O-DURU-ID policies: - key: key: name: OruIdSchema name: LinkMonitorModel_Policies version: 0.0.1 policyMap: value: entry: key: - key: name: OruIdSchemaLinkMonitorPolicy version: 0.0.1 UUID: 54daf32b-015f-39cd-8530-a1175c5553e9value: descriptionpolicyKey: A schema for O-RU-ID policies: name: LinkMonitorPolicy key: version: 0.0.1 name: LinkMonitorModel_Policies versiontemplate: 0.0.1Freestyle policyMap: state: entry: entry: - key: - key: LinkClearedState name: LinkMonitorPolicy version: 0.0.1value: value: stateKey: policyKey: parentKeyName: LinkMonitorPolicy name: LinkMonitorPolicy versionparentKeyVersion: 0.0.1 template: Freestyle parentLocalName: 'NULL' state: localName: LinkClearedState entry: trigger: - key: LinkClearedState name: value:CreateLinkClearedOutfieldsEvent stateKey:version: 0.0.1 parentKeyNamestateOutputs: LinkMonitorPolicy parentKeyVersionentry: 0.0.1 - parentLocalNamekey: 'NULL' LinkClearedLogic_Output_Direct localNamevalue: LinkClearedState trigger: key: name: CreateLinkClearedOutfieldsEvent parentKeyName: LinkMonitorPolicy version: 0.0.1 parentKeyVersion: 0.0.1 stateOutputs: parentLocalName: LinkClearedState entry: - keylocalName: LinkClearedLogic_Output_Direct value outgoingEvent: 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({ "nameid" : oruId:"rrm-pol-1", "administrativeradio_DasH_resource_DasH_management_DasH_policy_DasH_max_DasH_stateratio" : "UNLOCKED":25, }); "radio_DasH_resource_DasH_management_DasH_policy_DasH_members": } [ 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); "mobile_DasH_country_DasH_code":"310", executor.logger.info(executor.outFields); "mobile_DasH_network_DasH_code":"150", true; - key: "slice_DasH_differentiator":1, name: NoPolicyDefinedTask version: 0.0.1 "slice_DasH_service_DasH_type":1 value: key: } name: NoPolicyDefinedTask version: 0.0.1], inputFields: "radio_DasH_resource_DasH_management_DasH_policy_DasH_min_DasH_ratio":15, entry: "user_DasH_label":"rrm-pol-1", - key: LinkFailureInput value:"resource_DasH_type":"prb", key: LinkFailureInput "radio_DasH_resource_DasH_management_DasH_policy_DasH_dedicated_DasH_ratio":20, fieldSchemaKey: "administrative_DasH_state":"unlocked" name: LinkFailureInputSchema }); version: 0.0.1} optional: falselinkFailureOutput.put("o_DasH_ran_DasH_sc_DasH_du_DasH_hello_DasH_world_ColoN_radio_DasH_resource_DasH_management_DasH_policy_DasH_ratio", unlockMessageArray); outputFields: executor.outFields.put("LinkFailureOutput", linkFailureOutput.toString()); entry: executor.getExecutionProperties().setProperty("OduId", oduId); - key: message executor.getExecutionProperties().setProperty("OruId", oruId); value: executor.logger.info(executor.outFields); key: message true; - fieldSchemaKeykey: name: MessageSchema NoPolicyDefinedTask version: 0.0.1 optional: falsevalue: taskParameterskey: entryname: []NoPolicyDefinedTask contextAlbumReferenceversion: []0.0.1 taskLogicinputFields: keyentry: TaskLogic - logicFlavourkey: JAVASCRIPTLinkFailureInput logicvalue: |- /*key: LinkFailureInput * ============LICENSE_START======================================================= fieldSchemaKey: * Copyright (C) 2021name: NordixLinkFailureInputSchema Foundation. * ================================================================================ version: 0.0.1 * Licensedoptional: underfalse the Apache License, Version 2.0 (the "License"); outputFields: * you may not use this file except in compliance with the License.entry: - key: message * You may obtain a copy of the License at value: * key: message * http://www.apache.org/licenses/LICENSE-2.0 fieldSchemaKey: * name: MessageSchema * Unless required by applicable law or agreed to in writing, software version: 0.0.1 * distributed under the License is distributed on an "AS IS" BASIS,optional: false taskParameters: * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. entry: [] * See the License for the specific language governing permissions and contextAlbumReference: [] taskLogic: * limitations under the License. key: TaskLogic * logicFlavour: JAVASCRIPT * SPDX-License-Identifierlogic: Apache-2.0|- /* * ============LICENSE_END==START======================================================= */ Copyright (C) 2021 Nordix Foundation. executor.logger.info("Task Execution: '"+executor.subject.id+"'. Input Fields: '"+executor.inFields+"'"); * ================================================================================ executor.outFields.put("message", "No policy defined* forLicensed this event"); under the Apache License, Version 2.0 (the "License"); executor.logger.info(executor.outFields); * you may not use this file except in compliance with the License. true; events: * You may obtain a copy of the License key:at name: LinkMonitorModel_Events version: 0.0.1 * eventMap: * entry:http://www.apache.org/licenses/LICENSE-2.0 - key: * name: ApexMessageOutputEvent * Unless required by applicable law or agreed to in version: 0.0.1writing, software value: * distributed under the License is distributed on an "AS IS" BASIS, key: * name:WITHOUT ApexMessageOutputEvent WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. version: 0.0.1 * See the License for the specific language governing nameSpace: org.onap.policy.apex.auth.clieditorpermissions and source: APEX * limitations under the License. target: APEX * parameter: * SPDX-License-Identifier: Apache-2.0 entry: - key: message * ============LICENSE_END========================================================= value:*/ key: message executor.logger.info("Task Execution: '"+executor.subject.id+"'. Input Fields: '"+executor.inFields+"'"); fieldSchemaKey: executor.outFields.put("message", "No policy defined for this event"); name: MessageSchema executor.logger.info(executor.outFields); version: 0.0.1 true; events: optionalkey: false - key:name: LinkMonitorModel_Events nameversion: CreateLinkClearedOutfieldsEvent0.0.1 version: 0.0.1eventMap: valueentry: - key: name: CreateLinkClearedOutfieldsEventApexMessageOutputEvent version: 0.0.1 nameSpace: org.onap.policy.apex.auth.clieditorvalue: sourcekey: APEX target: name: ApexMessageOutputEvent version: 0.0.1 nameSpace: org.onap.policy.apex.auth.clieditor source: APEX target: APEX parameter: entry: - key: OruIdmessage value: key: OruIdmessage fieldSchemaKey: name: OruIdSchemaMessageSchema version: 0.0.1 optional: false - key: name: CreateLinkFailureOutfieldsEventCreateLinkClearedOutfieldsEvent version: 0.0.1 value: key: name: CreateLinkFailureOutfieldsEventCreateLinkClearedOutfieldsEvent version: 0.0.1 nameSpace: org.onap.policy.apex.auth.clieditor source: APEX target: APEX parameter: entry: - key: OduIdOruId value: key: OduIdOruId fieldSchemaKey: name: OduIdSchemaOruIdSchema version: 0.0.1 optional: false - key: OruId name: CreateLinkFailureOutfieldsEvent value: version: 0.0.1 key: OruId value: fieldSchemaKey: key: name: OruIdSchemaCreateLinkFailureOutfieldsEvent version: 0.0.1 nameSpace: org.onap.policy.apex.auth.clieditor optional: false - key:source: APEX nametarget: LinkFailureInputEventAPEX versionparameter: 0.0.1 valueentry: - key: OduId namevalue: LinkFailureInputEvent version: 0.0.1 key: OduId nameSpace: org.onap.policy.apex.auth.clieditor fieldSchemaKey: source: DMAAP name: OduIdSchema target: APEX parameter: version: 0.0.1 entry: optional: false - key: LinkFailureInputOruId value: key: LinkFailureInputOruId fieldSchemaKey: name: LinkFailureInputSchemaOruIdSchema version: 0.0.1 optional: false - key: name: LinkFailureOutputEventLinkFailureInputEvent version: 0.0.1 value: key: name: LinkFailureOutputEventLinkFailureInputEvent version: 0.0.1 nameSpace: org.onap.policy.apex.auth.clieditor source: APEXDMAAP target: OAMAPEX parameter: entry: - key: LinkFailureOutputLinkFailureInput value: key: LinkFailureOutputLinkFailureInput fieldSchemaKey: name: LinkFailureOutputSchemaLinkFailureInputSchema version: 0.0.1 optional: false schemas: - key: key: name: LinkFailureOutputEvent name: LinkMonitorModel_Schemas version: 0.0.1 schemas: value: entry: - key: name: LinkFailureInputSchemaLinkFailureOutputEvent version: 0.0.1 value:nameSpace: org.onap.policy.apex.auth.clieditor keysource: APEX nametarget: LinkFailureInputSchemaOAM parameter: version: 0.0.1 entry: schemaFlavour: Avro - schemaDefinitionkey: |-LinkFailureOutput {value: "type"key: "record",LinkFailureOutput "name"fieldSchemaKey: "Link_Failure_Input", "fields"name: [LinkFailureOutputSchema {version: 0.0.1 optional: false "name": "event", schemas: key: "type": { name: LinkMonitorModel_Schemas version: 0.0.1 "type"schemas: "record", entry: - key: "name": "Event_Type", name: LinkFailureInputSchema "fields"version: [0.0.1 value: key: { name: LinkFailureInputSchema "name"version: "commonEventHeader",0.0.1 schemaFlavour: Avro "type"schemaDefinition: {|- { "type": "record", "name": "Link_Failure_Input", "namefields": "Common_Event_Header_Type", [ { "fieldsname": [ "event", "type": { { "type": "record", "name": "domainEvent_Type", "fields": [ "type": "string" { }, "name": "commonEventHeader", { "type": { "nametype": "eventIdrecord", "typename": "string"Common_Event_Header_Type", },"fields": [ { "name": "eventNamedomain", "type": "string" }, { "name": "eventTypeeventId", "type": "string" }, { "name": "sequenceeventName", "type": "intstring" }, { "name": "priorityeventType", "type": "string" }, { "name": "reportingEntityIdsequence", "type": "stringint" }, { "name": "reportingEntityNamepriority", "type": "string" }, { "name": "sourceIdreportingEntityId", "type": "string" }, { "name": "sourceNamereportingEntityName", "type": "string" }, { "name": "startEpochMicrosecsourceId", "type": "string" }, { "name": "lastEpochMicrosecsourceName", "type": "string" }, { "name": "nfNamingCodestartEpochMicrosec", "type": "string" }, { "name": "nfVendorNamelastEpochMicrosec", "type": "string" }, { "name": "timeZoneOffsetnfNamingCode", "type": "string" }, { "name": "versionnfVendorName", "type": "string" }, { "name": "vesEventListenerVersiontimeZoneOffset", "type": "string" }, ] { } "name": "version", }, "type": "string" { }, "name": "faultFields", "type": { "typename": "recordvesEventListenerVersion", "nametype": "Fault_Fields_Typestring", "fields": [ } {] } "name": "faultFieldsVersion", }, "type": "string" { }, "name": "faultFields", "type": { "name"type": "alarmConditionrecord", "typename": "stringFault_Fields_Type", },"fields": [ { "name": "alarmInterfaceAfaultFieldsVersion", "type": "string" }, { "name": "eventSourceTypealarmCondition", "type": "string" }, { "name": "specificProblemalarmInterfaceA", "type": "string" }, { "name": "eventSeverityeventSourceType", "type": "string" }, { "name": "vfStatusspecificProblem", "type": "string" }, { "name": "alarmAdditionalInformationeventSeverity", "type": {"string" }, "type": "record", { "name": "Alarm_Additional_Information_Type", "name": "vfStatus", "fields": [ "type": "string" { }, "name": "eventTime", { "typename": "stringalarmAdditionalInformation", },"type": { { "type": "record", "name": "equipTypeAlarm_Additional_Information_Type", "fields": [ "type": "string" { }, {"name": "eventTime", "nametype": "vendorstring", }, "type": "string" { }, {"name": "equipType", "nametype": "modelstring", }, "type": "string" { } ]"name": "vendor", } "type": "string" } }, ] { } } "name": "model", ] } "type": "string" } ] } - key: name: LinkFailureOutputSchema version: 0.0.1] value: key: } } ] } } ] } } ] } - key: name: LinkFailureOutputSchema version: 0.0.1 value: key: name: LinkFailureOutputSchema version: 0.0.1 schemaFlavour: Avro schemaDefinition: "{\n \"name\": \"Link_Failure_Output\",\n \"type\": \"record\",\n \"fields\": [\n {\n \"name\": \"o_DasH_ran_DasH_sc_DasH_du_DasH_hello_DasH_world_ColoN_radio_DasH_resource_DasH_management_DasH_policy_DasH_ratio\",\n \"type\": {\n \"type\": \"array\",\n \"items\": {\n \"name\": \"o_DasH_ran_DasH_sc_DasH_du_DasH_hello_DasH_world_ColoN_radio_DasH_resource_DasH_management_DasH_policy_DasH_ratio_record\",\n \"type\": \"record\",\n \"fields\": [\n {\n \"name\": \"id\",\n \"type\": \"string\"\n },\n {\n \"name\": \"radio_DasH_resource_DasH_management_DasH_policy_DasH_max_DasH_ratio\",\n \"type\": \"int\"\n },\n {\n \"name\": \"radio_DasH_resource_DasH_management_DasH_policy_DasH_members\",\n \"type\": {\n \"type\": LinkFailureOutputSchema \"array\",\n \"items\": {\n version: 0.0.1 \"name\": \"radio_DasH_resource_DasH_management_DasH_policy_DasH_members_record\",\n \"type\": \"record\",\n schemaFlavour: Avro \"fields\": [\n schemaDefinition: "{\n \"typename\": \"recordmobile_DasH_country_DasH_code\",\n \"nametype\": \"string\"\n },\n \"Link_Failure_Output\",\n \"fields\": [\n {\n \"name\": \"mobile_DasH_network_DasH_code\",\n {\n \"nametype\": \"string\"\n \"o_DasH_ran_DasH_sc_DasH_du_DasH_hello_DasH_world_ColoN_du_DasH_to_DasH_ru_DasH_connection\"},\n {\n \ \"type\": {\n \t\"typename\": \"arrayslice_DasH_differentiator\",\n \"type\": \"int\"\n \ \t\"items\": {\n\t\t \"name\": \"Config_Change_Message\" },\n {\n \ \"typename\": \"recordslice_DasH_service_DasH_type\",\n \"fieldstype\": \"int\"\n }\n [\n ]\n {}\n }\n },\n \"name\": {\n \"name\",\n \": \"radio_DasH_resource_DasH_management_DasH_policy_DasH_min_DasH_ratio\",\n \"type\": \"stringint\"\n },\n {\n \"name\": \"user_DasH_label\",\n },\n\t\t\t{"type\": \"string\"\n },\n {\n \"name\": \"name\": \"resource_DasH_type\",\n \"type\": \"administrative_DasH_statestring\",\n },\n {\n \"type\": \"name\": \"radio_DasH_resource_DasH_management_DasH_policy_DasH_dedicated_DasH_ratio\",\n \"type\": \"stringint\"\n },\n }{\n \"name\": \"administrative_DasH_state\",\n ]\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-simulator.nonrtric:9990/rests/data/network-topology:network-topology/topology=topology-netconf/node={OduId}/yang-ext:mount/o-ran-sc-du-hello-world:network-function/dudistributed-tounit-ru-connectionfunctions={OruId}OduId}/radio-resource-management-policy-ratio=rrm-pol-1 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://message-router:3904/events/unauthenticated.SEC_FAULT_OUTPUT/users/link-monitor-nonrtric?timeout=15000&limit=100 eventProtocolParameters: eventProtocol: JSON parameters: versionAlias: version pojoField: LinkFailureInput eventName: LinkFailureInputEvent |
NOTE: The default hostname/port for sdnr-simulator and message-router are specified in lines 1547 and 1573 respectively of the above file. They should be replaced with actual values if using different hostname/port.
...
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
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 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.ControlLoop: version: 1.0.1 derived_from: tosca.nodetypes.Root properties: provider: type: string requred: false elements: type: list required: true entry_schema: type: onap.datatypes.ToscaConceptIdentifier org.onap.policy.clamp.controlloop.ControlLoopElement: version: 1.0.1 derived_from: tosca.nodetypes.Root properties: provider: type: string requred: false participant_id: type: onap.datatypes.ToscaConceptIdentifier requred: true org.onap.policy.clamp.controlloop.K8SMicroserviceControlLoopElement: version: 1.0.1 derived_from: org.onap.policy.clamp.controlloop.ControlLoopElement properties: chart: type: string required: true configs: type: list required: false requirements: type: string requred: false templates: type: list required: false entry_schema: values: type: string requred: true topology_template: node_templates: org.onap.domain.linkmonitor.LinkMonitorControlLoopDefinition1: version: 1.2.3 type: org.onap.policy.clamp.controlloop.ControlLoop type_version: 1.0.1 description: Control loop for Link Monitor properties: provider: Ericsson elements: - name: org.onap.domain.linkmonitor.OruAppK8SMicroserviceControlLoopElement version: 1.2.3 - name: org.onap.domain.linkmonitor.MessageGeneratorK8SMicroserviceControlLoopElement version: 1.2.3 - name: org.onap.domain.linkmonitor.SdnrSimulatorK8SMicroserviceControlLoopElement version: 1.2.3 org.onap.k8s.controlloop.K8SControlLoopParticipant: version: 2.3.4 type: org.onap.policy.clamp.controlloop.Participant type_version: 1.0.1 description: Participant for k8s properties: provider: ONAP org.onap.domain.linkmonitor.OruAppK8SMicroserviceControlLoopElement: version: 1.2.3 type: org.onap.policy.clamp.controlloop.K8SMicroserviceControlLoopElement type_version: 1.0.1 description: Control loop element for oru-app properties: provider: ONAP participant_id: name: K8sParticipant0 version: 1.0.0 participantType: name: org.onap.k8s.controlloop.K8SControlLoopParticipant version: 2.3.4 chart: chartId: name: oru-app version: 0.1.0 releaseName: oru-app repository: repoName: chartmuseum namespace: nonrtric overrideParams: image.repository: nexus3.o-ran-sc.org:10002/o-ran-sc/nonrtric-o-ru-closed-loop-recovery image.tag: 1.0.01 messagerouter.host: http://message-router.onap messagerouter.port: 3904 sdnr.host: http://sdnr-simulator sdnr.port: 9990 org.onap.domain.linkmonitor.MessageGeneratorK8SMicroserviceControlLoopElement: version: 1.2.3 type: org.onap.policy.clamp.controlloop.K8SMicroserviceControlLoopElement type_version: 1.0.1 description: Control loop element for message-generator properties: provider: ONAP participant_id: name: K8sParticipant0 version: 1.0.0 participantType: name: org.onap.k8s.controlloop.K8SControlLoopParticipant version: 2.3.4 chart: chartId: name: message-generator version: 0.1.0 releaseName: message-generator repository: repoName: chartmuseum namespace: nonrtric overrideParams: image.repository: registry.nordix.org/onap/message-generator image.tag: 1.0.0 messagerouter.host: http://message-router.onap messagerouter.port: 3904 org.onap.domain.linkmonitor.SdnrSimulatorK8SMicroserviceControlLoopElement: version: 1.2.3 type: org.onap.policy.clamp.controlloop.K8SMicroserviceControlLoopElement type_version: 1.0.1 description: Control loop element for sdnr-simulator properties: provider: ONAP participant_id: name: K8sParticipant0 version: 1.0.0 participantType: name: org.onap.k8s.controlloop.K8SControlLoopParticipant version: 2.3.4 chart: chartId: name: sdnr-simulator version: 0.1.0 releaseName: sdnr-simulator repository: repoName: chartmuseum namespace: nonrtric overrideParams: image.repository: registry.nordix.org/onap/sdnr-simulator image.tag: 1.0.0 messagerouter.host: http://message-router.onap messagerouter.port: 3904 |
This control loop will bring up three micro-services in the nonrtric namespace: oru-app (running the actual logic of the usecase), message-generator (sending the LinkFailure messages at random intervals), and sdnr-simulator (for receiving the REST calls made by oru-app). Make sure that the sdnr-simulator is not already running in the nonrtric namespace, otherwise the control loop instantiation might fail.
...