cyclades: Add tests for servers/networks/subnets
Add new tests for changes introduced in commit 35ea7f6
cyclades: Log userid in create requests
cyclades: Add some unicode unittests
cyclades: Revert some changes from previous commit
Revert removal of duplicate code from commit35ea7f671f28f4e3fbf4d1a58d32fd04fb5f3140
snf-cyclades: Various bug fixes in cyclades
cyclades: Fix typo in tests/networks.py
cyclades: Typo fix in api/networks.py
cyclades: Update api/networks.py and typo fixes
Refs #4979
cyclades: Validate fields of API requests
Make sure that all fields of a request (user input) have a valid type.This commit validates 'ports', 'servers' and 'floating_ips' APIs.
cyclades: Detach serial from resource when resolved
cyclades: Extend flavors with 'allow_create' field
cyclades: Add deleted attribute for changes-since
Extend API response for servers, networks, subnets and floating IPs,to support HTTP 'changes-since' queries.
cyclades: Fix typo
cyclades: Add 'userid' and 'public' to subnets
Extend 'Subnet' model with 'userid' and 'public' attributes. This isrequired in order to avoid an expensive join when listing subnets. Thiscommit also includes a database migration for existing subnets.
cyclades: Set detail=True by default
cyclades: Properly handle subnet/floating_ip IDs
cyclades: Comment out unused tests
Security groups are not working yet. Comment out relevant tests.
cyclades: Do not prefetch related in get()
cyclades: Optimize network related DB queries
Use 'prefetch_related' and 'select_related' to optimize DB queries.
cyclades: Fix bugs in port creation
cyclades: Fix locking issue in port create
Lock VM before locking network, because otherwise a deadlock may occurwith code of snf-dispatcher.
cyclades: Fix typo error
cyclades: Only IPv4 addresses in port forwarding
Fix bug that caused calling of port forwarding setting with IPv6addresses.
cyclades: Get network lock when creating a port
Take the network lock before creating a port in the network. Not takingthe lock may result in a race condition between creating the port anddeleting the network. Also, it can cause a DB deadlock.
snf_django: Change error status code if request method is not valid
Return 405 (NotAllowed) instead of 400 (BadRequest)Add Allow header in the response containing the list of valid methods
Encrypt instance ids in the stats URLs
cyclades: Move all management commands to logic
Move all management commands from 'api/management/commands' to'logic/management/commands'.
cyclades: Change default value for dhcp
cyclades: Fix stale import
cyclades: Change behaviour of servers fqdn
Change behaviour of 'CYCLADES_SERVERS_FQDN' setting: * If this setting is set to 'None', do not fall back to the public IP address of the machine. * Return the value of the setting even if the machine has no public...
cyclades: Fix typo in management command
cyclades: Fix a bug in logic/subnets.py
cyclades: Typo fixes
cyclades: Update some snf-manage commands
cyclades: Update some snf-manage *-remove commands
cyclades: Verbal fixes on some snf-manage commands
cyclades: More verbal fixes
cyclades: Update snf-manage network-create
cyclades: Better handling of deleted subnets
cyclades: Update success code on subnet create
cyclades: Catch an unhandled exception
Add a new function to assert success code 201
cyclades: Add default owner for port
Consider as default owner for a port the owner of the machine that theport will be connected to.
astakos: Add resource visibility flags
Rename flag `allow_in_projects' to `ui_visible'. Add flag `api_visible'.The former entails the latter.
cyclades: Small fixes to server-import command
cyclades: Catch exception in verify_personality
The verify_personality function assumes that the contents of apersonality is encoded in base64 and tries to decode them. But if theclient didn't encode them a TypeError `Incorrect padding' will beraised. Catch this exception and raise a BadRequest.
Rename 'cpu' and 'ram' resources
Rename CPU and RAM relative resources to avoid data migrations.Specifically, the resources that are renamed are the following:
cyclades: Allow deletion of ports from public nets
Move check about deleting a port from a public network. This check isonly enforced in the API, but is allowed in logic layer, e.g. snf-managecommands.
cyclades: Add '--active' filter to ip-list cmd
Add filter to display only IPs that are currently active.
cyclades: Rename attribute to 'router:external'
Rename 'external_router' attribute of network to 'router:external' asdefined in the API.
cyclades: Fix a bug in api/subnets.py
cyclades: Fix location of 'ip-list' command
cyclades: Fix and rename snf-command
Replace snf-manage floating-ip-history with ip-listsnf-manage ip-list (--address <ip_address>) (--server <server-id>)This is a normal ListCommand so it can take other options like--filter-by.
cyclades: Rename option
Rename '--allocation-pools' option to '--allocation-pool'.
cyclades: Fix broken tests
Fix some tests that broke because of recent changes in astakosclient.The 'token' argument has been removed, so all mocking arguments areshifted by one.
cyclades: sed 's/astakos_url/astakos_auth_url/g'
cyclades: Replace ASTAKOS_BASE_URL
Replace ASTAKOS_BASE_URL with ASTAKOS_AUTH_URL.
Merge branch 'feature-cyclades-networks' into develop
Conflicts: snf-cyclades-app/synnefo/api/management/commands/server-inspect.py snf-cyclades-app/synnefo/app_settings/urls.py snf-cyclades-app/synnefo/logic/backend.py snf-cyclades-app/synnefo/logic/backend_allocator.py...
cyclades: Fix some broking tests
cyclades: Rename snf-manage floating-ip-state
New name is snf-manage floating-ip-history <floating-ip-address>Get info about which servers this ip is or was connected to.
cyclades: Fix a bug in network and subnet create
cyclades: Add a new function in logic/subnets.py
cyclades: Fix --allocation-pool in subnet-create
Update the way allocation-pools work in subnet-create. Now,--allocation-pool can be used multiple times, each time for a differentpool. Eg.,snf-manage subnet-create --network-id 1 --cidr 192.168.42.0/24...
Merge branch 'master' into develop
Conflicts: Changelog astakosclient/astakosclient/keypath.py ci/utils.py docs/admin-guide.rst snf-astakos-app/astakos/im/cookie.py snf-astakos-app/astakos/im/functions.py snf-astakos-app/astakos/im/quotas.py snf-astakos-app/astakos/im/views/projects.py...
cyclades: Simplify code of 'api.subnets' module
cyclades: Fix bug in floating-ip-remove
Add decorator convert_api_faults
cyclades: snf-manage floating-ip-state
snf-manage floating-ip-state <floating_ip_state>Find if a floating-ip is attached to a server or not.IPAddressLog now can contain multiple entries for the same ip.
cyclades: snf-manage por-list --server --public
List only ports connected to public networksList only ports connected to a specific server
cyclades: snf-manage server-create --port
cyclades: Change default value for dhcp option
Change default value of 'dhcp' option in snf-manage network-create command.
cyclades: Handle 'drained' flag of networks
cyclades: Optimize *-list commands
Use prefetch_related and select-related to importive the DB queries thatare generated by *-list snf-manage commands.
cyclades: Code refactoring to backend module
cyclades: Add option to display IPs in server-list
cyclades: Retrieve image names only if needed
Retrieve images from plankton only if the user asked for the image name.Otherwise just display the image ID. This will significantly speed upthe execution time of 'server-list' management command.
cyclades: Changes service type of net resources
cyclades: Remove old networks API
cyclades: Fix network-create management command
Fix when network is created in the Ganeti backends. The network must becreated in the Ganeti backends only after IPv4 or/and IPv6 subnet hasbeen created. This commit moves the code that created the network in the...
cyclades: Return 'links' in subnet and port calls
cyclades: Fix bugs in subnets and ports
cyclades: Create 'cyclades_network' service
Create 'cyclades_network' service which is part of Cyclades, of 'network'type and with 'network' prefix to hold all API endpoints that arerelative with networks. So, for example, the endpoint for networks will...
cyclades: Merge subnet-create with network-create
cyclades: Fix bug in tests
Fix bug in port tests that were introduced by latest changes in IPPoolmanager.
Cyclades: Rename 'Can not' to 'Cannot' to all msgs
cyclades: Add a test for subnet creation
cyclades: Update snf-manage subnet-create
cyclades: Fix a typo in api/subnets.py
cyclades: Fix default/forced server networking
Fix the default behaviour for networking of servers that are beingcreated. There are two settings controlling this behaviour:
docs: Update admin guide and rename mngmt command
cyclades: Refactor code
Move code relative with allocating ips and floating IPs to 'logic.ips'module.
cyclades: Workaround for race condition in Ganeti
Workaround for race where OP_INSTANCE_REMOVE starts executing on Ganetibefore OP_INSTANCE_CREATE. If this is the case, OP_INSTANCE_REMOVE willnot wait for locks, instead it will fail because the instance has not...
cyclades: Forbid new ports no deleting network
Do not allow creation of new ports and reservation of floating IPs onnetwork that are being deleted. Currently the state of the networkchanges only when the network gets deleted from all backends. So wecheck if a network is being deleted by checking if the action of the...
cyclades: Create server in public net with FIP
Remove 'floating_ips' extension attribute to POST /servers API call.Instead use the 'fixed_ip' attribute of 'networks' attribute to specifythe IPv4 address of a floating IP. So in order to create a serverconnected to a private network and a public network, the 'networks'...
cyclades: Series of fixes regarding networks & ips
cyclades: Register url for ports detail view
cyclades: Fix permissions when looking up ports
Look up of ports should check the port userid and not the networkuserid.
cyclades: Choose networks in server-create cmd
cyclades: Create server with existing ports
Extend POST /servers API call to support creation of servers that willbe using existing ports. Networking of the instance is defined via the'networks' attribute which can contain either network UUIDs or portUUIDs. In case of network UUIDs, the user can also request for a...