Statistics
| Branch: | Tag: | Revision:

root / snf-cyclades-app / synnefo / api @ 8b388efe

# Date Author Comment
8b388efe 10/30/2013 05:30 pm Christos Stavrakakis

cyclades: Fix typo

b7311f3d 10/30/2013 04:56 pm Dionysis Grigoropoulos

cyclades: Various refactors in subnets

  • Remove unused functions and imports from logic/subnets.py
  • Remove --network-id option from snf-manage subnet-modify and make
    it an argument
  • Fix --ip-version, --dhcp and --gateway options in snf-manage
    subnet-create...
1fb3293d 10/30/2013 04:31 pm Christos Stavrakakis

cyclades: Fix typo

b968e8e6 10/30/2013 04:23 pm Christos Stavrakakis

cyclades: Get VM for update when creating port

53b0ea25 10/30/2013 04:23 pm Christos Stavrakakis

cyclades: Fix floating ips API response

Return 'floatingips' instead of 'floating_ips'.

d610698e 10/30/2013 04:23 pm Christos Stavrakakis

cyclades: Do not allow updating a floating IP

Do not allow attaching and detaching floating IPs to instance with
Neutron floating IP API. Instead floating IPs will be attached/detach to
instances using the /ports API, by specifying the address of the
floating IP in the 'fixed_ips' attribute.

b9364b15 10/30/2013 03:27 pm Marios Kogias

cyclades: Fix bug in floating-ips api tests

4911365b 10/30/2013 01:14 pm Christos Stavrakakis

cyclades: Fix bug in network test

3a6be177 10/30/2013 12:51 pm Christos Stavrakakis

cyclades: Rename Port state from BUILDING to BUILD

Neutron API defines the 'BUILD' status. This commit renames BUILDING
state of NIC to BUILD.
e4f484da 10/30/2013 12:43 pm Marios Kogias

cyclades: Update floating-ips api

Make changes to the floating-ips ip so that it complies with the
Openstack Quantum API.

d5a4a8d1 10/30/2013 12:36 pm Christos Stavrakakis

cyclades: Common module for pretty-printing

Create common module for pretty-printing database objects. Currently it
contains only functions for pretty-printing networks and ports.

0711e5aa 10/30/2013 12:56 am Christos Stavrakakis

cyclades: Fix default values for IP pool

Temporary commit to change default offset and size of IPPoolTable
factory.

2c2d4f0a 10/29/2013 08:22 pm Christos Stavrakakis

cyclades: Fix tests for ports

  • Mock GanetiRapiClient
  • Fix some wrong checks about response codes
  • PEP8 fixes
53162472 10/29/2013 07:46 pm Christos Stavrakakis

cyclades: Improve subnet-list management command

Remove unnecessary functions.

e537f85f 10/29/2013 07:41 pm Christos Stavrakakis

cyclades: Fix subnet-list management command

Remove stale imports

9c15e488 10/29/2013 07:36 pm Christos Stavrakakis

cyclades: Fix output of port-inspect command

65566d61 10/29/2013 06:50 pm Dionysis Grigoropoulos

cyclades: Add snf-manage subnet-update

  • Add snf-manage subnet-update. For the time being only the name of
    subnet can be updated.
99718617 10/29/2013 04:03 pm Dionysis Grigoropoulos

cyclades: Small bug fixes in logic/subnets.py

cfc33ff7 10/29/2013 04:03 pm Dionysis Grigoropoulos

cyclades: Add snf-manage subnet-create command

6f99f94f 10/29/2013 04:03 pm Dionysis Grigoropoulos

cyclades: Bug fixes in snf-manage subnet-list

  • Subnet-list now prints correctly the user ID and network ID of a subnet
  • Remove non-existing field "created"
316787ab 10/29/2013 04:03 pm Dionysis Grigoropoulos

cyclades: Update docstrings, remove old functions

  • Update docstrings in api/subnets.py and logic/subnets.py
  • Remove duplicate and unused functions from logic/subnets.py
c068e75d 10/29/2013 04:03 pm Dionysis Grigoropoulos

cyclades: Update snf-manage subnet-create

