tosca_definitions_version: tosca_simple_yaml_1_3 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 org.onap.datatypes.policy.clamp.controlloop.httpControlLoopElement.RestRequest: version: 1.0.0 derived_from: tosca.datatypes.Root properties: restRequestId: type: onap.datatypes.ToscaConceptIdentifier type_version: 0.0.0 required: true description: The name and version of a REST request to be sent to a REST endpoint httpMethod: type: string required: true constraints: - valid_values: [POST, PUT, GET, DELETE] description: The REST method to use path: type: string required: true description: The path of the REST request relative to the base URL body: type: string required: false description: The body of the REST request for PUT and POST requests expectedResponse: type: integer required: true constraints: - in_range: [100, 599] description: THe expected HTTP status code for the REST request org.onap.datatypes.policy.clamp.controlloop.httpControlLoopElement.ConfigurationEntity: version: 1.0.0 derived_from: tosca.datatypes.Root properties: configurationEntityId: type: onap.datatypes.ToscaConceptIdentifier type_version: 0.0.0 required: true description: The name and version of a Configuration Entity to be handled by the HTTP Control Loop Element restSequence: type: list entry_schema: type: org.onap.datatypes.policy.clamp.controlloop.httpControlLoopElement.RestRequest type_version: 1.0.0 description: A sequence of REST commands to send to the REST endpoint node_types: org.onap.policy.clamp.controlloop.Participant: version: 1.0.1 derived_from: tosca.nodetypes.Root properties: provider: type: string required: 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 required: 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.HttpControlLoopElement: version: 1.0.1 derived_from: org.onap.policy.clamp.controlloop.ControlLoopElement properties: baseUrl: type: string required: true description: The base URL to be prepended to each path, identifies the host for the REST endpoints. httpHeaders: type: map required: false entry_schema: type: string description: HTTP headers to send on REST requests configurationEntities: type: map required: true entry_schema: type: org.onap.datatypes.policy.clamp.controlloop.httpControlLoopElement.ConfigurationEntity type_version: 1.0.0 description: The connfiguration entities the Control Loop Element is managing and their associated REST requests topology_template: node_templates: org.onap.controlloop.HttpControlLoopParticipant: version: 2.3.4 type: org.onap.policy.clamp.controlloop.Participant type_version: 1.0.1 description: Participant for Http requests properties: provider: ONAP org.onap.domain.database.Http_PMSHMicroserviceControlLoopElement: # Consul http config for PMSH. version: 1.2.3 type: org.onap.policy.clamp.controlloop.HttpControlLoopElement type_version: 1.0.1 description: Control loop element for the http requests of PMSH microservice properties: provider: ONAP participant_id: name: HttpParticipant0 version: 1.0.0 participantType: name: org.onap.k8s.controlloop.HttpControlLoopParticipant version: 2.3.4 uninitializedToPassiveTimeout: 180 baseUrl: http://consul-server-ui:8500 httpHeaders: Content-Type: application/json configurationEntities: - configurationEntityId: name: entity1 version: 1.0.1 restSequence: - restRequestId: name: request1 version: 1.0.1 httpMethod: PUT path: v1/kv/dcae-pmsh2 body: '{ "control_loop_name":"pmsh-control-loop", "operational_policy_name":"pmsh-operational-policy", "aaf_password":"demo123456!", "aaf_identity":"dcae@dcae.onap.org", "cert_path":"/opt/app/pmsh/etc/certs/cert.pem", "key_path":"/opt/app/pmsh/etc/certs/key.pem", "ca_cert_path":"/opt/app/pmsh/etc/certs/cacert.pem", "enable_tls":"true", "pmsh_policy":{ "subscription":{ "subscriptionName":"ExtraPM-All-gNB-R2B", "administrativeState":"UNLOCKED", "fileBasedGP":15, "fileLocation":"\/pm\/pm.xml", "nfFilter":{ "nfNames":[ "^pnf.*", "^vnf.*" ], "modelInvariantIDs":[ ], "modelVersionIDs":[ ], "modelNames":[ ] }, "measurementGroups":[ { "measurementGroup":{ "measurementTypes":[ { "measurementType":"countera" }, { "measurementType":"counterb" } ], "managedObjectDNsBasic":[ { "DN":"dna" }, { "DN":"dnb" } ] } }, { "measurementGroup":{ "measurementTypes":[ { "measurementType":"counterc" }, { "measurementType":"counterd" } ], "managedObjectDNsBasic":[ { "DN":"dnc" }, { "DN":"dnd" } ] } } ] } }, "streams_subscribes":{ "aai_subscriber":{ "type":"message_router", "dmaap_info":{ "topic_url":"https://10.152.183.151:3905/events/AAI_EVENT", "client_role":"org.onap.dcae.aaiSub", "location":"san-francisco", "client_id":"1575976809466" } }, "policy_pm_subscriber":{ "type":"message_router", "dmaap_info":{ "topic_url":"https://10.152.183.151:3905/events/org.onap.dmaap.mr.PM_SUBSCRIPTIONS", "client_role":"org.onap.dcae.pmSubscriber", "location":"san-francisco", "client_id":"1575876809456" } } }, "streams_publishes":{ "policy_pm_publisher":{ "type":"message_router", "dmaap_info":{ "topic_url":"https://10.152.183.151:3905/events/org.onap.dmaap.mr.PM_SUBSCRIPTIONS", "client_role":"org.onap.dcae.pmPublisher", "location":"san-francisco", "client_id":"1475976809466" } }, "other_publisher":{ "type":"message_router", "dmaap_info":{ "topic_url":"https://10.152.183.151:3905/events/org.onap.dmaap.mr.SOME_OTHER_TOPIC", "client_role":"org.onap.dcae.pmControlPub", "location":"san-francisco", "client_id":"1875976809466" } } } }' expectedResponse: 200 org.onap.domain.sample.GenericK8s_ControlLoopDefinition: version: 1.2.3 type: org.onap.policy.clamp.controlloop.ControlLoop type_version: 1.0.0 description: Control loop for Hello World properties: provider: ONAP elements: - name: org.onap.domain.database.Http_PMSHMicroserviceControlLoopElement version: 1.2.3