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
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
|
# ============LICENSE_START====================================================
# =============================================================================
# Copyright (C) 2020 QCT. All rights reserved.
# Copyright (C) 2021 AT&T Intellectual Property. All rights reserved.
# Copyright (C) 2021 Wipro Limited. 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======================================================
#author: Kate Hsuan (kate.hsuan@qct.io)
tosca_definitions_version: cloudify_dsl_1_3
imports:
- https://www.getcloudify.org/spec/cloudify/4.5.5/types.yaml
- plugin:k8splugin?version=>=3.4.3,<4.0.0
- plugin:pgaas?version=1.3.0
inputs:
pg_dbName:
type: string
description: DB name
default: "datalake"
image_name:
description: datalake feeder image URL.
type: string
default: nexus3.onap.org:10001/onap/org.onap.dcaegen2.services.datalakefeeder:1.1.1
dl_hostname:
type: string
description: dl default dl_hostname
default: k8s-datalake
consul_host:
type: string
description: consul address
default: consul
cbs_address:
type: string
description: CBS address
default: config-binding-service
container_port:
type: string
description: exposed container port
default: "1680"
host_port:
type: string
description: external port
default: "30408"
service_component_type:
type: string
default: "dcae-dl-feeder"
service_id:
type: string
default: "dcae-dl-feeder"
service_component_name_override:
type: string
default: "dcae-dl-feeder"
pgaas_cluster_name:
type: string
description: pg cluster
default: "dcae-pg-primary.onap"
node_templates:
feederpgaas:
type: dcae.nodes.pgaas.database
properties:
writerfqdn: { get_input: pgaas_cluster_name }
name: { get_input: pg_dbName}
use_existing: false
datalake:
type: dcae.nodes.ContainerizedServiceComponent
interfaces:
cloudify.interfaces.lifecycle:
start:
inputs:
ports:
- '1680:0'
- concat: [{get_input: container_port},":",{get_input: host_port}]
envs:
PG_HOST:
{ get_attribute: [ feederpgaas, admin, host ] }
PG_PORT:
{ get_attribute: [ feederpgaas, admin, port ] }
PG_USER:
{ get_attribute: [ feederpgaas, admin, user ] }
PG_PASSWORD:
{ get_attribute: [ feederpgaas, admin, password ] }
PG_DB:
get_input: pg_dbName
properties:
application_config:
PG_HOST:
{ get_attribute: [ feederpgaas, admin, host ] }
PG_PORT:
{ get_attribute: [ feederpgaas, admin, port ] }
PG_USER:
{ get_attribute: [ feederpgaas, admin, user ] }
PG_PASSWORD:
{ get_attribute: [ feederpgaas, admin, password ] }
PG_DB:
get_input: pg_dbName
HOSTNAME:
get_input: dl_hostname
CONSUL_HOST:
get_input: consul_host
CONFIG_BINDING_SERVICE:
get_input: cbs_address
image:
get_input: image_name
docker_config:
healthcheck:
interval: 90s
timeout: 10s
type: http
endpoint: /datalake/v1/topics
service_component_type: { get_input: service_component_type }
service_id: { get_input: service_id }
service_component_name_override: { get_input: service_component_name_override }
relationships:
- type: cloudify.relationships.depends_on
target: feederpgaas
|