Fix upgrades that use Management network
authorDan Sneddon <dsneddon@redhat.com>
Wed, 13 Sep 2017 23:53:36 +0000 (17:53 -0600)
committerDan Sneddon <dsneddon@redhat.com>
Fri, 22 Sep 2017 23:38:28 +0000 (23:38 +0000)
Upgrades from older versions using Management network fail.
This patch enables the management network even though it is not
enabled in any of the role definitions. This will allow upgrades
to complete using existing network environment files, without
requiring operators to switch to the new method for defining
which networks are attached to roles. Eventually these older
environment files will be removed.

Change-Id: Iadd12a559f0ad6918958a1355f189187fd327363
Closes-bug: 1717123
(cherry picked from commit 5b9fbc2b2bfa00de2fe0f437f21e05e3fc09a53d)

network/management_v6.yaml [deleted file]
network_data.yaml
tools/yaml-validate.py

diff --git a/network/management_v6.yaml b/network/management_v6.yaml
deleted file mode 100644 (file)
index 2eb8c87..0000000
+++ /dev/null
@@ -1,71 +0,0 @@
-heat_template_version: pike
-
-description: >
-  Management network. System administration, SSH, DNS, NTP, etc. This network
-  would usually be the default gateway for the non-controller nodes.
-
-parameters:
-  # the defaults here work for static IP assignment (IPAM) only
-  ManagementNetCidr:
-    default: 'fd00:fd00:fd00:6000::/64'
-    description: Cidr for the management network.
-    type: string
-  ManagementNetValueSpecs:
-    default: {'provider:physical_network': 'management', 'provider:network_type': 'flat'}
-    description: Value specs for the management network.
-    type: json
-  ManagementNetAdminStateUp:
-    default: false
-    description: The admin state of the network.
-    type: boolean
-  ManagementNetShared:
-    default: false
-    description: Whether this network is shared across all tenants.
-    type: boolean
-  ManagementNetName:
-    default: management
-    description: The name of the management network.
-    type: string
-  ManagementSubnetName:
-    default: management_subnet
-    description: The name of the management subnet in Neutron.
-    type: string
-  ManagementAllocationPools:
-    default: [{'start': 'fd00:fd00:fd00:6000::10', 'end': 'fd00:fd00:fd00:6000:ffff:ffff:ffff:fffe'}]
-    description: Ip allocation pool range for the management network.
-    type: json
-  IPv6AddressMode:
-    default: dhcpv6-stateful
-    description: Neutron subnet IPv6 address mode
-    type: string
-  IPv6RAMode:
-    default: dhcpv6-stateful
-    description: Neutron subnet IPv6 router advertisement mode
-    type: string
-
-resources:
-  ManagementNetwork:
-    type: OS::Neutron::Net
-    properties:
-      admin_state_up: {get_param: ManagementNetAdminStateUp}
-      name: {get_param: ManagementNetName}
-      shared: {get_param: ManagementNetShared}
-      value_specs: {get_param: ManagementNetValueSpecs}
-
-  ManagementSubnet:
-    type: OS::Neutron::Subnet
-    properties:
-      ip_version: 6
-      ipv6_address_mode: {get_param: IPv6AddressMode}
-      ipv6_ra_mode: {get_param: IPv6RAMode}
-      cidr: {get_param: ManagementNetCidr}
-      name: {get_param: ManagementSubnetName}
-      network: {get_resource: ManagementNetwork}
-      allocation_pools: {get_param: ManagementAllocationPools}
-
-outputs:
-  OS::stack_id:
-    description: Neutron management network
-    value: {get_resource: ManagementNetwork}
-  subnet_cidr:
-    value: {get_attr: [ManagementSubnet, cidr]}
index fed1157..bce82cb 100644 (file)
@@ -81,8 +81,9 @@
   ipv6_subnet: 'fd00:fd00:fd00:5000::/64'
   ipv6_allocation_pools: [{'start': 'fd00:fd00:fd00:5000::10', 'end': 'fd00:fd00:fd00:5000:ffff:ffff:ffff:fffe'}]
 - name: Management
-  # Management network is disabled by default
-  enabled: false
+  # Management network is enabled by default for backwards-compatibility, but
+  # is not included in any roles by default. Add to role definitions to use.
+  enabled: true
   vip: false  # Management network does not use VIPs
   name_lower: management
   ip_subnet: '10.0.1.0/24'
index e47c1fe..f19772e 100755 (executable)
@@ -88,6 +88,8 @@ PARAMETER_DEFINITION_EXCLUSIONS = {'ManagementNetCidr': ['default'],
                                    'OVNSouthboundServerPort': ['description'],
                                    'ExternalInterfaceDefaultRoute':
                                        ['description', 'default'],
+                                   'ManagementInterfaceDefaultRoute':
+                                       ['description', 'default'],
                                    'IPPool': ['description'],
                                    'SSLCertificate': ['description',
                                                       'default',