History | View | Annotate | Download (7.8 kB)
cyclades: Fix the os-floating-ips API
Rewrite the of-floating-ips API to match with the new DB schema.
cyclades: Make API server tests pass
Refactor Cyclades code so that it follows the new models for Networks,Subnets and IPAddresses. This refactor is not complete. Instead is thenecessary refactor for making tests for server API calls succeed.
cyclades: Replace FloatingIP with IPAddress
This commit just replaces all references to FloatingIP objects withreferences to IPAddress object, in order to be able to just load thecode. But the code is left unchanged, so all tests will fail.
cyclades: Add 'ip_type' attribute to NIC
Extend NetworkInterface model with the 'ip_type' attribute to showwhether the IP is a floating or fixed.
Signed-off-by: Christos Stavrakakis <cstavr@grnet.gr>
cyclades: Fix call to api_method_not_allowed
cyclades: Add size and free to floating-ip-pools
PEP8 fixes
cyclades: Common filtering based on changes-since
Add 'filter_modified_since' function in snf_django api utils, forparsing 'changes-since' HTTP parameter and filter the DB objects thatare updated after that date. Otherwise the deleted objects are returned.
cyclades: Remove PUBLIC_USE_POOL setting
Remove PUBLIC_USE_POOL setting, since in order to use floating IPs, thecyclades must be responsible for managing all IP pools.
cyclades: Check if a NIC is a floating IP.
Extend NetworkInterface model with a property showing if the IPv4address of the NIC is a floating IP or not. Also, simplify somerelevant code.
cyclades: Allowed serializations for floating IPs
Distinquish between networks and Floating IP pools
Extend Network model with the 'floating_ip_pool' boolean field, toindicate whether a Network can be a floating IP pool or not. Networksthat are floating IP pools must exist in all Backends, and so'snf-manage backend-add' should try to add them....
cyclades: Various fixes regarding floating IPs
Fix some issues regarding floating ips introduced by rebasing branch.
cyclades: Do not delete networks with floating IPs
Forbid network deletion in case the network has allocated floating IPs,no matter whether they are used by instances or not. Update'allocate_floating_ip' API method, to take exclusive lock on networkbefore reserving a floating IP, to avoid race condition between deleting...
cyclades: Auto allocate a floating IP
Make 'pool' attribute of POST /os-floating-ips request optional. Ifattribute is missing, the server will allocate a floating IP from one ofthe available public networks.
cyclades: Reserve a specific floating IP
Add extra optional 'address' attribute, in POST /os-floating-ips/request, to allow a user to reserve a specific floating IP. This requestwill fail if the user tries to allocate an IP address that is used byanothers user VM (it will succeed if they address is already used by...
cyclades: Do not release floating IPs
Update 'release_instance_nics' backend function which is called toprocess NIC modifications in the Ganeti backend, to not return aIPv4 address back to pool if this address is a floating IP.
cyclades: Implement /os-floating-ips API
Extend Cyclades API with /os-floating-ips endpoint. The API implementsthe following calls:
cyclades: Implement /floating-ip-pools API
Add Compute OS API extension /floating-ip-pools. This API implementsonly the GET /floating-ip-pools, which returns the list of availableFloating IP pools. Currently, these pools are the public networks.