rehome neutron's auto-allocated-topology extension API definition

This patch rehomes neutron's auto_allocated_topology extension's API
definition into neutron-lib.

Change-Id: I8adab48cd4d8198c366a54cc746103ca8d01f086
This commit is contained in:
Boden R 2017-07-14 13:20:15 -06:00
parent 9488b976f5
commit 45452c545f
5 changed files with 86 additions and 0 deletions

View File

@ -11,6 +11,7 @@
# under the License.
from neutron_lib.api.definitions import agent
from neutron_lib.api.definitions import auto_allocated_topology
from neutron_lib.api.definitions import bgpvpn
from neutron_lib.api.definitions import bgpvpn_routes_control
from neutron_lib.api.definitions import data_plane_status
@ -39,6 +40,7 @@ from neutron_lib.api.definitions import trunk_details
_ALL_API_DEFINITIONS = {
agent,
auto_allocated_topology,
bgpvpn,
bgpvpn_routes_control,
data_plane_status,

View File

@ -0,0 +1,55 @@
# Copyright 2015-2016 Hewlett Packard Enterprise Development Company, LP
#
# 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 constants
from neutron_lib.api.definitions import l3
from neutron_lib.api.definitions import network
ALIAS = 'auto-allocated-topology'
LABEL = ALIAS
IS_SHIM_EXTENSION = False
IS_STANDARD_ATTR_EXTENSION = False
NAME = 'Auto Allocated Topology Services'
API_PREFIX = ''
DESCRIPTION = 'Auto Allocated Topology Services.'
UPDATED_TIMESTAMP = '2016-01-01T00:00:00-00:00'
RESOURCE_NAME = 'auto_allocated_topology'
COLLECTION_NAME = 'auto_allocated_topologies'
RESOURCE_ATTRIBUTE_MAP = {
COLLECTION_NAME: {
'id': {'allow_post': False, 'allow_put': False,
'validate': {'type:uuid': None},
'is_visible': True},
'tenant_id': {'allow_post': False, 'allow_put': False,
'validate': {'type:uuid': None},
'is_visible': True},
},
network.COLLECTION_NAME: {
constants.IS_DEFAULT: {
'allow_post': True,
'allow_put': True,
'default': False,
'is_visible': True,
'convert_to': converters.convert_to_boolean,
'enforce_policy': True,
'required_by_policy': True}},
}
SUB_RESOURCE_ATTRIBUTE_MAP = {}
ACTION_MAP = {}
REQUIRED_EXTENSIONS = [l3.ALIAS, 'subnet_allocation', 'external-net']
OPTIONAL_EXTENSIONS = []
ACTION_STATUS = {}

View File

@ -27,3 +27,6 @@ FW_VALID_ACTION_VALUES = [FWAAS_ALLOW, FWAAS_DENY, FWAAS_REJECT]
# Firewall Protocol List
FW_PROTOCOL_VALUES = list(constants.IPTABLES_PROTOCOL_MAP.keys()) + [None]
# a default resource, such as auto allocated topology is_default network
IS_DEFAULT = 'is_default'

View File

@ -0,0 +1,22 @@
# 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.definitions import auto_allocated_topology
from neutron_lib.tests.unit.api.definitions import base
class AutoTopologyDefinitionTestCase(base.DefinitionBaseTestCase):
extension_module = auto_allocated_topology
extension_resources = (auto_allocated_topology.COLLECTION_NAME,)
extension_attributes = ()

View File

@ -0,0 +1,4 @@
---
features:
- The neutron ``auto-allocated-topology`` extension's API definition is now
available as ``neutron_lib.api.definitions.auto_allocated_topology``.