From 332fd8afc91cb3c0f7489c3400a6fc3b385a7034 Mon Sep 17 00:00:00 2001 From: srinivas_tadepalli Date: Mon, 15 Jun 2015 10:12:17 +0530 Subject: [PATCH] Resolve interfaces by symbolic name not by type Updated all templates with Standard shortname Change-Id: I4d591da41351659cc2d81e4fe835c1637a7c69d1 Closes-Bug: #1454340 --- translator/toscalib/nodetemplate.py | 6 ++++-- .../tosca_single_instance_wordpress.yaml | 8 ++++---- .../Definitions/wordpress.yaml | 2 +- .../tests/data/custom_types/nodejs.yaml | 2 +- .../paypalpizzastore_nodejs_app.yaml | 2 +- .../tests/data/custom_types/wordpress.yaml | 2 +- .../test_get_attribute_host_keyword.yaml | 4 ++-- .../test_get_attribute_host_not_found.yaml | 2 +- ...t_get_attribute_unknown_attribute_name.yaml | 2 +- ...t_attribute_unknown_node_template_name.yaml | 2 +- .../test_unknown_capability_property.yaml | 2 +- .../test_unknown_input_in_interface.yaml | 2 +- .../tests/data/test_host_assignment.yaml | 4 ++-- translator/toscalib/tests/data/tosca_elk.yaml | 18 +++++++++--------- .../tosca_nodejs_mongodb_two_instances.yaml | 4 ++-- .../data/tosca_single_instance_wordpress.yaml | 8 ++++---- translator/toscalib/tests/test_toscatpl.py | 6 +++--- .../toscalib/tests/test_toscatplvalidation.py | 18 +++++++++--------- 18 files changed, 48 insertions(+), 46 deletions(-) diff --git a/translator/toscalib/nodetemplate.py b/translator/toscalib/nodetemplate.py index a4080a28..66136932 100644 --- a/translator/toscalib/nodetemplate.py +++ b/translator/toscalib/nodetemplate.py @@ -16,8 +16,10 @@ import logging from translator.toscalib.common.exception import TypeMismatchError from translator.toscalib.common.exception import UnknownFieldError from translator.toscalib.elements.interfaces import CONFIGURE +from translator.toscalib.elements.interfaces import CONFIGURE_SHORTNAME from translator.toscalib.elements.interfaces import InterfacesDef from translator.toscalib.elements.interfaces import LIFECYCLE +from translator.toscalib.elements.interfaces import LIFECYCLE_SHORTNAME from translator.toscalib.elements.relationshiptype import RelationshipType from translator.toscalib.entity_template import EntityTemplate from translator.toscalib.relationship_template import RelationshipTemplate @@ -190,12 +192,12 @@ class NodeTemplate(EntityTemplate): if ifaces: for i in ifaces: for name, value in ifaces.items(): - if name == LIFECYCLE: + if name in (LIFECYCLE, LIFECYCLE_SHORTNAME): self._common_validate_field( value, InterfacesDef. interfaces_node_lifecycle_operations, 'Interfaces') - elif name == CONFIGURE: + elif name in (CONFIGURE, CONFIGURE_SHORTNAME): self._common_validate_field( value, InterfacesDef. interfaces_relationship_confiure_operations, diff --git a/translator/toscalib/tests/data/CSAR/tosca_single_instance_wordpress/Definitions/tosca_single_instance_wordpress.yaml b/translator/toscalib/tests/data/CSAR/tosca_single_instance_wordpress/Definitions/tosca_single_instance_wordpress.yaml index 5d3bc5f0..803425b4 100644 --- a/translator/toscalib/tests/data/CSAR/tosca_single_instance_wordpress/Definitions/tosca_single_instance_wordpress.yaml +++ b/translator/toscalib/tests/data/CSAR/tosca_single_instance_wordpress/Definitions/tosca_single_instance_wordpress.yaml @@ -38,7 +38,7 @@ topology_template: - database_endpoint: node: mysql_database interfaces: - tosca.interfaces.node.lifecycle.Standard: + Standard: create: Scripts/WordPress/install.sh configure: implementation: Scripts/WordPress/configure.sh @@ -57,7 +57,7 @@ topology_template: - host: node: mysql_dbms interfaces: - tosca.interfaces.node.lifecycle.Standard: + Standard: configure: implementation: Scripts/MYSQLDatabase/configure.sh inputs: @@ -75,7 +75,7 @@ topology_template: - host: node: server interfaces: - tosca.interfaces.node.lifecycle.Standard: + Standard: create: Scripts/MYSQLDBMS/install.sh start: Scripts/MYSQLDBMS/start.sh configure: @@ -89,7 +89,7 @@ topology_template: - host: node: server interfaces: - tosca.interfaces.node.lifecycle.Standard: + Standard: create: Scripts/WebServer/install.sh start: Scripts/WebServer/start.sh server: diff --git a/translator/toscalib/tests/data/CSAR/tosca_single_instance_wordpress/Definitions/wordpress.yaml b/translator/toscalib/tests/data/CSAR/tosca_single_instance_wordpress/Definitions/wordpress.yaml index 51fe366e..cc1ecd6c 100644 --- a/translator/toscalib/tests/data/CSAR/tosca_single_instance_wordpress/Definitions/wordpress.yaml +++ b/translator/toscalib/tests/data/CSAR/tosca_single_instance_wordpress/Definitions/wordpress.yaml @@ -13,7 +13,7 @@ node_types: requirements: - database_endpoint: tosca.nodes.Database interfaces: - tosca.interfaces.node.lifecycle.Standard: + Standard: inputs: db_port: type: integer diff --git a/translator/toscalib/tests/data/custom_types/nodejs.yaml b/translator/toscalib/tests/data/custom_types/nodejs.yaml index 3eb89180..dfa9e6fb 100644 --- a/translator/toscalib/tests/data/custom_types/nodejs.yaml +++ b/translator/toscalib/tests/data/custom_types/nodejs.yaml @@ -10,7 +10,7 @@ node_types: description: location of the application on the github. default: https://github.com/mmm/testnode.git interfaces: - tosca.interfaces.node.lifecycle.Standard: + Standard: inputs: github_url: type: string diff --git a/translator/toscalib/tests/data/custom_types/paypalpizzastore_nodejs_app.yaml b/translator/toscalib/tests/data/custom_types/paypalpizzastore_nodejs_app.yaml index f6cb8beb..41a2e97e 100644 --- a/translator/toscalib/tests/data/custom_types/paypalpizzastore_nodejs_app.yaml +++ b/translator/toscalib/tests/data/custom_types/paypalpizzastore_nodejs_app.yaml @@ -20,7 +20,7 @@ node_types: node: tosca.nodes.Database relationship: tosca.relationships.ConnectsTo interfaces: - tosca.interfaces.node.lifecycle.Standard: + Standard: configure: inputs: github_url: diff --git a/translator/toscalib/tests/data/custom_types/wordpress.yaml b/translator/toscalib/tests/data/custom_types/wordpress.yaml index 7003fe31..fd1677bc 100644 --- a/translator/toscalib/tests/data/custom_types/wordpress.yaml +++ b/translator/toscalib/tests/data/custom_types/wordpress.yaml @@ -19,7 +19,7 @@ node_types: node: tosca.nodes.Database relationship: tosca.relationships.ConnectsTo interfaces: - tosca.interfaces.node.lifecycle.Standard: + Standard: inputs: db_host: type: string diff --git a/translator/toscalib/tests/data/functions/test_get_attribute_host_keyword.yaml b/translator/toscalib/tests/data/functions/test_get_attribute_host_keyword.yaml index 3b3757e7..c912edba 100644 --- a/translator/toscalib/tests/data/functions/test_get_attribute_host_keyword.yaml +++ b/translator/toscalib/tests/data/functions/test_get_attribute_host_keyword.yaml @@ -16,7 +16,7 @@ topology_template: requirements: - host: server interfaces: - tosca.interfaces.node.lifecycle.Standard: + Standard: configure: implementation: configure.sh inputs: @@ -26,7 +26,7 @@ topology_template: requirements: - host: dbms interfaces: - tosca.interfaces.node.lifecycle.Standard: + Standard: configure: implementation: configure.sh inputs: diff --git a/translator/toscalib/tests/data/functions/test_get_attribute_host_not_found.yaml b/translator/toscalib/tests/data/functions/test_get_attribute_host_not_found.yaml index e06a539e..cc84bd26 100644 --- a/translator/toscalib/tests/data/functions/test_get_attribute_host_not_found.yaml +++ b/translator/toscalib/tests/data/functions/test_get_attribute_host_not_found.yaml @@ -12,7 +12,7 @@ topology_template: properties: num_cpus: 2 interfaces: - tosca.interfaces.node.lifecycle.Standard: + Standard: configure: implementation: configure.sh inputs: diff --git a/translator/toscalib/tests/data/functions/test_get_attribute_unknown_attribute_name.yaml b/translator/toscalib/tests/data/functions/test_get_attribute_unknown_attribute_name.yaml index 53efad37..0a209333 100644 --- a/translator/toscalib/tests/data/functions/test_get_attribute_unknown_attribute_name.yaml +++ b/translator/toscalib/tests/data/functions/test_get_attribute_unknown_attribute_name.yaml @@ -17,7 +17,7 @@ topology_template: properties: num_cpus: 2 interfaces: - tosca.interfaces.node.lifecycle.Standard: + Standard: configure: implementation: start_server.sh inputs: diff --git a/translator/toscalib/tests/data/functions/test_get_attribute_unknown_node_template_name.yaml b/translator/toscalib/tests/data/functions/test_get_attribute_unknown_node_template_name.yaml index 555dd281..1351953c 100644 --- a/translator/toscalib/tests/data/functions/test_get_attribute_unknown_node_template_name.yaml +++ b/translator/toscalib/tests/data/functions/test_get_attribute_unknown_node_template_name.yaml @@ -17,7 +17,7 @@ topology_template: properties: num_cpus: 2 interfaces: - tosca.interfaces.node.lifecycle.Standard: + Standard: configure: implementation: start_server.sh inputs: diff --git a/translator/toscalib/tests/data/functions/test_unknown_capability_property.yaml b/translator/toscalib/tests/data/functions/test_unknown_capability_property.yaml index c623811c..fccb0578 100644 --- a/translator/toscalib/tests/data/functions/test_unknown_capability_property.yaml +++ b/translator/toscalib/tests/data/functions/test_unknown_capability_property.yaml @@ -29,7 +29,7 @@ topology_template: requirements: - host: dbms interfaces: - tosca.interfaces.node.lifecycle.Standard: + Standard: configure: implementation: database_configure.sh inputs: diff --git a/translator/toscalib/tests/data/functions/test_unknown_input_in_interface.yaml b/translator/toscalib/tests/data/functions/test_unknown_input_in_interface.yaml index 141284c0..aa893f3c 100644 --- a/translator/toscalib/tests/data/functions/test_unknown_input_in_interface.yaml +++ b/translator/toscalib/tests/data/functions/test_unknown_input_in_interface.yaml @@ -13,7 +13,7 @@ topology_template: properties: num_cpus: 2 interfaces: - tosca.interfaces.node.lifecycle.Standard: + Standard: configure: implementation: start_server.sh inputs: diff --git a/translator/toscalib/tests/data/test_host_assignment.yaml b/translator/toscalib/tests/data/test_host_assignment.yaml index 112a1bd5..985ec619 100644 --- a/translator/toscalib/tests/data/test_host_assignment.yaml +++ b/translator/toscalib/tests/data/test_host_assignment.yaml @@ -44,7 +44,7 @@ topology_template: pre_configure_target: implementation: logstash/configure_collectd.py interfaces: - tosca.interfaces.node.lifecycle.Standard: + Standard: create: collectd/create.sh configure: implementation: collectd/config.py @@ -58,7 +58,7 @@ topology_template: - host: node: logstash_server interfaces: - tosca.interfaces.node.lifecycle.Standard: + Standard: create: logstash/create.sh start: logstash/start.sh diff --git a/translator/toscalib/tests/data/tosca_elk.yaml b/translator/toscalib/tests/data/tosca_elk.yaml index 6e7d9e47..388a3ec5 100644 --- a/translator/toscalib/tests/data/tosca_elk.yaml +++ b/translator/toscalib/tests/data/tosca_elk.yaml @@ -49,7 +49,7 @@ topology_template: - database_connection: node: mongo_db interfaces: - tosca.interfaces.node.lifecycle.Standard: + Standard: configure: implementation: nodejs/config.sh inputs: @@ -62,7 +62,7 @@ topology_template: - host: node: app_server interfaces: - tosca.interfaces.node.lifecycle.Standard: + Standard: create: nodejs/create.sh mongo_db: type: tosca.nodes.Database @@ -70,7 +70,7 @@ topology_template: - host: node: mongo_dbms interfaces: - tosca.interfaces.node.lifecycle.Standard: + Standard: create: mongodb/create_database.sh mongo_dbms: type: tosca.nodes.DBMS @@ -78,7 +78,7 @@ topology_template: - host: node: mongo_server interfaces: - tosca.interfaces.node.lifecycle.Standard: + Standard: create: mongodb/create.sh configure: implementation: mongodb/config.sh @@ -91,7 +91,7 @@ topology_template: - host: node: elasticsearch_server interfaces: - tosca.interfaces.node.lifecycle.Standard: + Standard: create: elasticsearch/create.sh start: elasticsearch/start.sh logstash: @@ -111,7 +111,7 @@ topology_template: inputs: elasticsearch_ip: { get_attribute: [elasticsearch_server, private_address] } interfaces: - tosca.interfaces.node.lifecycle.Standard: + Standard: create: logstash/create.sh start: logstash/start.sh kibana: @@ -123,7 +123,7 @@ topology_template: node: elasticsearch capability: search_endpoint interfaces: - tosca.interfaces.node.lifecycle.Standard: + Standard: create: kibana/create.sh configure: implementation: kibana/config.sh @@ -146,7 +146,7 @@ topology_template: pre_configure_target: implementation: logstash/configure_collectd.py interfaces: - tosca.interfaces.node.lifecycle.Standard: + Standard: create: collectd/create.sh configure: implementation: collectd/config.py @@ -168,7 +168,7 @@ topology_template: pre_configure_target: implementation: logstash/configure_rsyslog.py interfaces: - tosca.interfaces.node.lifecycle.Standard: + Standard: create: rsyslog/create.sh configure: implementation: rsyslog/config.py diff --git a/translator/toscalib/tests/data/tosca_nodejs_mongodb_two_instances.yaml b/translator/toscalib/tests/data/tosca_nodejs_mongodb_two_instances.yaml index 92d151cb..26fb64d0 100644 --- a/translator/toscalib/tests/data/tosca_nodejs_mongodb_two_instances.yaml +++ b/translator/toscalib/tests/data/tosca_nodejs_mongodb_two_instances.yaml @@ -41,7 +41,7 @@ topology_template: node: app_server relationship: tosca.relationships.HostedOn interfaces: - tosca.interfaces.node.lifecycle.Standard: + Standard: create: nodejs/create.sh configure: implementation: nodejs/config.sh @@ -59,7 +59,7 @@ topology_template: properties: dbms_port: 27017 interfaces: - tosca.interfaces.node.lifecycle.Standard: + Standard: create: mongodb/create.sh configure: implementation: mongodb/config.sh diff --git a/translator/toscalib/tests/data/tosca_single_instance_wordpress.yaml b/translator/toscalib/tests/data/tosca_single_instance_wordpress.yaml index 324f9178..c26f76e3 100644 --- a/translator/toscalib/tests/data/tosca_single_instance_wordpress.yaml +++ b/translator/toscalib/tests/data/tosca_single_instance_wordpress.yaml @@ -43,7 +43,7 @@ topology_template: - database_endpoint: node: mysql_database interfaces: - tosca.interfaces.node.lifecycle.Standard: + Standard: create: wordpress/wordpress_install.sh configure: implementation: wordpress/wordpress_configure.sh @@ -66,7 +66,7 @@ topology_template: - host: node: mysql_dbms interfaces: - tosca.interfaces.node.lifecycle.Standard: + Standard: configure: implementation: mysql/mysql_database_configure.sh inputs: @@ -83,7 +83,7 @@ topology_template: - host: node: server interfaces: - tosca.interfaces.node.lifecycle.Standard: + Standard: create: implementation: mysql/mysql_dbms_install.sh inputs: @@ -100,7 +100,7 @@ topology_template: - host: node: server interfaces: - tosca.interfaces.node.lifecycle.Standard: + Standard: create: webserver/webserver_install.sh start: webserver/webserver_start.sh server: diff --git a/translator/toscalib/tests/test_toscatpl.py b/translator/toscalib/tests/test_toscatpl.py index d3094022..37a11ddf 100644 --- a/translator/toscalib/tests/test_toscatpl.py +++ b/translator/toscalib/tests/test_toscatpl.py @@ -72,7 +72,7 @@ class ToscaTemplateTest(TestCase): expected_relationshp = ['tosca.relationships.HostedOn'] expected_host = ['mysql_dbms'] ''' - expected_interface = [ifaces.LIFECYCLE] + expected_interface = [ifaces.LIFECYCLE_SHORTNAME] for tpl in self.tosca.nodetemplates: if tpl_name == tpl.name: @@ -146,13 +146,13 @@ class ToscaTemplateTest(TestCase): self.assertEqual(2, len(interfaces)) for interface in interfaces: if interface.name == 'create': - self.assertEqual(ifaces.LIFECYCLE, + self.assertEqual(ifaces.LIFECYCLE_SHORTNAME, interface.type) self.assertEqual('wordpress/wordpress_install.sh', interface.implementation) self.assertIsNone(interface.inputs) elif interface.name == 'configure': - self.assertEqual(ifaces.LIFECYCLE, + self.assertEqual(ifaces.LIFECYCLE_SHORTNAME, interface.type) self.assertEqual('wordpress/wordpress_configure.sh', interface.implementation) diff --git a/translator/toscalib/tests/test_toscatplvalidation.py b/translator/toscalib/tests/test_toscatplvalidation.py index a5e6829e..388d15ff 100644 --- a/translator/toscalib/tests/test_toscatplvalidation.py +++ b/translator/toscalib/tests/test_toscatplvalidation.py @@ -172,7 +172,7 @@ class ToscaTemplateValidationTest(TestCase): requirement: - host: server interfaces: - tosca.interfaces.node.lifecycle.Standard: + Standard: create: mysql_dbms_install.sh start: mysql_dbms_start.sh configure: @@ -204,7 +204,7 @@ class ToscaTemplateValidationTest(TestCase): requirements: - host: mysql_dbms interfaces: - tosca.interfaces.node.lifecycle.Standard: + Standard: configure: mysql_database_configure.sh ''' expectedmessage = ('Type "tosca.nodes.Databases" is not ' @@ -221,7 +221,7 @@ class ToscaTemplateValidationTest(TestCase): requirements: host: server interfaces: - tosca.interfaces.node.lifecycle.Standard: + Standard: create: webserver_install.sh start: d.sh ''' @@ -247,7 +247,7 @@ class ToscaTemplateValidationTest(TestCase): - host: mysql_dbms - database_endpoint: mysql_database interfaces: - tosca.interfaces.node.lifecycle.Standard: + Standard: configure: mysql_database_configure.sh ''' expectedmessage = ('Requirements of template mysql_database ' @@ -273,7 +273,7 @@ class ToscaTemplateValidationTest(TestCase): requirements: - host: mysql_dbms interfaces: - tosca.interfaces.node.lifecycle.Standard: + Standard: configure: mysql_database_configure.sh ''' expectedmessage = ('Capabilities of template mysql_database ' @@ -319,7 +319,7 @@ class ToscaTemplateValidationTest(TestCase): - host: webserver - database_endpoint: mysql_database interfaces: - tosca.interfaces.node.lifecycle.Standards: + Standards: create: wordpress_install.sh configure: implementation: wordpress_configure.sh @@ -333,7 +333,7 @@ class ToscaTemplateValidationTest(TestCase): ''' expectedmessage = ('Interfaces of template wordpress ' 'contain(s) unknown field: ' - '"tosca.interfaces.node.lifecycle.Standards", ' + '"Standards", ' 'refer to the definition to verify valid values.') self._single_node_template_content_test(tpl_snippet, exception.UnknownFieldError, @@ -347,7 +347,7 @@ class ToscaTemplateValidationTest(TestCase): - host: webserver - database_endpoint: mysql_database interfaces: - tosca.interfaces.node.lifecycle.Standard: + Standard: create: wordpress_install.sh config: implementation: wordpress_configure.sh @@ -374,7 +374,7 @@ class ToscaTemplateValidationTest(TestCase): - host: webserver - database_endpoint: mysql_database interfaces: - tosca.interfaces.node.lifecycle.Standard: + Standard: create: wordpress_install.sh configure: implementation: wordpress_configure.sh