# Licensed to the Apache Software Foundation (ASF) under one or more # contributor license agreements. See the NOTICE file distributed with # this work for additional information regarding copyright ownership. # The ASF licenses this file to You 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. tosca_definitions_version: tosca_simple_yaml_1_0 description: >- Project Clearwater is an open-source IMS core, developed by Metaswitch Networks and released under the GNU GPLv3. metadata: template_name: clearwater-single-existing template_author: ARIA template_version: '1.0' aria_version: '0.2.0' imports: - types/clearwater.yaml - aria-1.0 topology_template: inputs: hosts.ssh.user: description: >- Existing SSH user. type: string hosts.ssh.password: description: >- Existing SSH password. type: string existing_host.public_address: description: >- Existing IP address that can be accessed by ARIA. type: string existing_host.private_address: description: >- Existing IP address that can be accessed within the service. type: string default: { get_input: existing_host.public_address } existing_host.hostname: description: >- The hostname will be changed to this. type: string default: aria-clearwater-single node_templates: bono: type: clearwater.Bono requirements: - sip_downstream: clearwater.Sprout - sip_secure_downstream: clearwater.Sprout - ralf: clearwater.Ralf sprout: type: clearwater.Sprout requirements: - ralf: clearwater.Ralf # cyclical: see ARIA-327 # - sip_upstream: clearwater.Bono dime: type: clearwater.Dime homestead: type: clearwater.Homestead ralf: type: clearwater.Ralf description: >- Optional, only required if you are using a CCF (Charging Collection Function). homer: type: clearwater.Homer vellum: type: clearwater.Vellum # requirements: # cyclical: see ARIA-327 # - ralf: clearwater.Ralf i-cscf: type: clearwater.I-CSCF s-cscf: type: clearwater.S-CSCF ellis: type: clearwater.Ellis description: >- Optional, only required if you want a web frontend. properties: provision_numbers_count: 1000 requirements: - ralf: clearwater.Ralf existing_host: type: clearwater.Host attributes: public_address: { get_input: existing_host.public_address } private_address: { get_input: existing_host.private_address } capabilities: host: properties: hostname: { get_input: existing_host.hostname } ssh.user: { get_input: hosts.ssh.user } ssh.password: { get_input: hosts.ssh.password } max_log_directory_size: 50 MiB reduce_cassandra_mem_usage: true smtp: type: smtp.SMTP properties: address: 127.0.0.1 capabilities: smtp: properties: username: username password: password policies: configuration: type: clearwater.Configuration properties: zone: example.com secret: secret substitution_mappings: node_type: ims.nodes.IMS capabilities: p-cscf: [ bono, p-cscf ] i-cscf: [ i-cscf, i-cscf ] s-cscf: [ s-cscf, s-cscf ] hss: [ homestead, hss ] ctf: [ ralf, ctf ] xdms: [ homer, xdms ]