f12d6ac02e53f0263c2b24f44879c5244b6046ed
[oom.git] / onap-blueprint.yaml
1 tosca_definitions_version: cloudify_dsl_1_3
2
3 description: >
4   Blueprint deploys all ONAP kubernetes resources defined in YAML files on existing kubernetes cluster
5   The following pre-setup steps are assumed, but not required:
6   - Create Cloudify Example Environment: https://github.com/cloudify-examples/cloudify-environment-setup.
7   - Create Kubernetes Cluster: https://github.com/cloudify-examples/simple-kubernetes-blueprint.
8
9 imports:
10   - https://raw.githubusercontent.com/cloudify-cosmo/cloudify-manager/4.1/resources/rest-service/cloudify/types/types.yaml
11   # Plugin required: https://github.com/cloudify-incubator/cloudify-kubernetes-plugin/releases/download/1.2.1rc1/cloudify_kubernetes_plugin-1.2.1rc1-py27-none-linux_x86_64-centos-Core.wgn
12   - https://raw.githubusercontent.com/cloudify-incubator/cloudify-kubernetes-plugin/1.2.1rc1/plugin.yaml
13   # Plugin required: http://repository.cloudifysource.org/cloudify/wagons/cloudify-fabric-plugin/1.4.2/cloudify_fabric_plugin-1.4.2-py27-none-linux_x86_64-centos-Core.wgn
14   - http://www.getcloudify.org/spec/fabric-plugin/1.4.2/plugin.yaml
15   - cloudify/types/onap.yaml
16
17 inputs:
18   kubernetes_configuration_file_content:
19     description: >
20       File content of kubernetes master YAML configuration
21
22   namespace_prefix:
23     type: string
24     description: >
25       Kubernetes namespace name prefix which will be uese for all ONAP apps
26     default: onap
27
28 dsl_definitions:
29   options: &app_options
30     namespace:
31       concat: [{ get_input: namespace_prefix }, '-', { get_property: [SELF, name] }]
32
33 node_templates:
34   kubernetes_master:
35     type: cloudify.kubernetes.nodes.Master
36     properties:
37       configuration:
38         file_content: { get_input: kubernetes_configuration_file_content }
39
40   onap_environment:
41     type: cloudify.onap.kubernetes.Environment
42     properties:
43       namespace: { get_input: namespace_prefix }
44       init_pod: kubernetes/config/pod-config-init.yaml
45       options:
46         namespace: { get_input: namespace_prefix }
47     relationships:
48       - type: cloudify.kubernetes.relationships.managed_by_master
49         target: kubernetes_master
50
51   mso_app:
52     type: cloudify.onap.kubernetes.App
53     properties:
54       name: mso
55       values: kubernetes/mso/values.yaml
56       resources:
57         - kubernetes/mso/templates/mso-deployment.yaml
58         - kubernetes/mso/templates/db-deployment.yaml
59       services: kubernetes/mso/templates/all-services.yaml
60       services: _temp/services.yaml
61       options: *app_options
62     relationships:
63       - type: cloudify.kubernetes.relationships.managed_by_master
64         target: kubernetes_master
65       - type: cloudify.relationships.depends_on
66         target: onap_environment
67
68   message_router_app:
69     type: cloudify.onap.kubernetes.App
70     properties:
71       name: message-router
72       values: kubernetes/message-router/values.yaml
73       resources:
74           - kubernetes/message-router/templates/message-router-zookeeper.yaml
75           - kubernetes/message-router/templates/message-router-dmaap.yaml
76           - kubernetes/message-router/templates/message-router-kafka.yaml
77       services: kubernetes/message-router/templates/all-services.yaml
78       options: *app_options
79     relationships:
80       - type: cloudify.kubernetes.relationships.managed_by_master
81         target: kubernetes_master
82       - type: cloudify.relationships.depends_on
83         target: onap_environment
84
85   sdc_app:
86     type: cloudify.onap.kubernetes.App
87     properties:
88       name: sdc
89       values: kubernetes/sdc/values.yaml
90       resources:
91         - kubernetes/sdc/templates/sdc-es.yaml
92         - kubernetes/sdc/templates/sdc-fe.yaml
93         - kubernetes/sdc/templates/sdc-kb.yaml
94         - kubernetes/sdc/templates/sdc-cs.yaml
95         - kubernetes/sdc/templates/sdc-be.yaml
96       services: kubernetes/sdc/templates/all-services.yaml
97       options: *app_options
98     relationships:
99       - type: cloudify.kubernetes.relationships.managed_by_master
100         target: kubernetes_master
101       - type: cloudify.relationships.depends_on
102         target: onap_environment
103
104   aai_app:
105     type: cloudify.onap.kubernetes.App
106     properties:
107       name: aai
108       values: kubernetes/aai/values.yaml
109       resources:
110         - kubernetes/aai/templates/aai-deployment.yaml
111         - kubernetes/aai/templates/modelloader-deployment.yaml
112         - kubernetes/aai/templates/hbase-deployment.yaml
113       services: kubernetes/aai/templates/all-services.yaml
114       options: *app_options
115     relationships:
116       - type: cloudify.kubernetes.relationships.managed_by_master
117         target: kubernetes_master
118       - type: cloudify.relationships.depends_on
119         target: onap_environment
120
121   robot_app:
122     type: cloudify.onap.kubernetes.App
123     properties:
124       name: robot
125       values: kubernetes/robot/values.yaml
126       resources:
127         - kubernetes/robot/templates/robot-deployment.yaml
128       services: kubernetes/robot/templates/all-services.yaml
129       options: *app_options
130     relationships:
131       - type: cloudify.kubernetes.relationships.managed_by_master
132         target: kubernetes_master
133       - type: cloudify.relationships.depends_on
134         target: onap_environment
135
136   vid_app:
137     type: cloudify.onap.kubernetes.App
138     properties:
139       name: vid
140       values: kubernetes/vid/values.yaml
141       resources:
142         - kubernetes/templates/vid-mariadb-deployment.yaml
143         - kubernetes/templates/vid-server-deployment.yaml
144       services: kubernetes/vid/templates/all-services.yaml
145       options: *app_options
146     relationships:
147       - type: cloudify.kubernetes.relationships.managed_by_master
148         target: kubernetes_master
149       - type: cloudify.relationships.depends_on
150         target: onap_environment
151
152   sdnc_app:
153     type: cloudify.onap.kubernetes.App
154     properties:
155       name: sdnc
156       values: kubernetes/sdnc/values.yaml
157       resources:
158         - kubernetes/sdnc/templates/web-deployment.yaml
159         - kubernetes/sdnc/templates/sdnc-deployment.yaml
160         - kubernetes/sdnc/templates/dgbuilder-deployment.yaml
161         - kubernetes/sdnc/templates/db-deployment.yaml
162       services: kubernetes/sdnc/templates/all-services.yaml
163       options: *app_options
164     relationships:
165       - type: cloudify.kubernetes.relationships.managed_by_master
166         target: kubernetes_master
167       - type: cloudify.relationships.depends_on
168         target: onap_environment
169
170   portal_app:
171     type: cloudify.onap.kubernetes.App
172     properties:
173       name: portal
174       values: kubernetes/portal/values.yaml
175       resources:
176         - kubernetes/portal/templates/portal-widgets-deployment.yaml
177         - kubernetes/portal/templates/portal-apps-deployment.yaml
178         - kubernetes/portal/templates/portal-mariadb-deployment.yaml
179         - kubernetes/portal/templates/portal-vnc-dep.yaml
180       services: kubernetes/portal/templates/all-services.yaml
181       options: *app_options
182     relationships:
183       - type: cloudify.kubernetes.relationships.managed_by_master
184         target: kubernetes_master
185       - type: cloudify.relationships.depends_on
186         target: onap_environment
187
188   policy_app:
189     type: cloudify.onap.kubernetes.App
190     properties:
191       name: policy
192       values: kubernetes/policy/values.yaml
193       resources:
194         - kubernetes/policy/templates/dep-drools.yaml
195         - kubernetes/policy/templates/dep-nexus.yaml
196         - kubernetes/policy/templates/dep-brmsgw.yaml
197         - kubernetes/policy/templates/dep-pdp.yaml
198         - kubernetes/policy/templates/dep-pap.yaml
199         - kubernetes/policy/templates/dep-maria.yaml
200         - kubernetes/policy/templates/dep-pypdp.yaml
201       services: kubernetes/policy/templates/all-services.yaml
202       options: *app_options
203     relationships:
204       - type: cloudify.kubernetes.relationships.managed_by_master
205         target: kubernetes_master
206       - type: cloudify.relationships.depends_on
207         target: onap_environment
208
209   appc_app:
210     type: cloudify.onap.kubernetes.App
211     properties:
212       name: appc
213       values: kubernetes/appc/values.yaml
214       resources:
215         - kubernetes/appc/templates/appc-deployment.yaml
216         - kubernetes/appc/templates/dgbuilder-deployment.yaml
217         - kubernetes/appc/templates/db-deployment.yaml
218       services: kubernetes/appc/templates/all-services.yaml
219       options: *app_options
220     relationships:
221       - type: cloudify.kubernetes.relationships.managed_by_master
222         target: kubernetes_master
223       - type: cloudify.relationships.depends_on
224         target: onap_environment