From eca6dd91e3297983277ac8dfae81b0ad0eed9f7c Mon Sep 17 00:00:00 2001 From: Yuuichi Fujioka Date: Tue, 7 Oct 2014 19:52:23 +0900 Subject: [PATCH] allow setting ip address of floating ip blueprint allow-specific-floating-ip-address DocImpact APIImpact Change-Id: Ie56bba78d4f3b92eb4f3f71f62899a51b19857ba --- .../allow-specific-floating-ip-address.rst | 164 ++++++++++++++++++ 1 file changed, 164 insertions(+) create mode 100644 specs/kilo/allow-specific-floating-ip-address.rst diff --git a/specs/kilo/allow-specific-floating-ip-address.rst b/specs/kilo/allow-specific-floating-ip-address.rst new file mode 100644 index 000000000..3493e5e7a --- /dev/null +++ b/specs/kilo/allow-specific-floating-ip-address.rst @@ -0,0 +1,164 @@ +==================================== +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. + +.. code-block:: python + + 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 +---------- + +1. Add attribute to API +2. 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 + +References +========== + +https://review.openstack.org/#/c/70286/