blueprint allow-specific-floating-ip-address DocImpact APIImpact Change-Id: Ie56bba78d4f3b92eb4f3f71f62899a51b19857ba
2.8 KiB
Allow to specify floating IP address
Launchpad blueprint:
https://blueprints.launchpad.net/neutron/+spec/allow-specific-floating-ip-address
Problem Description
IP Address of floating ip is automatically allocated from IP pool.
In some cases, user want to specify a IP Address of floating ip.
Proposed Change
Adding the floating ip address as an attribute to the API for creating floating ip. An attribute name is floating_ip_address.
Attributes of API are limited by "policy.json". By default, Non-admin user cannot use floating_ip_address. Admin can use it. ("rule:admin_only")
Alternatives
None
Data Model Impact
None
REST API Impact
- floating_ip_address will be allowed to POST /v2.0/floatingips
- It is not updatable. i.e. cannot use for PUT /v2.0/floatingips
The attribute map will be changed as the following.
= {
RESOURCE_ATTRIBUTE_MAP
...'floatingips': {
...'floating_ip_address': {'allow_post': True, 'allow_put': False,
'validate': {'type:ip_address_or_none': None},
'is_visible': True, 'default': None,
'enforce_policy': True},
...
},
... }
Security Impact
An administrator of OpenStack should consider whether this feature is exposed to tenant user.
If users have a permission to use this feature, Users can control public ip addresses.
Notifications Impact
None
Other End User Impact
None
Performance Impact
None
IPv6 Impact
None
Other Deployer Impact
None
Developer Impact
None
Community Impact
None
Implementation
Assignee(s)
- Primary assignee:
-
fujioka-yuuichi-d
Work Items
- Add attribute to API
- Create test case on tempest
Dependencies
None
Testing
Tempest Tests
The following tests will be added.
- API Testing
- Allowed users can use the new parameter
- Scenario Testing
- A created floating ip address is reachable
Functional Tests
The following tests will be added.
- Allowed users can use the new parameter
API Tests
The following tests will be added.
- All patterns that parameter is passed/not passed.
Documentation Impact
User Documentation
New attributes will be added to API documentation.
Developer Documentation
None