# ============LICENSE_START======================================================= # org.onap.dcae # ================================================================================ # Copyright (c) 2019-2020 AT&T Intellectual Property. 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========================================================= # #description: Collector for receiving VES events through restful interface #blueprint_version: 1.5.0 --- tosca_definitions_version: cloudify_dsl_1_3 description: Collector for receiving VES events through restful interface imports: - http://www.getcloudify.org/spec/cloudify/4.5.5/types.yaml - https://nexus.onap.org/service/local/repositories/raw/content/org.onap.dcaegen2.platform.plugins/R6/k8splugin/1.7.2/k8splugin_types.yaml inputs: collector.dmaap.streamid: type: string default: "fault=ves-fault,ves-fault-secondary|syslog=ves-syslog,ves-syslog-secondary|heartbeat=ves-heartbeat,ves-heartbeat-secondary|measurementsForVfScaling=ves-measurement,ves-measurement-secondary|mobileFlow=ves-mobileflow,ves-mobileflow-secondary|other=ves-other,ves-other-secondary|stateChange=ves-statechange,ves-statechange-secondary|thresholdCrossingAlert=ves-thresholdCrossingAlert,ves-thresholdCrossingAlert-secondary|voiceQuality=ves-voicequality,ves-voicequality-secondary|sipSignaling=ves-sipsignaling,ves-sipsignaling-secondary|notification=ves-notification,ves-notification-secondary|pnfRegistration=ves-pnfRegistration,ves-pnfRegistration-secondary" dcae-ves-collector_cpu_limit: type: string default: "250m" dcae-ves-collector_cpu_request: type: string default: "250m" dcae-ves-collector_memory_limit: type: string default: "128Mi" dcae-ves-collector_memory_request: type: string default: "128Mi" envs: default: {} external_port_0: type: string default: "8080" external_port_1: type: string default: "8443" header.authlist: type: string default: "sample1,$2a$10$pgjaxDzSuc6XVFEeqvxQ5u90DKJnM/u7TJTcinAlFJVaavXMWf/Zi|userid1,$2a$10$61gNubgJJl9lh3nvQvY9X.x4e5ETWJJ7ao7ZhJEvmfJigov26Z6uq|userid2,$2a$10$G52y/3uhuhWAMy.bx9Se8uzWinmbJa.dlm1LW6bYPdPkkywLDPLiy" location_id: type: string default: "" replicas: type: integer description: number of instances default: 1 service_component_name_override: type: string default: "" tag_version: type: string default: "nexus.onap.org:10001/onap/org.onap.dcaegen2.collectors.ves.vescollector:latest" ves-fault_topic_name: type: string ves-fault_ves-fault_topic_aaf_password: type: string ves-fault_ves-fault_topic_aaf_username: type: string ves-fault_ves-fault_topic_client_role: type: string ves-fault_ves-fault_topic_location: type: string ves-heartbeat-secondary_topic_name: type: string ves-heartbeat-secondary_ves-heartbeat-secondary_topic_aaf_password: type: string ves-heartbeat-secondary_ves-heartbeat-secondary_topic_aaf_username: type: string ves-heartbeat-secondary_ves-heartbeat-secondary_topic_client_role: type: string ves-heartbeat-secondary_ves-heartbeat-secondary_topic_location: type: string ves-measurement_topic_name: type: string ves-measurement_ves-measurement_topic_aaf_password: type: string ves-measurement_ves-measurement_topic_aaf_username: type: string ves-measurement_ves-measurement_topic_client_role: type: string ves-measurement_ves-measurement_topic_location: type: string ves-notification_topic_name: type: string ves-notification_ves-notification_topic_aaf_password: type: string ves-notification_ves-notification_topic_aaf_username: type: string ves-notification_ves-notification_topic_client_role: type: string ves-notification_ves-notification_topic_location: type: string ves-other_topic_name: type: string ves-other_ves-other_topic_aaf_password: type: string ves-other_ves-other_topic_aaf_username: type: string ves-other_ves-other_topic_client_role: type: string ves-other_ves-other_topic_location: type: string ves-pnfRegistration_topic_name: type: string ves-pnfRegistration_ves-pnfRegistration_topic_aaf_password: type: string ves-pnfRegistration_ves-pnfRegistration_topic_aaf_username: type: string ves-pnfRegistration_ves-pnfRegistration_topic_client_role: type: string ves-pnfRegistration_ves-pnfRegistration_topic_location: type: string node_templates: dcae-ves-collector: type: dcae.nodes.ContainerizedServiceComponentUsingDmaap interfaces: cloudify.interfaces.lifecycle: start: inputs: ports: - concat: ["8080:", {get_input: external_port_0}] - concat: ["8443:", {get_input: external_port_1}] envs: get_input: envs properties: application_config: service_calls: [] streams_publishes: ves-fault: dmaap_info: <> type: message router pass: get_input: ves-fault_ves-fault_topic_aaf_password user: get_input: ves-fault_ves-fault_topic_aaf_username ves-heartbeat-secondary: dmaap_info: <> type: message router pass: get_input: ves-heartbeat-secondary_ves-heartbeat-secondary_topic_aaf_password user: get_input: ves-heartbeat-secondary_ves-heartbeat-secondary_topic_aaf_username ves-measurement: dmaap_info: <> type: message router pass: get_input: ves-measurement_ves-measurement_topic_aaf_password user: get_input: ves-measurement_ves-measurement_topic_aaf_username ves-notification: dmaap_info: <> type: message router pass: get_input: ves-notification_ves-notification_topic_aaf_password user: get_input: ves-notification_ves-notification_topic_aaf_username ves-other: dmaap_info: <> type: message router pass: get_input: ves-other_ves-other_topic_aaf_password user: get_input: ves-other_ves-other_topic_aaf_username ves-pnfRegistration: dmaap_info: <> type: message router pass: get_input: ves-pnfRegistration_ves-pnfRegistration_topic_aaf_password user: get_input: ves-pnfRegistration_ves-pnfRegistration_topic_aaf_username streams_subscribes: {} auth.method: noAuth collector.dmaap.streamid: get_input: collector.dmaap.streamid collector.keystore.file.location: /opt/app/dcae-certificate/keystore.jks collector.keystore.passwordfile: /opt/app/dcae-certificate/.password collector.schema.checkflag: 1 collector.schema.file: {"v1":"./etc/CommonEventFormat_27.2.json","v2":"./etc/CommonEventFormat_27.2.json","v3":"./etc/CommonEventFormat_27.2.json","v4":"./etc/CommonEventFormat_27.2.json","v5":"./etc/CommonEventFormat_28.4.1.json","v7":"./etc/CommonEventFormat_30.json"} collector.service.port: 8080 collector.service.secure.port: 8443 collector.truststore.file.location: /opt/app/dcae-certificate/truststore.jks collector.truststore.passwordfile: /opt/app/dcae-certificate/.trustpassword event.transform.flag: 1 header.authlist: get_input: header.authlist service_component_name_override: get_input: service_component_name_override tomcat.maxthreads: 200 docker_config: healthcheck: interval: 15s timeout: 1s type: http endpoint: /healthcheck volumes: - container: bind: /opt/app/dcae-certificate host: path: /opt/app/dcae-certificate - container: bind: /opt/app/VESCollector/logs host: path: /opt/logs/DCAE/VESCollector/logs - container: bind: /opt/app/VESCollector/etc host: path: /opt/logs/DCAE/VESCollector/etc image: get_input: tag_version location_id: get_input: location_id service_component_type: dcae-ves-collector replicas: get_input: replicas streams_publishes: - name: ves-fault_topic location: get_input: ves-fault_ves-fault_topic_location client_role: get_input: ves-fault_ves-fault_topic_client_role type: message router - name: ves-measurement_topic location: get_input: ves-measurement_ves-measurement_topic_location client_role: get_input: ves-measurement_ves-measurement_topic_client_role type: message router - name: ves-other_topic location: get_input: ves-other_ves-other_topic_location client_role: get_input: ves-other_ves-other_topic_client_role type: message router - name: ves-heartbeat-secondary_topic location: get_input: ves-heartbeat-secondary_ves-heartbeat-secondary_topic_location client_role: get_input: ves-heartbeat-secondary_ves-heartbeat-secondary_topic_client_role type: message router - name: ves-pnfRegistration_topic location: get_input: ves-pnfRegistration_ves-pnfRegistration_topic_location client_role: get_input: ves-pnfRegistration_ves-pnfRegistration_topic_client_role type: message router - name: ves-notification_topic location: get_input: ves-notification_ves-notification_topic_location client_role: get_input: ves-notification_ves-notification_topic_client_role type: message router resource_config: limits: cpu: get_input: dcae-ves-collector_cpu_limit memory: get_input: dcae-ves-collector_memory_limit requests: cpu: get_input: dcae-ves-collector_cpu_request memory: get_input: dcae-ves-collector_memory_request relationships: - type: ccsdk.relationships.publish_events target: ves-fault_topic - type: ccsdk.relationships.publish_events target: ves-measurement_topic - type: ccsdk.relationships.publish_events target: ves-other_topic - type: ccsdk.relationships.publish_events target: ves-heartbeat-secondary_topic - type: ccsdk.relationships.publish_events target: ves-pnfRegistration_topic - type: ccsdk.relationships.publish_events target: ves-notification_topic ves-fault_topic: type: ccsdk.nodes.Topic properties: topic_name: get_input: ves-fault_topic_name ves-heartbeat-secondary_topic: type: ccsdk.nodes.Topic properties: topic_name: get_input: ves-heartbeat-secondary_topic_name ves-measurement_topic: type: ccsdk.nodes.Topic properties: topic_name: get_input: ves-measurement_topic_name ves-notification_topic: type: ccsdk.nodes.Topic properties: topic_name: get_input: ves-notification_topic_name ves-other_topic: type: ccsdk.nodes.Topic properties: topic_name: get_input: ves-other_topic_name ves-pnfRegistration_topic: type: ccsdk.nodes.Topic properties: topic_name: get_input: ves-pnfRegistration_topic_name