Update snf-manage subnet-create. Previous version was pushed without
being tested, thus it wasn't working at all.

8646e606 10/29/2013 04:03 pm Dionysis Grigoropoulos

cyclades: Fix some bugs in subnets

  • Fix a bug, where a user could change the name of a subnet without
    being the owner of said subnet.
  • Fix two bugs in snf-manage subnet-create. Fix no-dhcp option and a
    potential crash if the user specified an invalid IP version type....
014df29c 10/29/2013 03:40 pm Christos Stavrakakis

cyclades: Remove stale references to vm.router

495e2be8 10/29/2013 02:17 pm Christos Stavrakakis

Revert "cyclades: Add /routers api"

This reverts commit 69dadbe4e3223dc4d8cbaa5b09dde755c15679ed. Temporary
remove the /routers API.

9c74cc19 10/25/2013 04:25 pm Marios Kogias

cyclades: Fix POST /ports

Modify port create api call. If the user gives a public network
he has to give a valid floating ip as well.

79f4eec0 10/25/2013 03:41 pm Christos Stavrakakis

cyclades: Use existing IP when creating port

Extend port creation with the option to use an existing IPAddress. This
will be used to create a port with an existing Floating IP. Also, extend
port-creata management command with the '--floating-ip' option.

6d5c0344 10/25/2013 03:03 pm Christos Stavrakakis

cyclades: Fixes to port-create command

Verbal and code-style fixes to port-create command.

d9c36253 10/25/2013 12:35 am Marios Kogias

cyclades: snf-manage floating-ip-attach

snf-manage floating-ip-attach <address> --machine <server_id/router_id>

b3106aa4 10/25/2013 12:35 am Marios Kogias

cyclades: snf-manage floating-ip-dettach <address>

a1ab4e66 10/25/2013 12:35 am Marios Kogias

cyclades: Fix bug in snf-manage network-modify

There was no field floating_ips, ips instead.

69dadbe4 10/25/2013 12:35 am Marios Kogias

cyclades: Add /routers api

  • Add support for /routers api calls
  • Add tests for the api
9d1e6480 10/25/2013 12:35 am Marios Kogias

cyclades: snf-manage floating-ip-release <address>

7bff4d2f 10/25/2013 12:33 am Marios Kogias

cyclades: Add a port deletion test

0e4ec1f5 10/25/2013 12:33 am Marios Kogias

cyclades: Fix snf-manage port-create command

In order to create a new port on a server you give --server <server_id>
In order to create a new port on a router you give --router <router_id>

f29f1326 10/25/2013 12:33 am Marios Kogias

cyclades: Start the snf-manage floating-ip commands

  • Add snf-manage floating-ip-create command
bf42a16c 10/24/2013 06:32 pm Dionysis Grigoropoulos

cyclades: Add snf-manage subnet-list command

5d83d2ff 10/24/2013 04:49 pm Dionysis Grigoropoulos

cyclades: Bug fixes in subnets

9cd6d7e9 10/24/2013 03:33 pm Dionysis Grigoropoulos

cyclades: Update api/subnets.py to use logic files

1aec0223 10/18/2013 04:33 pm Christos Stavrakakis

cyclades: Fix bug in port-inspect command

86961519 10/18/2013 03:44 pm Christos Stavrakakis

cyclades: Add backend code to Ports API/logic

Add backend code to create and remove ports from Ganeti backends. Also
add some imporovements and fixes to logic, API code and management
commands.

9f6760ee 10/18/2013 01:16 pm Christos Stavrakakis

cyclades: PEP8 fixes

411e5025 10/16/2013 06:53 pm Dionysis Grigoropoulos

cyclades: Update subnet tests

097009bf 10/16/2013 06:28 pm Dionysis Grigoropoulos

cyclades: s/slac/enable_slac in api/subnets.py

868e4ce0 10/16/2013 01:57 pm Dionysis Grigoropoulos

cyclades: Fix a typo in api/subnets.py

911a1bc1 10/16/2013 01:26 pm Dionysis Grigoropoulos

cyclades: Various fixes in api/subnets.py

