2 answers
- 10-1
Created JIRA ticket DCAEGEN2-40 - ./demo.sh appc DemoModule returns fail if the network name is not Public Closed
Add your comment... - 10-1
In /var/opt/OpenECOMP_ETE/robot/library/eteutils/HEATUtils.py
def get_openstack_server_ip(self, server, network_name="public", ipversion=4):
ipaddr = None
try:
versions = server['addresses'][network_name]
for version in versions:
if version['version'] == ipversion:
ipaddr = version['addr']
break;
except ValueError:
return ipaddr
return ipaddrNot sure who are the callers of this function. But in my case always getting "public" as a network_name. Since keystone endpoint doesn't return with networks with public name. It fails. Not sure of the root cause. But we can make a workaround by forcing network_name as desired in this function.
Now my script passes without any issue
Add your comment...
This is because of AIC kind of environment using Mirantis Openstack. There is no network named as "Public".
<msg timestamp="20170612 22:08:16.198" level="FAIL">KeyError: u'public'</msg>
<msg timestamp="20170612 22:08:16.198" level="DEBUG">Traceback (most recent call last):
File "/var/opt/OpenECOMP_ETE/robot/library/eteutils/HEATUtils.py", line 80, in get_openstack_server_ip
versions = server['addresses'][network_name]</msg>
<status status="FAIL" endtime="20170612 22:08:16.198" starttime="20170612 22:08:16.195"></status>
</kw>