Add API definition for SG rule's normalized_cidr field

Change-Id: I4bbd8a93342805b5f182c31651f94c09c24c9593
Related-Bug: #1869129
This commit is contained in:
Slawek Kaplonski 2020-07-28 22:59:12 +02:00
parent 06e14c9565
commit 8ae0c1f21f
4 changed files with 75 additions and 0 deletions

View File

@ -93,6 +93,7 @@ from neutron_lib.api.definitions import router_admin_state_down_before_update
from neutron_lib.api.definitions import router_availability_zone
from neutron_lib.api.definitions import router_interface_fip
from neutron_lib.api.definitions import routerservicetype
from neutron_lib.api.definitions import security_groups_normalized_cidr
from neutron_lib.api.definitions import security_groups_port_filtering
from neutron_lib.api.definitions import segment
from neutron_lib.api.definitions import segments_peer_subnet_host_routes
@ -204,6 +205,7 @@ _ALL_API_DEFINITIONS = {
router_availability_zone,
router_interface_fip,
routerservicetype,
security_groups_normalized_cidr,
security_groups_port_filtering,
segment,
segments_peer_subnet_host_routes,

View File

@ -0,0 +1,46 @@
# 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.
ALIAS = 'security-groups-normalized-cidr'
IS_SHIM_EXTENSION = False
IS_STANDARD_ATTR_EXTENSION = False
NAME = 'Normalized CIDR field for security group rules'
DESCRIPTION = 'Add new field with normalized remote_ip_prefix cidr in SG rule'
UPDATED_TIMESTAMP = '2020-07-28T10:00:00-00:00'
RESOURCE_ATTRIBUTE_MAP = {
'security_group_rules': {
'normalized_cidr': {
'allow_post': False, 'allow_put': False,
'validate': {'type:subnet_or_none': None},
'is_visible': True,
'is_filter': True,
'is_sort_key': True},
}
}
SUB_RESOURCE_ATTRIBUTE_MAP = {
}
ACTION_MAP = {
}
ACTION_STATUS = {
}
REQUIRED_EXTENSIONS = [
'security-group'
]
OPTIONAL_EXTENSIONS = [
]

View File

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

View File

@ -0,0 +1,5 @@
---
features:
- |
Add an API extension ``security-groups-normalized-cidr`` that adds
new, read-only attribute ``normalized_cidr`` to the security group rules.