Akihiro Motoki 1100169130 Add a config option to disable Router panel
Neutron setup allows operators not to enable Router feautre
(by not using Router service plugin in neutron.conf) and
some Neutron plugin does not support Router feature.
According to bug 1350639 there is also a case where operators
want to disable Router panel from their policy.
It seems nice we have a option to control Router panel.

This commit add a new option 'enable_router' to OPENSTACK_NEUTRON_NETWORK.
The default is True since router feature is enabled in most deployments
and it is the current default behavior of Horizon.
If this option is False, Router panel will disappear.

blueprint hide-router-panel-by-config
Partial-Bug: #1292022
Closes-Bug: #1350639
Change-Id: If90517bd35c5b18173c54c14a1ba229f97ba4797
2014-08-30 05:12:15 +09:00

31 lines
1.0 KiB
Python

# Copyright 2012, Nachi Ueno, NTT MCL, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
from django.conf import settings
from django.utils.translation import ugettext_lazy as _
import horizon
from openstack_dashboard.dashboards.admin import dashboard
class Routers(horizon.Panel):
name = _("Routers")
slug = 'routers'
permissions = ('openstack.services.network',)
network_config = getattr(settings, 'OPENSTACK_NEUTRON_NETWORK', {})
if network_config.get('enable_router', True):
dashboard.Admin.register(Routers)