4445f97a 10/16/2013 01:26 pm Dionysis Grigoropoulos

cyclades: Fully support ip pools in subnets

5fa91dc4 10/16/2013 11:37 am Marios Kogias

cyclades: Add snf-manage port-inspect command

This command will provide info about the port concerning the DB and
the Ganeti state. For now, it provides only DB info.

0069a20c 10/16/2013 11:19 am Marios Kogias

cyclades: Add snf-manage port-remove command

f16aa9e6 10/15/2013 01:20 am Marios Kogias

cyclades: Add logic ports.py

Created a new file for ports in logic directory. This will have
the code about port manipulation in the backend. For now it is just
used for db filling.
Use the new function 'create' in the ports API.

a1713485 10/15/2013 01:20 am Marios Kogias

cyclades: snf-manage port-create

  • Create new command snf-manage port-create
  • Create new function util.get_security_group
be7c5377 10/14/2013 08:19 pm Christos Stavrakakis

cyclades: Fix some network management commands

  • Fix network-list to properly display networks. Add optionally
    'subnets' fields to display the IDs of all subnets
  • Fix network-modify to externally reserve the IPs in DB
  • Fix network-create to not require a name and subnet4 or subnet6...
812a1114 10/14/2013 05:42 pm Dionysis Grigoropoulos

cyclades: Add two functions to validate IP Pools

01adca6b 10/14/2013 05:42 pm Dionysis Grigoropoulos

cyclades: Neutron API, update tests for IP Pools

a996065e 10/14/2013 05:42 pm Dionysis Grigoropoulos

cyclades: Update subnets.py to support IP Pools

Update subnets.py to use the two functions introduced in commit 2a1e6fb

97ca522f 10/14/2013 05:42 pm Dionysis Grigoropoulos

cyclades: Update subnets.py to support slac

IPv6 subnets now support a boolean attribute called slac.
If a request for a subnet contains both a slac field and an enable_dhcp
field, only the slac one will be used. If no slac field is found for an
IPv6 subnet, the field enable_dhcp will be used instead....

fde2c1f7 10/14/2013 03:51 pm Christos Stavrakakis

cyclades: Fix the os-floating-ips API

Rewrite the of-floating-ips API to match with the new DB schema.

ae994d2e 10/14/2013 03:51 pm Christos Stavrakakis

cyclades: Fix getting value from pool

If an address is specified, check that the value belong to the pool,
else raise InvalidValue.

710b1c43 10/14/2013 03:51 pm Christos Stavrakakis

cyclades: Refactor code for allocating IPs

Refactor code that was used for allocating IP addresses and creating
NetworkInterfaces. The new code is more suitable to the new DB schema
where each network may have many IPv4 subnets and each subnet may
have many IP pools. Also, the new functions are using prefetch related...

9541aab5 10/14/2013 12:07 am Marios Kogias

cyclades: snf-manage port-list

ab6d1a2f 10/13/2013 11:59 pm Marios Kogias

cyclades: Modify snf-manage network commands

Modifications according to the new API

a3b8aaf6 10/11/2013 04:54 pm Marios Kogias

cyclades: Add more port tests

e08afd0b 10/11/2013 02:45 pm Christos Stavrakakis

cyclades: Fix typo and tests

b3a43976 10/11/2013 02:40 pm Christos Stavrakakis

cyclades: Optimize DB queries of /servers API

Use 'prefetch_related' attribute of Django queryset to prefetch the
NetworkInterface and IPaddress objects that are related with a
VirtualMachine object. Also, modify functions that operate on server
NICs and IPs, to to use only the prefetched objects, which means that...

5db2001a 10/11/2013 11:07 am Marios Kogias

cyclades: Syntactic refactor ports

a96e84cf 10/10/2013 08:08 pm Christos Stavrakakis

cyclades: Fix code for networks logic and API

5b8a9240 10/10/2013 08:08 pm Christos Stavrakakis

cyclades: Fix and add new tests for /networks

Also, delete tests for old networks.

6a959c73 10/10/2013 06:12 pm Dionysis Grigoropoulos

cyclades: Update api/subnets.py and tests

