added TIMEOUT variable on settings.py.dist. You'll have to cp to your settings.py
initial value is 10 seconds. after this time passes, if the ui hasn't received any data, the user is informed (with js alert window at the moment) that thereare network issues (a better message might ask the user to refresh)
added error handling when rapi can't login to the backend. the ui user gets informed
added get_vmid on Image model to return the first VMs id, if any. This was the serverid variable
use rsapi_state instead of operstate
a few changes on the handlers/machines.html in order for the servers to appear
What commit b4141604 should have contained.
The proper contents of commit b4141604 are included here.
changed url for groups from /virtual_machine_groups to /groups
initialization of VirtualMachineGroup and VirtualMachineGroupHandler that lists/creates/deletes VirtualMachineGroups
these are groups of virtual machines for a User
a few changes on the handlers in order to work with the rapi (since we now have access).
removed id_from_instance function from the VirtualMachine model and put it back since it will be needed as a global functionto be imported by handlers and not as a staticmethod of the VM model.
Image implementation of the Rackspace API
added flavors on the RS API and replaced MOCK Flavors
get rid of the MOCK objects and use a database with initial data loaded
added create machine .post-create class on the ui
this is a static link that once pressed sends a HTTP POST request to the ganeti cluster (through api.handlers.ServerHandler.create)and creates a virtual server. This is sort of a mockup behavior, since
reboot and shutdown actions for a machine added on the list machines view
they are connected with the api.handlers.ServerActionHandler.create function that understands the data they send
a few changes regarding the VirtualMachines id and ganeti id.
Initial attempt to implement the ui-->RS API-->rapi architecture
main changes are:
removed reference to aquarium/models to db/models
a few minor changes regarding the naming of metadata, Server Label has become Server_Label (xml naming does not like spaces), also changed vocabs.py and machines.html according to the STATES tuple of vocabs.py
added spinner when loading machines and server sleep, to emulate a real life use case
js api calls
Fix XML output
Breakage introduced with previous commit 5c812d1.
Split some loosely related modules
Allow for .json/.xml suffixes in URLs as per spec
Add our own XML emitter
OpenStack's API XML isn't merely an XML representation of the datastructures and therefore Piston's XML Emitter can't be used as-is.
The XML generation code from OpenStack's Nova is guranteed(?) to becompatible, so re-use their code and adapt it into an Emitter subclass....
Add a custom 404 catch-all in api/
Add error handling on /servers read()
Provide an empty "details" field in faults
To deal with broken clients that expect it to be there.
Add a paginator decorator for limit/offset syntax
This addresses the “Paginated Collections” section of the specificationin a transparent and get-out-of-my-way way.
The functionality is absolutely needed to signal the stop of the list inthe CloudServers Python bindings (at least at the moment).
Add an initial implementation of API's /servers read()
Fix authentication handler challenge() for servers API
Fix URL path for API version handler
Fix some trailing-slash breakage, OS-API is explicit about that
Convert faults to return an Exception subclass
Piston's rc from which fault is modeled doesn't do that; however, weprefer doing things the Django (rather than the Piston) way and makefaults be an Exception subclass.
Piston may not do that but it actually gives us all the tools to do it,...
Add Limit handler
Be more explicit about ServerHandler's allowed_methods
Add Shared IP Groups handler
Add backup schedule handler
Add Iimage handler
Add Flavor handler
Initial commit