Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
|
|
Create translation test code from tosca to hot about vRNC definition.
JIRA:PARSER-50
Change-Id: I04d5e776b40a856f95548f5d751aeb51220856eb
Signed-off-by: shangxdy <shang.xiaodong@zte.com.cn>
(cherry picked from commit 9f460d7068d86dc1320e858ab1d756c88283e6f6)
|
|
Add deployment scripts for vRNC when deploy vRNC in openstack.
JIRA:PARSER-49
Change-Id: I13092f9939a3fe6710e50e2191a82b8cdc25e3e3
Signed-off-by: shangxdy <shang.xiaodong@zte.com.cn>
(cherry picked from commit 434aa2750f4b74fa46711c930ed46bb81a34f34f)
|
|
In the template version of 2013-05-23, the intrinsic function of
get_attr doesn't support keys or indexes, it requires 2014-10-16 or
higher, the syntax is below:
get_attr:
<resource name>
<attribute name>
<key/index 1> (optional) not support in 2013-05-23
<key/index 2> (optional) not support in 2013-05-23
So the translation about compute node's ip address only uses two
parameters currently.
JIRA:PARSER-101
Change-Id: I51e5d7c04c329ede69ff3be61bbee2941b56ea93
Signed-off-by: shangxdy <shang.xiaodong@zte.com.cn>
(cherry picked from commit 528ed804c77758d8e7270ec5a76cc5279330b086)
|
|
The error is below:
CREATE_FAILED Error: resources.tosca.relationships.attachesto_1: Failed
to attach volume dc1cd8fb-9cf3-42c2-bb3e-6a24ba354003 to server
fded0b07-9da2-4d9c-aedc-fefd22ee1efb - Invalid input for field/attribute
device. Value: /data. u'/data' does not match
'(^/dev/x{0,1}[a-z]{0,1}d{0,1})([a-z]+)[0-9]*$'
JIRA:PARSER-102
Change-Id: Ie30c669ab5eeddbcd8bc33d648b8cd33d9942333
Signed-off-by: shangxdy <shang.xiaodong@zte.com.cn>
(cherry picked from commit 843b0222bc3171db78d8f5fcf45ff1d0c4a72731)
|
|
Currently, when translate compute node with local_storage and
high_availability, there is not BlockStorageAttache resource created
about block storage, and only BlockStorage created.
If only local_storage requirement in compute node, the result is
correct.
The reason is the function logic of _get_attachment_node is error. and
the patch will fixit.
JIRA:PARSER-100
Change-Id: I36456089ae65102d4b17797d266c850d8c16b29d
Signed-off-by: shangxdy <shang.xiaodong@zte.com.cn>
(cherry picked from commit aef34ad9a966ca64aa365ee6aaada702b986f68b)
|
|
tosca.nodes.network.Network
In current implementation of tosca.nodes.network.Network translation,
the property of segmentation_id is included, but it doesn't exist in hot
syntax, so it will be deleted from current code.
JIRA:PARSER-96
Change-Id: I2bd32be887a07f77f7dad3fca469464f124e628f
Signed-off-by: shangxdy <shang.xiaodong@zte.com.cn>
(cherry picked from commit b284ccc46a966ce1f8a6e59363904d69bb8d081e)
|
|
template in HotResource
In class of HotResource, because the policy node template has not
interface property, so it is excepted when get all operation from node,
but the policy types are enumerated, they are can expressed with parent
type.
JIRA:PARSER-97
Change-Id: I6393dcaefc774af3aa627ffa287b75083a173f3f
Signed-off-by: shangxdy <shang.xiaodong@zte.com.cn>
(cherry picked from commit f567dd66c9517acda42559e2c471d40e3401531e)
|
|
|
|
|
|
Current the high_availability definition in vRNC about active MM/CM VDUs
and passive MM/CM VDUs is cyclic dependencies, and the consequence is
deployment of vRNC may fall into a infinite loop.
The correct definition is passive VDU depend on the active VDU, but the
active VDU doesn't depend on the passive VDU.
JIRA:PARSER-95
Change-Id: I3f2fb8c0ce959878b12d7da49e2dc81596b4b528
Signed-off-by: shangxdy <shang.xiaodong@zte.com.cn>
|
|
As a template designer;
I want to define a vdu with high availability;
So i will add test case to violate high_availability requirement in VDU;
JIRA:PARSER-94
Change-Id: Icd35e5a533231395a2174cdc20b747a9ab803599
Signed-off-by: shangxdy <shang.xiaodong@zte.com.cn>
|
|
heat-translator
When deploy a stack online, it can specify a name as a input name(which
was added by issue PARSER-91), but the parameter is optional, if no
specified name, currently the default stack name is shown below:
'heat' + first part of a random uuid
For readable and to be easier founded, the default name will be improved
to be the follow:
'heat' + filename of template file + first part of a random uuid.
JIRA:PARSER-93
Change-Id: Ib8f5fd18bf4e57d2424c2a439aa6db8feead44cd
Signed-off-by: shangxdy <shang.xiaodong@zte.com.cn>
|
|
|
|
Currently, when translate a compute node in heat-translator, code is
below:
for requires in requirements:
for value in requires.values():
if isinstance(value, dict):
for node_name in value.values():
for n in self.nodetemplates:
if n.name == node_name:
volume_name = node_name
break
else: # unreachable code !
for n in self.nodetemplates:
if n.name == node_name:
volume_name = node_name
break
It's error in nfv tosca because there are more than one
requirements, So the unreachable code will reach.
Notes: the fix will submit to Openstack community.
JIRA:PARSER-92
Change-Id: Ife9c0d28ebe236c04d9d2c02f0025cf774bf6208
Signed-off-by: shangxdy <shang.xiaodong@zte.com.cn>
|
|
Currently, the stack ame of a template is random when use
heat-translator online, and there is not any other feedback information
except success or failure, the result is not very convenient.
So it is necessary to provide a stack name when deploy a template.
Note: the improvement will submit to openstack community.
JIRA:PARSER-91
Change-Id: Ia5f99c38301211dfb9c21a8b10dd31a50b82f966
Signed-off-by: shangxdy <shang.xiaodong@zte.com.cn>
|
|
Traceback (most recent call last):
File "/usr/local/bin/heat-translator", line 10, in <module>
sys.exit(main())
File "/usr/local/lib/python2.7/dist-packages/translator/shell.py",
line 225, in main
TranslatorShell().main(args)
File "/usr/local/lib/python2.7/dist-packages/translator/shell.py",
line 121, in main
parsed_params, a_file, deploy)
File "/usr/local/lib/python2.7/dist-packages/translator/shell.py",
line 168, in _translate
output = translator.translate()
File
"/usr/local/lib/python2.7/dist-packages/translator/hot/tosca_translator.py",
line 42, in translate
self.hot_template.resources = self.node_translator.translate()
File
"/usr/local/lib/python2.7/dist-packages/translator/hot/translate_node_templates.py",
line 159, in translate
return self._translate_nodetemplates()
File
"/usr/local/lib/python2.7/dist-packages/translator/hot/translate_node_templates.py",
line 302, in _translate_nodetemplates
self._recursive_handle_properties(resource)
File
"/usr/local/lib/python2.7/dist-packages/translator/hot/translate_node_templates.py",
line 173, in _recursive_handle_properties
resource.handle_properties()
File
"/usr/local/lib/python2.7/dist-packages/translator/hot/tosca/tosca_compute.py",
line 105, in handle_properties
self.nodetemplate.get_capability('os'))
File
"/usr/local/lib/python2.7/dist-packages/translator/hot/tosca/tosca_compute.py",
line 134, in translate_compute_flavor_and_image
image = self._best_image(os_cap_props)
File
"/usr/local/lib/python2.7/dist-packages/translator/hot/tosca/tosca_compute.py",
line 266, in _best_image
if len(resp.keys()) > 0:
AttributeError: 'NoneType' object has no attribute 'keys'
Traceback (most recent call last):
File "/usr/local/bin/heat-translator", line 10, in <module>
sys.exit(main())
File "/usr/local/lib/python2.7/dist-packages/translator/shell.py",
line 225, in main
TranslatorShell().main(args)
File "/usr/local/lib/python2.7/dist-packages/translator/shell.py",
line 121, in main
parsed_params, a_file, deploy)
File "/usr/local/lib/python2.7/dist-packages/translator/shell.py",
line 168, in _translate
output = translator.translate()
File
"/usr/local/lib/python2.7/dist-packages/translator/hot/tosca_translator.py",
line 42, in translate
self.hot_template.resources = self.node_translator.translate()
File
"/usr/local/lib/python2.7/dist-packages/translator/hot/translate_node_templates.py",
line 159, in translate
return self._translate_nodetemplates()
File
"/usr/local/lib/python2.7/dist-packages/translator/hot/translate_node_templates.py",
line 302, in _translate_nodetemplates
self._recursive_handle_properties(resource)
File
"/usr/local/lib/python2.7/dist-packages/translator/hot/translate_node_templates.py",
line 173, in _recursive_handle_properties
resource.handle_properties()
File
"/usr/local/lib/python2.7/dist-packages/translator/hot/tosca/tosca_compute.py",
line 105, in handle_properties
self.nodetemplate.get_capability('os'))
File
"/usr/local/lib/python2.7/dist-packages/translator/hot/tosca/tosca_compute.py",
line 134, in translate_compute_flavor_and_image
image = self._best_image(os_cap_props)
File
"/usr/local/lib/python2.7/dist-packages/translator/hot/tosca/tosca_compute.py",
line 266, in _best_image
if len(resp.keys()) > 0:
AttributeError: 'NoneType' object has no attribute 'keys'
The request you have made requires authentication. (HTTP 401)
(Request-ID: req-027940ce-5a5f-4459-9d91-7e65329c4d13)
The request you have made requires authentication. (HTTP 401)
(Request-ID: req-32c378fb-6d3c-46c6-845e-a8dd50975acd)
JIRA:PARSER-89
Change-Id: Id89d2293972cae9f39c0d950fc67fdc6ae520304
Signed-off-by: shangxdy <shang.xiaodong@zte.com.cn>
|
|
|
|
As a template designer;
I want to know if the parameters is missed when deploy a template, but
currently there is not validation about the required parameters;
So i add property in class of Input, and validate the require parameter.
Note: the patch will submit to Openstack community too.
JIRA:PARSER-88
Change-Id: I5763a18da4037b0f81a55b8c8d83414e685b03d2
Signed-off-by: shangxdy <shang.xiaodong@zte.com.cn>
|
|
SubstitutionMappings is error
The definition in SubstitutionMappings about SECTION is below:
SECTIONS = (NODE_TYPE, CAPABILITIES, REQUIREMENTS) = \
('node_type', 'requirements', 'capabilities')
The order of CAPABILITIES and REQUIREMENTS is reserved.
JIRA:PARSER-86
Change-Id: Ib55e737f6ed5b49ea3ab9b5e14f8c57486602e7e
Signed-off-by: shangxdy <shang.xiaodong@zte.com.cn>
|
|
Add input validation in class of substitution_mapping according to
specification of
http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/
TOSCA-Simple-Profile-YAML-v1.0.html:
1) The properties of substituted node template which be mapped must be
in the inputs of nested service template which defines substutition
mappings;
2) The inputs of nested service template which are not in properties of
the substituted node template must have default values.
3) If the properties of node_type is required and no default value,
must provide inputs for them;
4) Property names and the input names must be the same.
JIRA:PARSER-79
Change-Id: Ie4664fe17c8279ad531ac9acec057f98d4e9281a
Signed-off-by: shangxdy <shang.xiaodong@zte.com.cn>
|
|
Change the name of Substitution_mappings to SubstitutionMappings
consistent to other classes.
JIRA:PARSER-85
Change-Id: I9b27783ccec3f515cfcd2eca9995f09426bbfadd
Signed-off-by: shangxdy <shang.xiaodong@zte.com.cn>
|
|
standalone
According to specification of
http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/TOSCA-Simple-Profile-YAML-v1.0.html,the
two main use cases:
1. No matter whether or not the service template has substitution
mapping definition,it can be deployed standalone;
2. Also can be imported and used as nested service template substituted
a node template with substitution mapping definition;
3. substitution mapping will expose node_type,may expose capabilities
and requirements.
JIRA:PARSER-78
Change-Id: I81ac940545f946925f6aa96a1b2ca0ccc9bbb076
Signed-off-by: shangxdy <shang.xiaodong@zte.com.cn>
|
|
substitution mapping
As a nested template desinger;
I want to known the tosca template which a substituted node template
associated;
So i will create the relationship under node template which is
substituted.
JIRA:PARSER-76
Change-Id: Ifb9883e5c5f630cd7f1b5d1292eddb54ad4c20be
Signed-off-by: shangxdy <shang.xiaodong@zte.com.cn>
|
|
1. Use complete name like nested_topology_tpls here and other places
like get_nested_topology_tpls for better readability;
2. Use "sub_mapped_node_tpl" instead of submaped_node_tpl;
3. Use sub_mapped_ instead of submaped.
Upper changed in substitution_mappings.py, tosca_template.py,
tosca_template.py and others
JIRA:PARSER-73
Change-Id: I21b2d3a35773078d7437bbae9ff5d1522608c4d2
Signed-off-by: shangxdy <shang.xiaodong@zte.com.cn>
|
|
distribution"
|
|
|
|
distribution
when create a source or binary distribution, Parser project miss the
follow files:
1. heat_translator
1) heat_translator_logging.conf;
2) translator.conf
3) all yaml files in tests directories;
4) all bash script in tests directories;
5) all python script in tests directories;
2. toscad-parser
1) TOSCA_definition_1_0.yaml in elements directory;
2) TOSCA_nfv_definition_1_0.yaml in nfv directory;
3) all yaml files in tests directories;
4) all bash script in tests directories;
5) all python script in tests directories;
All the missed files above will cause the parser work failure
JIRA:PARSER-75
Change-Id: I124eeff4b94607a68cbba2f2d7f754cba8671a42
Signed-off-by: shangxdy <shang.xiaodong@zte.com.cn>
|
|
As a tester;
I want to make sure of the validation of substitution mappings in system
chain.
So i use the real test yaml file and delete the old.
Change-Id: Id3dee02d8af5b221b654a3ee79e28f0ad5b53868
JIRA:PARSER-74
Signed-off-by: shangxdy <shang.xiaodong@zte.com.cn>
|
|
tosca template
After the netsted tosca template is implemented, the ExceptionCollector
doesn't work in netsted template, because the exceptions are reset by
upper tosca template.
The solution is judging if support nested node template before starting
or stop exceptioncollector.
Change-Id: Ic48bcb639031391a6771db2f7235b674b22be837
JIRA:PARSER-72
Signed-off-by: shangxdy <shang.xiaodong@zte.com.cn>
|
|
As a template designer,
I want to using node template substitution for model composition or
chaining subsystems.
So firstly tosca-paser should support the substitution mappings
analysis.
Change-Id: I44371795504415ba8cf5a15f7e1d046e3ff00ade
JIRA: PARSER-43
Signed-off-by: shangxdy <shang.xiaodong@zte.com.cn>
|
|
substitution_mappings"
|
|
substitution_mappings
As a developer;
I want to implement the function of substitution_mapping;
So that will complete the test file about transaction subsystem
definitions for example.
Change-Id: I5e44c2b4933afadf96743641279016af5afc39e0
JIRA: PARSER-68
Signed-off-by: shangxdy <shang.xiaodong@zte.com.cn>
|
|
As a developer;
I want to implement the function of substitution_mapping;
So that will complete the test file about queuing subsystem definitions.
Change-Id: I0602eb915954a4e35ae9e0d8d4c857822e4725d4
JIRA: PARSER-46
Signed-off-by: shangxdy <shang.xiaodong@zte.com.cn>
|
|
substitution_mappings"
|
|
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 <shang.xiaodong@zte.com.cn>
|
|
According to the simple tosca specification, substitution mapping only
supports key words of node_type, capabilities and requirements, but in
the definition of vRNC, add keywords of properties, so it will be
deleted
Change-Id: I45ca5f6d44410e5a6b8cdb448f3f148d63cc1376
JIRA: PARSER-67
Signed-off-by: shangxdy <shang.xiaodong@zte.com.cn>
|
|
When access CSAR file which is URL and the protocol is https by proxy,
it will be error and the information is below:
toscaparser.common.exception.URLException: Failed to reach server
"https://raw.githubusercontent.com/openstack/tosca- parser/master/toscaparser
/tests/data/custom_types/wordpress.yaml". Reason is: Tunnel
connection failed: 503 Service Unavailable.
The reason of the error is urllib doesn't support https proxy.
JIRA: PARSER-66
Change-Id: I82ec68d533743527fba613cc362e4241494359d4
Signed-off-by: 10013968 <zhang.jun3g@zte.com.cn>
Signed-off-by: shangxdy <shangxdy@shangxdy.local>
|
|
Before the CI environment can perform python 3.4 test, temporary
disable tox py34 in tox.ini. Currently all the submits are blocked for
this.
Change-Id: Ic73cab212eb68e35a5855d3229b8cfe801f92817
Signed-off-by: 10013968 <zhang.jun3g@zte.com.cn>
|
|
|
|
1. Currently DM_Port_Ctrl requirement definition
requirements:
virtualBinding: DM
virtualLink: CTRL_Net_Host
shall be below:
requirements:
virtualBinding: DM_Host
virtualLink: CTRL_Net
2. In function of _load_import_template when import vRNC definition, it will
return "None, None" instead of return Null in case of no value return.
Change-Id: I81d2d471eafff8ebd77eef356e6178e1f7701a22
JIRA: PARSER-65
Signed-off-by: shangxdy <shang.xiaodong@zte.com.cn>
|
|
In python3.4, dictory's function of key() return value is a dict_key object, not list, so the follow code will be error:
dict x = {1:11, 2:22, 3;33}
y= x.keys()[0]
the error is TypeError: 'dict_keys' object does not support indexing, the correct expression is below:
y = list(x.keys())[0]
So parser's code will be modified refer to above.
Change-Id: I41e0c28167c7823fc735aaf3afc78c1a9a15e9e0
JIRA: PARSER-64
Signed-off-by: shangxdy <shang.xiaodong@zte.com.cn>
|
|
When run unittests through tox, some test cases are always error,
the errors are already done in openstack community, so it's
necessary to synchronise the fixes.
Change-Id: Ib29078e6cc138a474e89c6a2cc90ad7a1db1bb46
JIRA: PARSER-63
Signed-off-by: shangxdy <shang.xiaodong@zte.com.cn>
|
|
|
|
|
|
Currently when run "tox -epep8" it's ok, but it will be error when run
"tox -epy27" or run "tox -epy34", the reason is no file .testr.conf
and .converagerc in project root directory
Change-Id: Ic6ab721738692c389d63bc2d84a4c2a21b397778
JIRA: PARSER-62
Signed-off-by: sxd <shang.xiaodong@zte.com.cn>
|
|
Translate simple tosca policy types of tosca.policy.Placement.Colocate
and tosca.policy.Placement.Antilocate into heat resource
type(nova::servergroup and nova::server)
Change-Id: Icbe8c51c158886608a196951df19e9a503cb786a
JIRA: PARSER-39
Signed-off-by: shangxdy <shang.xiaodong@zte.com.cn>
|
|
|
|
|