Commit 4e3a667 introduced a new model for Subnets, this commit contains
the following changes:

  • Update api/subnets.py to match the new model
  • Create tests/subnets.py to test the above api calls
  • Update api/urls and tests/__init__.py to reflect the above changes
95a213d4 10/10/2013 04:46 pm Christos Stavrakakis

cyclades: Fix indentation, PEP8 and wrong imports

0baa1e3d 10/10/2013 12:40 pm Build Bot

Integrate /networks API call

593851e0 10/10/2013 12:40 pm Build Bot

cyclades: Add /ports api call

92d2d1ce 10/10/2013 01:56 am Christos Stavrakakis

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 the
necessary refactor for making tests for server API calls succeed.

16f7d0d9 10/09/2013 07:36 pm Dionysis Grigoropoulos

cyclades: Add api/subnets.py

326c3ec8 10/09/2013 07:36 pm Christos Stavrakakis

cyclades: Replace FloatingIP with IPAddress

This commit just replaces all references to FloatingIP objects with
references to IPAddress object, in order to be able to just load the
code. But the code is left unchanged, so all tests will fail.

d0545590 10/09/2013 11:40 am Christos Stavrakakis

cyclades: Use NIC UUID in firewall tags

Use NICs UUID instead of index to generate firewall tags. Make the
'set_firewall_profile' action to take the NICs ID as argument. Also,
update the firewall settings.

c988fcca 10/09/2013 11:40 am Christos Stavrakakis

cyclades: Change format of 'attachment' attribute

Change the format of the 'attachment' attribute. Until now, each
attachment had an identifier of the form 'nic-$vm_id-$nic_id'. This
commit changes the identifier to just '$nic_id', since from now on
is unique for the lifetime of a NIC.

443315d6 10/09/2013 11:40 am Christos Stavrakakis

cyclades: Add 'ip_type' attribute to NIC

Extend NetworkInterface model with the 'ip_type' attribute to show
whether the IP is a floating or fixed.

Signed-off-by: Christos Stavrakakis <>

7c714455 10/09/2013 11:40 am Christos Stavrakakis

cyclades: Use Ganeti NIC UUIDs

Since Ganeti 2.8, it is supported to refer to devices (NICs and Disks)
not only by their index but also by their name or UUID. This commit
updates Synnefo to refer to devices by their name. Synnefo will set the
name of the devices which will be a UUID. We do not use Ganeti's UUIDs...

c4ed6248 10/09/2013 11:39 am Christos Stavrakakis

cyclades: Fix bug in floating IP test

2a2f9ffa 10/07/2013 02:37 pm Christos Stavrakakis

cyclades: Refactor network-modify command

Refactor snf-manage network-modify command. Remove options that modified
link, mac_prefix, mode, enable_dhcp or state of the network. This
options modified only the network in DB and resulted in incosistencies
between Cyclades DB and Ganeti.

a52cc1b4 10/07/2013 02:37 pm Christos Stavrakakis

cyclades: Refactor code for renaming a server

Created function for renaming a server.

91f7a08c 10/07/2013 02:37 pm Christos Stavrakakis

cyclades: Fix server-modify management command

  • Change --set-suspended and --unsuspended to --suspended=True|False
  • Removed --set-deleted as snf-manage server-remove can be used.
  • Removed option for modifying the state of a server.
60a71437 10/07/2013 02:37 pm Christos Stavrakakis

cyclades: Resize server from management command

Add the --flavor option in server-modify management command to resize a
server to a different flavor.

35f2fc07 10/07/2013 02:37 pm Christos Stavrakakis

cyclades: Add --action option in server-modify cmd

Add --action option in server modify command, to start, stop or reboot
an instance.

c3c8297e 10/03/2013 11:19 am Christos Stavrakakis

cyclades: Add 'server-remove' management command

Implement server-remove management command that deletes an instance from
a Ganeti backend. The command will wait by default for the
OP_INSTANCE_REMOVE job to complete, except if --wait=False is used.

6b256427 10/01/2013 06:56 pm Christos Stavrakakis

Request Django=>1.4, <1.5

