rehome the qos default api def

This patch rehomes the qos-default extension's API definition into
neutron-lib. UT and release note also included.

Change-Id: If59765fe1f293d4ca6f80f62b22a420a388dfb68
This commit is contained in:
Boden R 2017-11-22 12:56:00 -07:00
parent 2ba229c48d
commit 9975850aa3
4 changed files with 68 additions and 0 deletions

View File

@ -54,6 +54,7 @@ from neutron_lib.api.definitions import portbindings_extended
from neutron_lib.api.definitions import project_id from neutron_lib.api.definitions import project_id
from neutron_lib.api.definitions import provider_net from neutron_lib.api.definitions import provider_net
from neutron_lib.api.definitions import qos from neutron_lib.api.definitions import qos
from neutron_lib.api.definitions import qos_default
from neutron_lib.api.definitions import router_availability_zone from neutron_lib.api.definitions import router_availability_zone
from neutron_lib.api.definitions import router_interface_fip from neutron_lib.api.definitions import router_interface_fip
from neutron_lib.api.definitions import subnet from neutron_lib.api.definitions import subnet
@ -108,6 +109,7 @@ _ALL_API_DEFINITIONS = {
project_id, project_id,
provider_net, provider_net,
qos, qos,
qos_default,
router_availability_zone, router_availability_zone,
router_interface_fip, router_interface_fip,
subnet, subnet,

View File

@ -0,0 +1,41 @@
# Copyright (c) 2017 Intel Corporation.
# All rights reserved.
#
# 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 neutron_lib.api import converters
from neutron_lib.api.definitions import qos as qos_apidef
ALIAS = 'qos-default'
IS_SHIM_EXTENSION = False
IS_STANDARD_ATTR_EXTENSION = False
NAME = 'QoS default policy'
API_PREFIX = ''
DESCRIPTION = 'Expose the QoS default policy per project'
UPDATED_TIMESTAMP = '2017-041-06T10:00:00-00:00'
RESOURCE_ATTRIBUTE_MAP = {
qos_apidef.POLICIES: {
'is_default': {
'allow_post': True,
'allow_put': True,
'default': False,
'convert_to': converters.convert_to_boolean,
'is_visible': True
}
}
}
SUB_RESOURCE_ATTRIBUTE_MAP = {}
ACTION_MAP = {}
REQUIRED_EXTENSIONS = [qos_apidef.ALIAS]
OPTIONAL_EXTENSIONS = []
ACTION_STATUS = {}

View File

@ -0,0 +1,21 @@
# 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 neutron_lib.api.definitions import qos_default
from neutron_lib.tests.unit.api.definitions import base
from neutron_lib.tests.unit.api.definitions import test_qos
class QoSDefaultTestCase(base.DefinitionBaseTestCase):
extension_module = qos_default
extension_resources = test_qos.QoSDefinitionTestCase.extension_resources
extension_attributes = ()

View File

@ -0,0 +1,4 @@
---
features:
- The ``qos-default`` extension's API definition is now available in
``neutron_lib.api.definitions.qos_default``.