Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Right now using Spring repositories it is possible to create more than one service template, as service templates in policy-models/tosca.

How to create additional service template (just add different name and version into the yaml file):

Code Block
languageyml
titletosca-for-smoke-testing.yaml
name: ToscaServiceTemplateSimple
version: 1.0.1
tosca_definitions_version: tosca_simple_yaml_1_3
...........................


Code Block
languagesql
titleToscaServiceTemplate
collapsetrue
MariaDB [controlloop]> select * from ToscaServiceTemplate;
+-------------+-------------------------+-------------------+----------------------+----------------------------+---------+------------------------+---------------------+----------------------+------------------+------------------+----------------------+-----------------+--------------------+--------------------------+-----------------------+-----------------------------+-------------------------------+----------------------------------+---------------------------------+
| DESCRIPTION | TOSCADEFINITIONSVERSION | derived_from_name | derived_from_version | name                       | version | capabilityTypesVersion | capabilityTypesName | dataTypesName        | dataTypesVersion | nodeTypesVersion | nodeTypesName        | policyTypesName | policyTypesVersion | relationshipTypesVersion | relationshipTypesName | topologyTemplateLocalName   | topologyTemplateParentKeyName | topologyTemplateParentKeyVersion | topologyTemplateParentLocalName |
+-------------+-------------------------+-------------------+----------------------+----------------------------+---------+------------------------+---------------------+----------------------+------------------+------------------+----------------------+-----------------+--------------------+--------------------------+-----------------------+-----------------------------+-------------------------------+----------------------------------+---------------------------------+
| NULL        | tosca_simple_yaml_1_3   | NULL              | NULL                 | ToscaServiceTemplateSimple | 1.0.0   | NULL                   | NULL                | ToscaDataTypesSimple | 1.0.0            | 1.0.0            | ToscaNodeTypesSimple | NULL            | NULL               | NULL                     | NULL                  | ToscaTopologyTemplateSimple | ToscaServiceTemplateSimple    | 1.0.0                            | NULL                            |
| NULL        | tosca_simple_yaml_1_3   | NULL              | NULL                 | ToscaServiceTemplateSimple | 1.0.1   | NULL                   | NULL                | ToscaDataTypesSimple | 1.0.0            | 1.0.0            | ToscaNodeTypesSimple | NULL            | NULL               | NULL                     | NULL                  | ToscaTopologyTemplateSimple | ToscaServiceTemplateSimple    | 1.0.0                            | NULL                            |
+-------------+-------------------------+-------------------+----------------------+----------------------------+---------+------------------------+---------------------+----------------------+------------------+------------------+----------------------+-----------------+--------------------+--------------------------+-----------------------+-----------------------------+-------------------------------+----------------------------------+---------------------------------+
MariaDB [controlloop]> select * from ToscaNodeTemplates;
+--------------------------+---------+
| name                     | version |
+--------------------------+---------+
| ToscaNodeTemplatesSimple | 1.0.0   |
+--------------------------+---------+

In the above example for ToscaNodeTemplate we are using same name and version, so the ToscaNodeTemplates table (and all other tables as well) contains only one record. Using the current entity model definition there are the follow issues:

  • There is no way to handle different configuration
  • Is impossible to delete a template in cascade, but it needs a Java code to manual delete single records in all tables

At least to avoid the above issues:

  • Avoid default name and version (for each template/node/data type, etc.. name and version have to be mandatory)
  • Java code to manual check for each table if name and version are already used