Drop support for Django 1.2. Remove compatibility code that were used in
order to support Django 1.2 and 1.4. Finally update django documentation
link in the docs.

0a70d2c5 10/01/2013 06:16 pm Christos Stavrakakis

Merge branch 'hotfix-0.14.8' into develop

Merge hotfix-0.14.8 which ports Synnefo to wheezy and Django 1.4.5

Conflicts:
ci/ci_squeeze.conf
ci/ci_wheezy.conf
ci/schemas/one_node_squeeze/packages.conf
ci/schemas/one_node_squeeze/squeeze.conf
ci/schemas/one_node_squeeze/wheezy.conf...

a1d0f147 09/27/2013 10:49 am Christos Stavrakakis

cyclades: Remove commit_manually decorator

Replace commit_manually decorator with commit_on_success. Since network
is no longer created in DB in the API request, the manually decorator is
no longer needed.

a6b17d33 09/24/2013 05:16 pm Christos Stavrakakis

wheezy: urls module doesn't export defaults

2c6ac437 09/24/2013 12:30 pm Christos Stavrakakis

Fix missing import and broken test

9dcfad23 09/20/2013 01:45 pm Christos Stavrakakis

cyclades: Handle errors during vm creation

Commit #f2080d1 mocked an OP_INSTANCE_REMOVE when enqueuing an
OP_INSTANCE_CREATE job to Ganeti failed. However, this may result in
releasing IPs that may get reserved in Ganeti, because we can never
really know if the job has reached Ganeti or not (e.g. timeout). For...

874383a4 09/20/2013 01:45 pm Christos Stavrakakis

cyclades: Add missing commit_on_success decorator

8e67ea28 09/18/2013 06:22 pm Christos Stavrakakis

cyclades: Apply old commits to moved files

Code from file 'api/servers.py' has been moved to 'logic/servers.py'.
During the merge of hotfix-0.14.6 the develop, this code was lost. This
commit applies commits #f2080d1, #ea9b0fb, #32a0b85 to the new file.

ed2064f8 09/18/2013 05:17 pm Christos Stavrakakis

Merge branch 'hotfix-0.14.6' into develop

Conflicts:
Changelog
docs/admin-guide.rst
snf-cyclades-app/synnefo/api/management/commands/network-remove.py
snf-cyclades-app/synnefo/api/servers.py
snf-cyclades-app/synnefo/api/tests/servers.py
snf-cyclades-app/synnefo/logic/backend.py...

f2080d16 09/17/2013 02:33 pm Christos Stavrakakis

cyclades: Mock vm removal if creation fails

In case creating a VM fails before the OP_INSTANCE_CREATE job is
enqueued in Ganeti, the VM and its NICs must be deleted, and the
resources must be released from Quotaholder, which is exactly what is
done when a VM is deleted from Ganeti. Instead of duplicating the code,...

ea9b0fb9 09/17/2013 01:26 pm Christos Stavrakakis

cyclades: Fix bug during server creation

Commit #32a0b85, modified server creation, by refetching the object from
DB after issuing commission to quotaholder. However, the new object is
not having the 'config_url' attributed, which is added to the vm object...

bdb4641c 09/16/2013 02:53 pm Giorgos Korfiatis

cyclades: Fix unbound reference

Set backend to None if not specified.

db3037f1 09/12/2013 06:29 pm Giorgos Korfiatis

cyclades: Do not release resources if already deleted

Ensure that a commission to release vm resources is issued only once.
If a vm is marked `deleted', then resources must have already been
released.

32a0b855 09/12/2013 06:29 pm Giorgos Korfiatis

cyclades: Do not save stale objects after a commit

Call to issue_and_accept_commission saves the resource object (eg a vm)
and commits the transaction. This has the side-effect that the resource
object becomes stale: its lock is released and another thread may acquire...

347b2ba1 09/12/2013 06:26 pm Giorgos Korfiatis

common: Strip trailing slash from endpoints

Remove trailing slash from the endpoints' publicURL field in service
definitions. These values end up in the response of POST /tokens, and,
according to the keystone API, should not end in slash. A trailing slash...