# ================================================================================ # Copyright (c) 2019 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========================================================= tosca_definitions_version: cloudify_dsl_1_3 imports: - http://www.getcloudify.org/spec/cloudify/3.4/types.yaml - {{ ONAPTEMPLATE_RAWREPOURL_org_onap_dcaegen2_platform_plugins_releases }}/k8splugin/1.4.13/k8splugin_types.yaml - {{ ONAPTEMPLATE_RAWREPOURL_org_onap_ccsdk_platform_plugins_releases }}/type_files/dmaap/dmaap.yaml inputs: topic00_name: type: string default: "topic00" topic01_name: type: string default: "topic01" topic02_name: type: string default: "topic02" topic03_name: type: string default: "topic03" topic04_name: type: string default: "topic04" topic05_name: type: string default: "topic05" topic06_name: type: string default: "topic06" location: type: string default: "san-francisco" node_templates: topic00: type: ccsdk.nodes.Topic properties: topic_name: { get_input: topic00_name } topic01: type: ccsdk.nodes.Topic properties: topic_name: { get_input: topic01_name } topic02: type: ccsdk.nodes.Topic properties: topic_name: { get_input: topic02_name } topic03: type: ccsdk.nodes.Topic properties: topic_name: { get_input: topic03_name } topic04: type: ccsdk.nodes.Topic properties: topic_name: { get_input: topic04_name } topic05: type: ccsdk.nodes.Topic properties: topic_name: { get_input: topic05_name } topic06: type: ccsdk.nodes.Topic properties: topic_name: { get_input: topic06_name } client00: type: dcae.nodes.ContainerizedServiceComponentUsingDmaap properties: service_component_type: 'nginx-web' image: nginx docker_config: healthcheck: type: "http" endpoint: "/" streams_publishes: - name: topic00 location: { get_input: location } client_role: org.onap.dcae.pnfPublisher type: message_router - name: topic01 location: { get_input: location } client_role: org.onap.dcae.pnfPublisher type: message_router - name: topic02 location: { get_input: location } client_role: org.onap.dcae.pnfPublisher type: message_router - name: topic03 location: { get_input: location } client_role: org.onap.dcae.pnfPublisher type: message_router - name: topic04 location: { get_input: location } client_role: org.onap.dcae.pnfPublisher type: message_router - name: topic05 location: { get_input: location } client_role: org.onap.dcae.pnfPublisher type: message_router - name: topic06 location: { get_input: location } client_role: org.onap.dcae.pnfPublisher type: message_router relationships: - type: ccsdk.relationships.publish_events target: topic00 - type: ccsdk.relationships.publish_events target: topic01 - type: ccsdk.relationships.publish_events target: topic02 - type: ccsdk.relationships.publish_events target: topic03 - type: ccsdk.relationships.publish_events target: topic04 - type: ccsdk.relationships.publish_events target: topic05 - type: ccsdk.relationships.publish_events target: topic06 interfaces: cloudify.interfaces.lifecycle: start: inputs: ports: - '80:0' outputs: topic00_data: description: "Topic 00 data on client00" value: { get_attribute: [client00, topic00]} topic01_data: description: "Topic 01 data on client00" value: { get_attribute: [client00, topic01]} topic02_data: description: "Topic 02 data on client00" value: { get_attribute: [client00, topic02]} topic03_data: description: "Topic 03 data on client00" value: { get_attribute: [client00, topic03]} topic04_data: description: "Topic 04 data on client00" value: { get_attribute: [client00, topic04]} topic05_data: description: "Topic 05 data on client00" value: { get_attribute: [client00, topic05]} topic06_data: description: "Topic 06 data on client00" value: { get_attribute: [client00, topic06]}