summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--tosca2heat/tosca-parser/toscaparser/tests/data/topology_template/definitions.yaml5
-rw-r--r--tosca2heat/tosca-parser/toscaparser/tests/data/topology_template/queuingsubsystem.yaml10
-rw-r--r--tosca2heat/tosca-parser/toscaparser/tests/data/topology_template/subsystem.yaml83
-rw-r--r--tosca2heat/tosca-parser/toscaparser/tests/data/topology_template/system.yaml37
-rw-r--r--tosca2heat/tosca-parser/toscaparser/tests/test_topology_template.py2
5 files changed, 28 insertions, 109 deletions
diff --git a/tosca2heat/tosca-parser/toscaparser/tests/data/topology_template/definitions.yaml b/tosca2heat/tosca-parser/toscaparser/tests/data/topology_template/definitions.yaml
index e8e8c8a..77829c6 100644
--- a/tosca2heat/tosca-parser/toscaparser/tests/data/topology_template/definitions.yaml
+++ b/tosca2heat/tosca-parser/toscaparser/tests/data/topology_template/definitions.yaml
@@ -8,6 +8,11 @@ node_types:
type: string
server_port:
type: integer
+ attributes:
+ server_ip:
+ type: string
+ server_port:
+ type: integer
requirements:
- receiver1:
node: example.TransactionSubsystem
diff --git a/tosca2heat/tosca-parser/toscaparser/tests/data/topology_template/queuingsubsystem.yaml b/tosca2heat/tosca-parser/toscaparser/tests/data/topology_template/queuingsubsystem.yaml
index 48ab031..76fa7e2 100644
--- a/tosca2heat/tosca-parser/toscaparser/tests/data/topology_template/queuingsubsystem.yaml
+++ b/tosca2heat/tosca-parser/toscaparser/tests/data/topology_template/queuingsubsystem.yaml
@@ -9,14 +9,14 @@ imports:
- definitions.yaml
topology_template:
- description: Template of a queue including its hosting stack.
+ description: Template of a database including its hosting stack.
inputs:
- mq_server_ip:
+ server_ip:
type: string
description: IP address of the message queuing server to receive messages from.
default: 127.0.0.1
- my_receiver_port:
+ server_port:
type: integer
description: Port to be used for receiving messages.
default: 8080
@@ -39,8 +39,8 @@ topology_template:
tran_app:
type: example.QueuingSubsystem
properties:
- server_ip: { get_input: mq_server_ip }
- server_port: { get_input: my_receiver_port }
+ server_ip: { get_input: server_ip }
+ server_port: { get_input: server_port }
requirements:
- host:
node: server
diff --git a/tosca2heat/tosca-parser/toscaparser/tests/data/topology_template/subsystem.yaml b/tosca2heat/tosca-parser/toscaparser/tests/data/topology_template/subsystem.yaml
deleted file mode 100644
index b27e698..0000000
--- a/tosca2heat/tosca-parser/toscaparser/tests/data/topology_template/subsystem.yaml
+++ /dev/null
@@ -1,83 +0,0 @@
-tosca_definitions_version: tosca_simple_yaml_1_0
-
-description: >
- Service template with topology_template, act as a nested system inside another system.
-
-imports:
- - definitions.yaml
-
-topology_template:
- description: Template of a database including its hosting stack.
-
- inputs:
- mq_server_ip:
- type: string
- description: IP address of the message queuing server to receive messages from.
- receiver_port:
- type: string
- description: Port to be used for receiving messages.
- my_cpus:
- type: integer
- description: Number of CPUs for the server.
- constraints:
- - valid_values: [ 1, 2, 4, 8 ]
-
- substitution_mappings:
- node_type: example.TransactionSubsystem
- capabilities:
- message_receiver: [ app, message_receiver ]
- requirements:
- database_endpoint: [ app, database ]
-
- node_templates:
- app:
- type: example.SomeApp
- properties:
- admin_user: foo
- pool_size: 10
- capabilities:
- message_receiver:
- properties:
- server_ip: { get_input: mq_server_ip }
- requirements:
- - host:
- node: websrv
-
- websrv:
- type: tosca.nodes.WebServer
- capabilities:
- data_endpoint:
- properties:
- port_name: { get_input: receiver_port }
- 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 message receiver 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:
- webserver_group:
- members: [ websrv, server ]
- type: tosca.groups.Root
diff --git a/tosca2heat/tosca-parser/toscaparser/tests/data/topology_template/system.yaml b/tosca2heat/tosca-parser/toscaparser/tests/data/topology_template/system.yaml
index 84d625d..3c946f3 100644
--- a/tosca2heat/tosca-parser/toscaparser/tests/data/topology_template/system.yaml
+++ b/tosca2heat/tosca-parser/toscaparser/tests/data/topology_template/system.yaml
@@ -1,8 +1,9 @@
tosca_definitions_version: tosca_simple_yaml_1_0
imports:
- - definitions.yaml
- - subsystem.yaml
+ - queuingsubsystem.yaml
+ - transactionsubsystem.yaml
+ - databasesubsystem.yaml
topology_template:
description: Template of online transaction processing service.
@@ -21,13 +22,13 @@ topology_template:
mq:
type: example.QueuingSubsystem
# properties:
- # to be updated when substitution_mapping is implemented
+ # to be updated when substitution_mapping is validated later
properties:
server_ip: { get_input: mq_server_ip }
server_port: { get_input: mq_server_port }
# capabilities:
# message_queue_endpoint:
- # to be updated when substitution_mapping is implemented
+ # to be updated when substitution_mapping is validated later
requirements:
- receiver1: trans1
- receiver2: trans2
@@ -35,37 +36,33 @@ topology_template:
trans1:
type: example.TransactionSubsystem
properties:
- # TODO to be updated when substitution_mapping is implemented
- # mq_server_ip: { get_attribute: [ mq, server_ip ] }
- # for now, we will use the loopback address to avoid errors as
- # this property is required in the schema
- mq_server_ip: 127.0.0.1
- receiver_port: 8080
+ # mq_server_ip: 127.0.0.1
+ mq_server_ip: { get_attribute: [ mq, server_ip ] }
+ # receiver_port: 8080
+ receiver_port: { get_attribute: [ mq, server_port ] }
# capabilities:
# message_receiver:
- # to be updated when substitution_mapping is implemented
+ # to be updated when substitution_mapping is validated later
requirements:
- database_endpoint: dbsys
trans2:
type: example.TransactionSubsystem
properties:
- # TODO to be updated when substitution_mapping is implemented
- # mq_server_ip: { get_attribute: [ mq, server_ip ] }
- # for now, we will use the loopback address to avoid errors as
- # this property is required in the schema
- mq_server_ip: 127.0.0.1
- receiver_port: 8080
+ # mq_server_ip: 127.0.0.1
+ mq_server_ip: { get_attribute: [ mq, server_ip ] }
+ # receiver_port: 8080
+ receiver_port: { get_attribute: [ mq, server_port ] }
# capabilities:
# message_receiver:
- # to be updated when substitution_mapping is implemented
+ # to be updated when substitution_mapping is validated later
requirements:
- database_endpoint: dbsys
dbsys:
type: example.DatabaseSubsystem
# properties:
- # to be updated when substitution_mapping is implemented
+ # to be updated when substitution_mapping is validated later
# capabilities:
# database_endpoint:
- # to be updated when substitution_mapping is implemented
+ # to be updated when substitution_mapping is validated later
diff --git a/tosca2heat/tosca-parser/toscaparser/tests/test_topology_template.py b/tosca2heat/tosca-parser/toscaparser/tests/test_topology_template.py
index f66396e..877c72f 100644
--- a/tosca2heat/tosca-parser/toscaparser/tests/test_topology_template.py
+++ b/tosca2heat/tosca-parser/toscaparser/tests/test_topology_template.py
@@ -159,4 +159,4 @@ class TopologyTemplateTest(TestCase):
"data/topology_template/system.yaml")
system_tosca_template = ToscaTemplate(tpl_path)
self.assertIsNotNone(system_tosca_template)
- self.assertEqual(len(system_tosca_template.nested_tosca_templates), 1)
+ self.assertEqual(len(system_tosca_template.nested_tosca_templates), 3)