From b70a4f26048fa57dbffa79b10cc67b811b8ae0df Mon Sep 17 00:00:00 2001 From: Brent Eagles Date: Thu, 19 Mar 2020 16:04:34 -0230 Subject: [PATCH] Allow disabling the octavia provider To be used to work around issues with octavia provider driver breaking CI. By default, the octavia provider is enabled, and this change adds the ability to disable it by setting the following attribute: OctaviaEnableDriverAgent: false This is a partial backport of https://review.opendev.org/#/c/713960/ It is partial because it does not disable octavia provider driver for any CI tests (such as scenario010-standalone.yaml) Change-Id: If04a719052cf650502258450477713d9fe06015a (cherry picked from commit 160e85e51b889f05868adabd4ad1563dab4ba281) (cherry picked from commit cbec6b3c290b801f11d45f1fe1130e3d952b9d6d) --- .../octavia/octavia-api-container-puppet.yaml | 27 ++++++++++++++----- 1 file changed, 21 insertions(+), 6 deletions(-) diff --git a/deployment/octavia/octavia-api-container-puppet.yaml b/deployment/octavia/octavia-api-container-puppet.yaml index 2d217a4b25..fd68121e1a 100644 --- a/deployment/octavia/octavia-api-container-puppet.yaml +++ b/deployment/octavia/octavia-api-container-puppet.yaml @@ -80,17 +80,24 @@ parameters: default: true description: Configure the nova flavor for the amphora. type: boolean + # We enable the driver agent and configure the OVN provider by default if OVN + # is enabled. NeutronMechanismDrivers: default: 'ovn' description: | The mechanism drivers for the Neutron tenant network. type: comma_delimited_list + OctaviaEnableDriverAgent: + default: true + description: Set to false if the driver agent needs to be disabled for some reason. + type: boolean conditions: internal_tls_enabled: {equals: [{get_param: EnableInternalTLS}, true]} use_tls_proxy: {equals : [{get_param: EnableInternalTLS}, true]} is_ovn_in_neutron_mechanism_driver: {contains: ['ovn', {get_param: NeutronMechanismDrivers}]} + enable_driver_agent: {equals: [{get_param: OctaviaEnableDriverAgent}, true]} resources: @@ -173,11 +180,19 @@ outputs: "%{hiera('$NETWORK')}" params: $NETWORK: {get_param: [ServiceNetMap, OctaviaApiNetwork]} - - - if: - - is_ovn_in_neutron_mechanism_driver - - octavia::api::provider_drivers: 'amphora: The Octavia Amphora driver.,octavia: Deprecated alias of the Octavia Amphora driver.,ovn: Octavia OVN driver.' - - {} + - octavia::api::provider_drivers: + list_join: + - ',' + - list_concat: + - - 'amphora: The Octavia Amphora driver.' + - 'octavia: Deprecated alias of the Octavia Amphora driver.' + - + if: + - and: + - is_ovn_in_neutron_mechanism_driver + - enable_driver_agent + - ['ovn: Octavia OVN driver.'] + - [] service_config_settings: fluentd: @@ -314,7 +329,7 @@ outputs: environment: - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS - if: - - is_ovn_in_neutron_mechanism_driver + - enable_driver_agent - octavia_driver_agent: start_order: 2 image: *octavia_api_image