Bug 1041991

Summary: [RFE][horizon]: Control Neutron features via extension list
Product: Red Hat OpenStack Reporter: RHOS Integration <rhos-integ>
Component: python-django-horizonAssignee: Matthias Runge <mrunge>
Status: CLOSED ERRATA QA Contact: Ido Ovadia <iovadia>
Severity: medium Docs Contact:
Priority: medium    
Version: unspecifiedCC: aberezin, ajeain, aortega, ddomingo, jpichon, markmc, mlopes, mrunge, rhos-flags, slong, ssainkar, yeylon
Target Milestone: Upstream M3Keywords: FutureFeature
Target Release: 6.0 (Juno)   
Hardware: Unspecified   
OS: Unspecified   
URL: https://blueprints.launchpad.net/horizon/+spec/neutron-feature-control-with-ext-list
Whiteboard: upstream_milestone_juno-3 upstream_status_implemented upstream_definition_approved
Fixed In Version: python-django-horizon-2014.2-4.el7ost Doc Type: Enhancement
Doc Text:
OpenStack Networking (neutron)-related features (for example, LBaaS, FWaaS, or VPNaaS) are now disabled or enabled using OpenStack Networking's extension list. OpenStack Networking feature settings have been removed from the dashboard's local_settings file. Additionally, the default settings of enable_lb, firewall, and vpn have been changed to 'True'. Previously, the default was 'False' to avoid user confusion because LBaaS, FWaaS, and VPNaaS are optional features in OpenStack Networking. With this change, these features in the dashboard are enabled dynamically, so the 'True' default is more reasonable. (FWaaS and VPNaaS are currently included in this release as technology preview.)
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-02-09 14:54:07 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:

Description RHOS Integration 2013-12-12 20:28:18 UTC
Cloned from launchpad blueprint https://blueprints.launchpad.net/horizon/+spec/neutron-feature-control-with-ext-list.

Description:

Neutron has many features and their support depends on a backend plugin.
Neutron features are implemented through the extension mechanism and we can determine which features are available through extension-list of the Neutron API.

The goal of this blueprint is to enable/disable Neutron related features based on the extension list from Neutron and remove Neutron related settings in local_settings.py.

The following features are related to this BP:
- Current features: Router, Load Balancer, Security Group
- Planned features: Firewall, VPN, Quota

This BP consists of the following works:
- Add is_extension_supported(extension-name) method to openstack_dashboard/api/neutron.py
- Enable neutron related panels according to the above method (router, loadbalancer, security_group)
- Remove the related configuration from local_settings.py

The question is whether we should keep the neutron-related configurations "enable_xxx" in local_settings.py.

Specification URL (additional information):

None

Comment 3 Matthias Runge 2014-11-21 08:12:53 UTC
Commit message from the only commit here:

Neutron features like LBaaS, FWaaS or VPNaaS are provided as
extensions in Neutron. This commit changes these features are enabled
only when they are included in the extension list from Neutron.

It also change the default settings of enable_lb/firewall/vpn to True.
The default of these settings were set to False to avoid confusion to
users because LB/FW/VPNaaS are optional features in Neutron. By this
commit corresponding features in Horizon are enabled dynamically, so
it is reasonable to change the default to True.

This commit introduces Horizon version of override_settings
"update_settings" decorator which allows override an item in dict.
Django original override_settings replaces a dict completely,
however OpenStack dashboard setting has many dictionary configuration
and there are test case where we want to override only one item
in a dictionary and keep other items in the dictionary.
This version of override_settings allows this.

Comment 6 errata-xmlrpc 2015-02-09 14:54:07 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://rhn.redhat.com/errata/RHEA-2015-0154.html