699312bea8a0312d91194a13a83997c14d46b2a1
[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       options: *app_options
61     relationships:
62       - type: cloudify.kubernetes.relationships.managed_by_master
63         target: kubernetes_master
64       - type: cloudify.relationships.depends_on
65         target: onap_environment
66
67   message_router_app:
68     type: cloudify.onap.kubernetes.App
69     properties:
70       name: message-router
71       values: kubernetes/message-router/values.yaml
72       resources:
73           - kubernetes/message-router/templates/message-router-zookeeper.yaml
74           - kubernetes/message-router/templates/message-router-dmaap.yaml
75           - kubernetes/message-router/templates/message-router-kafka.yaml
76       services: kubernetes/message-router/templates/all-services.yaml
77       options: *app_options
78     relationships:
79       - type: cloudify.kubernetes.relationships.managed_by_master
80         target: kubernetes_master
81       - type: cloudify.relationships.depends_on
82         target: onap_environment
83
84   sdc_app:
85     type: cloudify.onap.kubernetes.App
86     properties:
87       name: sdc
88       values: kubernetes/sdc/values.yaml
89       resources:
90         - kubernetes/sdc/templates/sdc-es.yaml
91         - kubernetes/sdc/templates/sdc-fe.yaml
92         - kubernetes/sdc/templates/sdc-kb.yaml
93         - kubernetes/sdc/templates/sdc-cs.yaml
94         - kubernetes/sdc/templates/sdc-be.yaml
95       services: kubernetes/sdc/templates/all-services.yaml
96       options: *app_options
97     relationships:
98       - type: cloudify.kubernetes.relationships.managed_by_master
99         target: kubernetes_master
100       - type: cloudify.relationships.depends_on
101         target: onap_environment
102
103   aai_app:
104     type: cloudify.onap.kubernetes.App
105     properties:
106       name: aai
107       values: kubernetes/aai/values.yaml
108       resources:
109         - kubernetes/aai/templates/aai-deployment.yaml
110         - kubernetes/aai/templates/modelloader-deployment.yaml
111         - kubernetes/aai/templates/hbase-deployment.yaml
112       services: kubernetes/aai/templates/all-services.yaml
113       options: *app_options
114     relationships:
115       - type: cloudify.kubernetes.relationships.managed_by_master
116         target: kubernetes_master
117       - type: cloudify.relationships.depends_on
118         target: onap_environment
119
120   robot_app:
121     type: cloudify.onap.kubernetes.App
122     properties:
123       name: robot
124       values: kubernetes/robot/values.yaml
125       resources:
126         - kubernetes/robot/templates/robot-deployment.yaml
127       services: kubernetes/robot/templates/all-services.yaml
128       options: *app_options
129     relationships:
130       - type: cloudify.kubernetes.relationships.managed_by_master
131         target: kubernetes_master
132       - type: cloudify.relationships.depends_on
133         target: onap_environment
134
135   vid_app:
136     type: cloudify.onap.kubernetes.App
137     properties:
138       name: vid
139       values: kubernetes/vid/values.yaml
140       resources:
141         - kubernetes/templates/vid-mariadb-deployment.yaml
142         - kubernetes/templates/vid-server-deployment.yaml
143       services: kubernetes/vid/templates/all-services.yaml
144       options: *app_options
145     relationships:
146       - type: cloudify.kubernetes.relationships.managed_by_master
147         target: kubernetes_master
148       - type: cloudify.relationships.depends_on
149         target: onap_environment
150
151   sdnc_app:
152     type: cloudify.onap.kubernetes.App
153     properties:
154       name: sdnc
155       values: kubernetes/sdnc/values.yaml
156       resources:
157         - kubernetes/sdnc/templates/web-deployment.yaml
158         - kubernetes/sdnc/templates/sdnc-deployment.yaml
159         - kubernetes/sdnc/templates/dgbuilder-deployment.yaml
160         - kubernetes/sdnc/templates/db-deployment.yaml
161       services: kubernetes/sdnc/templates/all-services.yaml
162       options: *app_options
163     relationships:
164       - type: cloudify.kubernetes.relationships.managed_by_master
165         target: kubernetes_master
166       - type: cloudify.relationships.depends_on
167         target: onap_environment
168
169   portal_app:
170     type: cloudify.onap.kubernetes.App
171     properties:
172       name: portal
173       values: kubernetes/portal/values.yaml
174       resources:
175         - kubernetes/portal/templates/portal-widgets-deployment.yaml
176         - kubernetes/portal/templates/portal-apps-deployment.yaml
177         - kubernetes/portal/templates/portal-mariadb-deployment.yaml
178         - kubernetes/portal/templates/portal-vnc-dep.yaml
179       services: kubernetes/portal/templates/all-services.yaml
180       options: *app_options
181     relationships:
182       - type: cloudify.kubernetes.relationships.managed_by_master
183         target: kubernetes_master
184       - type: cloudify.relationships.depends_on
185         target: onap_environment
186
187   policy_app:
188     type: cloudify.onap.kubernetes.App
189     properties:
190       name: policy
191       values: kubernetes/policy/values.yaml
192       resources:
193         - kubernetes/policy/templates/dep-drools.yaml
194         - kubernetes/policy/templates/dep-nexus.yaml
195         - kubernetes/policy/templates/dep-brmsgw.yaml
196         - kubernetes/policy/templates/dep-pdp.yaml
197         - kubernetes/policy/templates/dep-pap.yaml
198         - kubernetes/policy/templates/dep-maria.yaml
199         - kubernetes/policy/templates/dep-pypdp.yaml
200       services: kubernetes/policy/templates/all-services.yaml
201       options: *app_options
202     relationships:
203       - type: cloudify.kubernetes.relationships.managed_by_master
204         target: kubernetes_master
205       - type: cloudify.relationships.depends_on
206         target: onap_environment
207
208   appc_app:
209     type: cloudify.onap.kubernetes.App
210     properties:
211       name: appc
212       values: kubernetes/appc/values.yaml
213       resources:
214         - kubernetes/appc/templates/appc-deployment.yaml
215         - kubernetes/appc/templates/dgbuilder-deployment.yaml
216         - kubernetes/appc/templates/db-deployment.yaml
217       services: kubernetes/appc/templates/all-services.yaml
218       options: *app_options
219     relationships:
220       - type: cloudify.kubernetes.relationships.managed_by_master
221         target: kubernetes_master
222       - type: cloudify.relationships.depends_on
223         target: onap_environment