Browse code

Neutron: Fix IPv6 provider networks

The creation of the IPv6 subnet with provider networks does not
specifiy the correct parameters:
. V6_NETWORK_GATEWAY is specified but never set
- created new IPV6_PROVIDER_NETWORK_GATEWAY
. PROVIDER_SUBNET_NAME_V6 is specified but never set
- created new IPV6_PROVIDER_SUBNET_NAME
. FIXED_RANGE_V6 is being used
- created new IPV6_PROVIDER_FIXED_RANGE
. subnetpool_id is incorrect
- changed to subnetpool

Related-Bug: #1507870
Closes-Bug: #1417410
Change-Id: I9a1ad11bc54529080ec84d4677fa5633708890c7

John Kasperski authored on 2015/11/24 06:47:45
Showing 1 changed files
... ...
@@ -165,6 +165,9 @@ NEUTRON_CREATE_INITIAL_NETWORKS=${NEUTRON_CREATE_INITIAL_NETWORKS:-True}
165 165
 
166 166
 ## Provider Network Information
167 167
 PROVIDER_SUBNET_NAME=${PROVIDER_SUBNET_NAME:-"provider_net"}
168
+IPV6_PROVIDER_SUBNET_NAME=${IPV6_PROVIDER_SUBNET_NAME:-"provider_net_v6"}
169
+IPV6_PROVIDER_FIXED_RANGE=${IPV6_PROVIDER_FIXED_RANGE:-}
170
+IPV6_PROVIDER_NETWORK_GATEWAY=${IPV6_PROVIDER_NETWORK_GATEWAY:-}
168 171
 
169 172
 # Define the public bridge that will transmit traffic from VMs to the
170 173
 # physical network - used by both the OVS and Linux Bridge drivers.
... ...
@@ -545,9 +548,9 @@ function create_neutron_initial_network {
545 545
             die_if_not_set $LINENO SUBNET_ID "Failure creating SUBNET_ID for $PROVIDER_SUBNET_NAME $TENANT_ID"
546 546
         fi
547 547
 
548
-        if [[ "$IP_VERSION" =~ .*6 ]]; then
549
-            SUBNET_V6_ID=$(neutron subnet-create --tenant_id $TENANT_ID --ip_version 6 --ipv6-address-mode $IPV6_ADDRESS_MODE --gateway $V6_NETWORK_GATEWAY --name $PROVIDER_SUBNET_NAME_V6 --subnetpool_id None $NET_ID $FIXED_RANGE_V6 | grep 'id' | get_field 2)
550
-            die_if_not_set $LINENO SUBNET_V6_ID "Failure creating SUBNET_V6_ID for $PROVIDER_SUBNET_NAME_V6 $TENANT_ID"
548
+        if [[ "$IP_VERSION" =~ .*6 ]] && [[ -n "$IPV6_PROVIDER_FIXED_RANGE" ]] && [[ -n "$IPV6_PROVIDER_NETWORK_GATEWAY" ]]; then
549
+            SUBNET_V6_ID=$(neutron subnet-create --tenant_id $TENANT_ID --ip_version 6 --ipv6-address-mode $IPV6_ADDRESS_MODE --gateway $IPV6_PROVIDER_NETWORK_GATEWAY --name $IPV6_PROVIDER_SUBNET_NAME --subnetpool None $NET_ID $IPV6_PROVIDER_FIXED_RANGE | grep 'id' | get_field 2)
550
+            die_if_not_set $LINENO SUBNET_V6_ID "Failure creating SUBNET_V6_ID for $IPV6_PROVIDER_SUBNET_NAME $TENANT_ID"
551 551
         fi
552 552
 
553 553
         if [[ $Q_AGENT == "openvswitch" ]]; then