aboutsummaryrefslogtreecommitdiffstats
path: root/reference_templates/test_mr_pubsub.yaml-template
blob: 0d0921663d50e180aa8c8a2e5a091210c090ada6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
# ================================================================================ 
# 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]}