From 35d20eb192e865917837ac7fc605d1c1c5fef3e9 Mon Sep 17 00:00:00 2001 From: shangxdy Date: Thu, 21 Jul 2016 19:14:31 +0800 Subject: Add database subsystem definition in the use case of substitution_mappings As a developer; I want to implement the function of substitution_mapping; So that will complete the test file about database subsystem definitions. Change-Id: I197f971cbdc64963b6c41b2ca3aa3fb86b2fae8b JIRA: PARSER-47 Signed-off-by: shangxdy --- .../data/topology_template/databasesubsystem.yaml | 90 ++++++++++++++++++++++ 1 file changed, 90 insertions(+) create mode 100644 tosca2heat/tosca-parser/toscaparser/tests/data/topology_template/databasesubsystem.yaml diff --git a/tosca2heat/tosca-parser/toscaparser/tests/data/topology_template/databasesubsystem.yaml b/tosca2heat/tosca-parser/toscaparser/tests/data/topology_template/databasesubsystem.yaml new file mode 100644 index 0000000..22eb259 --- /dev/null +++ b/tosca2heat/tosca-parser/toscaparser/tests/data/topology_template/databasesubsystem.yaml @@ -0,0 +1,90 @@ +tosca_definitions_version: tosca_simple_yaml_1_0 + +description: > + Database subsystem, which is service template with topology_template, + act as a nested system inside another system and also act as stand + alone service template. + +imports: + - definitions.yaml + +topology_template: + description: Template of a database including its hosting stack. + + inputs: + db_user: + type: string + description: the user name of database. + default: test + db_port: + type: integer + description: the port of database. + default: 3306 + db_name: + type: string + description: the name of database. + default: test + my_cpus: + type: integer + description: Number of CPUs for the server. + default: 2 + constraints: + - valid_values: [ 1, 2, 4, 8 ] + + substitution_mappings: + node_type: example.DatabaseSubsystem + capabilities: + database_endpoint: [ db_app, database_endpoint ] + + node_templates: + db_app: + type: tosca.nodes.Database + properties: + user: { get_input: db_user } + port: { get_input: db_port } + name: { get_input: db_name } + capabilities: + database_endpoint: + properties: + port: 1234 + requirements: + - host: + node: dbms + + dbms: + type: tosca.nodes.DBMS + properties: + port: 3306 + root_password: 123456789 + requirements: + - host: + node: server + + server: + type: tosca.nodes.Compute + capabilities: + host: + properties: + disk_size: 10 GB + num_cpus: { get_input: my_cpus } + mem_size: 4096 MB + os: + properties: + architecture: x86_64 + type: Linux + distribution: Ubuntu + version: 14.04 + + outputs: + receiver_ip: + description: private IP address of the database application + value: { get_attribute: [ server, private_address ] } +# It seems current _process_intrisic_function can not handle more than 2 arguments, save it for later +# receiver_port: +# description: Port of the message receiver endpoint +# value: { get_attribute: [ app, data_endpoint, port_name ] } + + groups: + dbserver_group: + members: [ dbms, server ] + type: tosca.groups.Root -- cgit 1.2.3-korg