Add OVNAvailabilityZone to improve UX

Currently to set az for ovn, user need to set
OVNCMSOptions with value:
"enable-chassis-as-gw,availability-zones=az-0:az-1:az-2",
which is not very good ux.
Adding new param OVNAvailabilityZone will improve ux
and improve configuration redabilities

Closes-Bug: #1923585
Change-Id: I90932c2445eda2cd0d6e661b561ce86a87dcdec2
(cherry picked from commit 1ddef85c91)
This commit is contained in:
Kamil Sambor 2021-04-13 10:42:22 +02:00
parent 56f03d66ef
commit c8daec6976
2 changed files with 23 additions and 1 deletions

View File

@ -80,6 +80,13 @@ parameters:
description: Whether Metadata Service has to be enabled
type: boolean
default: true
OVNAvailabilityZone:
description: The az options to configure in ovs db.
eg. ['az-0', 'az-1', 'az-2']
type: comma_delimited_list
default: []
tags:
- role_specific
OVNCMSOptions:
description: The CMS options to configure in ovs db
type: string
@ -127,6 +134,8 @@ conditions:
internal_tls_enabled: {equals: [{get_param: EnableInternalTLS}, true]}
key_size_override_unset: {equals: [{get_param: ContainerOvnCertificateKeySize}, '']}
enable_vlan_transparency: {equals: [{get_param: EnableVLANTransparency}, true]}
az_ovn_unset: {equals: [{get_param: OVNAvailabilityZone}, []]}
resources:
@ -143,8 +152,16 @@ resources:
map_replace:
- map_replace:
- ovn::controller::ovn_bridge_mappings: NeutronBridgeMappings
ovn::controller::ovn_cms_options: OVNCMSOptions
ovn::controller::enable_hw_offload: OvsHwOffload
ovn::controller::ovn_cms_options:
if:
- az_ovn_unset
- OVNCMSOptions
- list_join:
- ''
- - OVNCMSOptions
- ",availability-zones="
- {get_param: OVNAvailabilityZone}
- values: {get_param: [RoleParameters]}
- values:
NeutronBridgeMappings: {get_param: NeutronBridgeMappings}

View File

@ -0,0 +1,5 @@
---
features:
- |
Added new heat role specific param OVNAvailabilityZone to set availability-zones
for ovn. This param replace seting availability-zones throught OVNCMSOptions