# ================================================================================ # 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" 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 } web_server: 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 streams_subscribes: - name: topic01 location: { get_input: location } client_role: org.onap.dcae.pnfSubscriber type: message_router relationships: - type: ccsdk.relationships.publish_events target: topic00 - type: ccsdk.relationships.subscribe_to_events target: topic01 interfaces: cloudify.interfaces.lifecycle: start: inputs: ports: - '80:0' outputs: topic00_data: description: "Topic 00 data on client00" value: { get_attribute: [web_server, topic00]} topic01_data: description: "Topic 01 data on client00" value: { get_attribute: [web_server, topic01]}