| # -*- indent-tabs-mode: nil -*- # vi: set expandtab: |
| # |
| # ============LICENSE_START==================================================== |
| # org.onap.dcae |
| # ============================================================================= |
| # Copyright (c) 2017 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 |
| |
| description: > |
| This blueprint is for managing the CDAP infrastructure |
| |
| imports: |
| - http://www.getcloudify.org/spec/cloudify/3.4/types.yaml |
| - {{ ONAPTEMPLATE_RAWREPOURL_org_onap_dcaegen2_platform_plugins_releases }}/type_files/cdapcloudify/14/cdapcloudify_types.yaml |
| - {{ ONAPTEMPLATE_RAWREPOURL_org_onap_dcaegen2_platform_plugins_releases }}/type_files/dockerplugin/2/dockerplugin_types.yaml |
| - {{ ONAPTEMPLATE_RAWREPOURL_org_onap_dcaegen2_platform_plugins_releases }}/relationshipplugin/1.0.0/relationshipplugin_types.yaml |
| |
| inputs: |
| location_id: |
| type: string |
| default: "" |
| cdap_cluster_name: |
| type: string |
| default: "cdap" |
| |
| node_templates: |
| |
| broker_deleter: |
| #does nothing on install, but deletes all registered apps when broker is uninstalled |
| #uninstalling the broker without doing this leaves them in purgatory forever, unless CDAP was also uninstalled, but that may or may not be true or in the same blueprint. |
| type: dcae.nodes.broker_deleter |
| interfaces: |
| cloudify.interfaces.lifecycle: |
| delete: |
| inputs: |
| connected_broker_dns_name: { get_property: [cdap_broker, name] } |
| relationships: |
| - type: cloudify.relationships.depends_on |
| target: cdap_broker |
| |
| cdap_broker: |
| type: dcae.nodes.DockerContainerForPlatforms |
| properties: |
| name: 'cdap_broker' |
| application_config: |
| bindingttw: 5 |
| hcinterval: 60s |
| autoderegisterafter: 10m |
| pipelinehealthlimit: 2 |
| host_port: 7777 |
| container_port: 7777 |
| docker_config: |
| healthcheck: |
| type: "http" |
| #broker has a semi healthcheck endpoint at root right now, TODO would be to add a real /healtcheck endpoint |
| endpoint: "/" |
| interval: "120s" |
| timeout: "60s" |
| image: "{{ ONAPTEMPLATE_DOCKERREGURL_org_onap_dcaegen2_releases }}/onap/org.onap.dcaegen2.platform.cdapbroker:v4.0.0" |
| interfaces: |
| cloudify.interfaces.lifecycle: |
| start: |
| inputs: |
| envs: |
| CDAP_CLUSTER_TO_MANAGE: { get_input: cdap_cluster_name } |
| volumes: |
| - host: |
| path: '/tmp/log/cdapbroker/' |
| container: |
| bind: '/tmp/log/cdapbroker/' #Broker EELF log directory |
| mode: 'rw' |
| relationships: |
| - type: dcae.relationships.component_contained_in |
| target: docker_host |
| |
| docker_host: |
| type: dcae.nodes.SelectedDockerHost |
| properties: |
| location_id: |
| { get_input: location_id } |
| docker_host_override: |
| 'platform_dockerhost' |
| #WARNING: ASSUMES THIS EXISTS AND IS ALREADY REGISTERED |