# ============LICENSE_START==================================================== # ============================================================================= # Copyright (C) 2020 China Mobile # Copyright (C) 2021 Wipro Limited. # ============================================================================= # 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: Kai Lu (lukai@chinamobile.com) 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: service_name: type: string default: 'dcae-des' pg_dbName: type: string description: DB name default: "datalake" presto_address: type: string description: Presto URL default: "dl-presto" presto_port: type: string description: Presto port default: "9000" presto_username: type: string description: Presto Username default: "user" presto_password: description: Presto password type: string default: "test" image_name: description: des image URL. type: string default: nexus3.onap.org:10003/onap/org.onap.dcaegen2.services.datalake.exposure.service:1.1.1 dl_hostname: type: string description: dl default des_hostname default: k8s-des container_port: type: string description: exposed container port default: "1681" host_port: type: string description: external port default: "30409" pgaas_cluster_name: type: string description: pg cluster default: "dcae-pg-primary.onap" node_templates: despgaas: type: dcae.nodes.pgaas.database properties: writerfqdn: { get_input: pgaas_cluster_name } name: { get_input: pg_dbName} use_existing: true datalake: type: dcae.nodes.ContainerizedServiceComponent interfaces: cloudify.interfaces.lifecycle: start: inputs: ports: - '1681:0' - concat: [{get_input: container_port},":",{get_input: host_port}] envs: PG_HOST: { get_attribute: [ despgaas, admin, host ] } PG_PORT: { get_attribute: [ despgaas, admin, port ] } PG_USER: { get_attribute: [ despgaas, admin, user ] } PG_PASSWORD: { get_attribute: [ despgaas, admin, password ] } PG_DB: get_input: pg_dbName PRESTO_HOST: get_input: presto_address PRESTO_PORT: get_input: presto_port PRESTO_USER: get_input: presto_username PRESTO_PASSWORD: get_input: presto_password properties: application_config: PG_HOST: { get_attribute: [ despgaas, admin, host ] } PG_PORT: { get_attribute: [ despgaas, admin, port ] } PG_USER: { get_attribute: [ despgaas, admin, user ] } PG_PASSWORD: { get_attribute: [ despgaas, admin, password ] } PRESTO_HOST: get_input: presto_address PRESTO_PORT: get_input: presto_port PRESTO_USER: get_input: presto_username PRESTO_PASSWORD: get_input: presto_password HOSTNAME: get_input: dl_hostname image: get_input: image_name docker_config: healthcheck: interval: 90s timeout: 10s type: http endpoint: /datalake/v1/exposure service_component_type: 'dcae-des' service_id: 'dcae-des' service_component_name_override: 'dcae-des' relationships: - type: cloudify.relationships.depends_on target: despgaas