Some Bug Fix
This commit is contained in:
parent
c528be81a5
commit
d02d923a4c
|
@ -211,8 +211,6 @@ def get_my_ip():
|
||||||
|
|
||||||
|
|
||||||
def get_my_linklocal(interface):
|
def get_my_linklocal(interface):
|
||||||
if getattr(FLAGS, 'fake_tests', None):
|
|
||||||
return 'fe00::'
|
|
||||||
try:
|
try:
|
||||||
if_str = execute("ifconfig %s" % interface)
|
if_str = execute("ifconfig %s" % interface)
|
||||||
condition = "\s+inet6\s+addr:\s+([0-9a-f:]+/\d+)\s+Scope:Link"
|
condition = "\s+inet6\s+addr:\s+([0-9a-f:]+/\d+)\s+Scope:Link"
|
||||||
|
@ -224,7 +222,7 @@ def get_my_linklocal(interface):
|
||||||
return None
|
return None
|
||||||
except RuntimeError as ex:
|
except RuntimeError as ex:
|
||||||
logging.warn("Couldn't get Link Local IP of %s :%s", interface, ex)
|
logging.warn("Couldn't get Link Local IP of %s :%s", interface, ex)
|
||||||
return None
|
return 'fe00::'
|
||||||
|
|
||||||
|
|
||||||
def to_global_ipv6(prefix, mac):
|
def to_global_ipv6(prefix, mac):
|
||||||
|
|
|
@ -66,7 +66,7 @@
|
||||||
<filterref filter="nova-instance-${name}">
|
<filterref filter="nova-instance-${name}">
|
||||||
<parameter name="IP" value="${ip_address}" />
|
<parameter name="IP" value="${ip_address}" />
|
||||||
<parameter name="DHCPSERVER" value="${dhcp_server}" />
|
<parameter name="DHCPSERVER" value="${dhcp_server}" />
|
||||||
<parameter name="RASERVER" value="%(ra_server)s" />
|
<parameter name="RASERVER" value="${ra_server}" />
|
||||||
#if $getVar('extra_params', False)
|
#if $getVar('extra_params', False)
|
||||||
${extra_params}
|
${extra_params}
|
||||||
#end if
|
#end if
|
||||||
|
|
|
@ -114,6 +114,10 @@ def _get_net_and_mask(cidr):
|
||||||
net = IPy.IP(cidr)
|
net = IPy.IP(cidr)
|
||||||
return str(net.net()), str(net.netmask())
|
return str(net.net()), str(net.netmask())
|
||||||
|
|
||||||
|
def _get_net_and_prefixlen(cidr):
|
||||||
|
net = IPy.IP(cidr)
|
||||||
|
return str(net.net()), str(net.prefixlen())
|
||||||
|
|
||||||
def _get_ip_version(cidr):
|
def _get_ip_version(cidr):
|
||||||
net = IPy.IP(cidr)
|
net = IPy.IP(cidr)
|
||||||
return int(net.version())
|
return int(net.version())
|
||||||
|
@ -354,6 +358,7 @@ class LibvirtConnection(object):
|
||||||
power_state.NOSTATE,
|
power_state.NOSTATE,
|
||||||
'launching')
|
'launching')
|
||||||
NWFilterFirewall(self._conn).setup_nwfilters_for_instance(instance)
|
NWFilterFirewall(self._conn).setup_nwfilters_for_instance(instance)
|
||||||
|
|
||||||
self._create_image(instance, xml)
|
self._create_image(instance, xml)
|
||||||
self._conn.createXML(xml, 0)
|
self._conn.createXML(xml, 0)
|
||||||
logging.debug(_("instance %s: is running"), instance['name'])
|
logging.debug(_("instance %s: is running"), instance['name'])
|
||||||
|
@ -545,7 +550,7 @@ class LibvirtConnection(object):
|
||||||
|
|
||||||
if FLAGS.allow_project_net_traffic:
|
if FLAGS.allow_project_net_traffic:
|
||||||
net, mask = _get_net_and_mask(network['cidr'])
|
net, mask = _get_net_and_mask(network['cidr'])
|
||||||
net_v6, mask_v6 = _get_net_and_mask(
|
net_v6, prefixlen_v6 = _get_net_and_prefixlen(
|
||||||
network['cidr_v6'])
|
network['cidr_v6'])
|
||||||
extra_params = ("<parameter name=\"PROJNET\" "
|
extra_params = ("<parameter name=\"PROJNET\" "
|
||||||
"value=\"%s\" />\n"
|
"value=\"%s\" />\n"
|
||||||
|
@ -554,7 +559,7 @@ class LibvirtConnection(object):
|
||||||
"<parameter name=\"PROJNETV6\" "
|
"<parameter name=\"PROJNETV6\" "
|
||||||
"value=\"%s\" />\n"
|
"value=\"%s\" />\n"
|
||||||
"<parameter name=\"PROJMASKV6\" "
|
"<parameter name=\"PROJMASKV6\" "
|
||||||
"value=\"%s\" />\n") % (net, mask, net_v6, mask_v6)
|
"value=\"%s\" />\n") % (net, mask, net_v6, prefixlen_v6)
|
||||||
else:
|
else:
|
||||||
extra_params = "\n"
|
extra_params = "\n"
|
||||||
|
|
||||||
|
@ -882,7 +887,7 @@ class NWFilterFirewall(object):
|
||||||
nwfilter_xml += (" <filterref filter='nova-secgroup-%d' "
|
nwfilter_xml += (" <filterref filter='nova-secgroup-%d' "
|
||||||
"/>\n") % security_group['id']
|
"/>\n") % security_group['id']
|
||||||
nwfilter_xml += "</filter>"
|
nwfilter_xml += "</filter>"
|
||||||
|
logging.debug(nwfilter_xml)
|
||||||
self._define_filter(nwfilter_xml)
|
self._define_filter(nwfilter_xml)
|
||||||
|
|
||||||
def ensure_security_group_filter(self, security_group_id):
|
def ensure_security_group_filter(self, security_group_id):
|
||||||
|
@ -899,11 +904,12 @@ class NWFilterFirewall(object):
|
||||||
rule_xml += "<rule action='accept' direction='in' priority='300'>"
|
rule_xml += "<rule action='accept' direction='in' priority='300'>"
|
||||||
if rule.cidr:
|
if rule.cidr:
|
||||||
version = _get_ip_version(rule.cidr)
|
version = _get_ip_version(rule.cidr)
|
||||||
net, mask = _get_net_and_mask(rule.cidr)
|
|
||||||
if(FLAGS.use_ipv6 and version == 6):
|
if(FLAGS.use_ipv6 and version == 6):
|
||||||
|
net, prefixlen = _get_net_and_prefixlen(rule.cidr)
|
||||||
rule_xml += "<%s srcipaddr='%s' srcipmask='%s' " % \
|
rule_xml += "<%s srcipaddr='%s' srcipmask='%s' " % \
|
||||||
(v6protocol[rrule.protocol], net, mask)
|
(v6protocol[rrule.protocol], net, prefixlen)
|
||||||
else:
|
else:
|
||||||
|
net, mask = _get_net_and_mask(rule.cidr)
|
||||||
rule_xml += "<%s srcipaddr='%s' srcipmask='%s' " % \
|
rule_xml += "<%s srcipaddr='%s' srcipmask='%s' " % \
|
||||||
(rule.protocol, net, mask)
|
(rule.protocol, net, mask)
|
||||||
if rule.protocol in ['tcp', 'udp']:
|
if rule.protocol in ['tcp', 'udp']:
|
||||||
|
|
|
@ -193,7 +193,7 @@ class InstanceTests(UserSmokeTestCase):
|
||||||
else:
|
else:
|
||||||
break
|
break
|
||||||
else:
|
else:
|
||||||
self.fail('could not ssh to instance')
|
self.fail('could not ssh to instance v6')
|
||||||
|
|
||||||
def test_006_can_allocate_elastic_ip(self):
|
def test_006_can_allocate_elastic_ip(self):
|
||||||
result = self.conn.allocate_address()
|
result = self.conn.allocate_address()
|
||||||
|
|
Loading…
Reference in New Issue