Jump to: navigation, search

Difference between revisions of "NovaServerActions"

m (Text replace - "__NOTOC__" to "")
 
Line 1: Line 1:
__NOTOC__
+
 
 
= Nova Server Actions =
 
= Nova Server Actions =
  

Latest revision as of 23:30, 17 February 2013

Nova Server Actions

The API resource .../servers/{id}/action allows clients to POST a message to the server to take some specific action. These include REBOOT, SUSPEND, and the others listed in the API Developers Guide. The problem is that client applications must know the available actions in order to send them.

List of actions:

  1. changePassword
  2. reboot
  3. rebuild
  4. resize
  5. confirmResize
  6. revertResize
  7. createImage
  8. powerOn (extension?)

To make it easier to develop clients, the new resource .../servers/{id}/actions returns an enumerated list of actions along with natural-language descriptions. Moreover, once security restrictions are in place, this resource can be enhanced to provide a list of only those actions to which the currently-authenticated user is authorized.

The only HTTP method permitted is GET; other methods must return 404 or other appropriate error status code.

This is an example return document:

 <nova-server-actions>
    <action name="REBOOT" description="Reboot the server"/>
    <action name="SUSPEND" description="Suspend the server (make it inaccessible to the user)"/>
    ...
 </nova-server-actions>

Note that the action names are hard-coded to match the available actions. The descriptions, however, should be in a format that permits them to be translated should the implementor so desire.

Clients only need to query this resource to gather a list of available actions; this could be used in a menu, help text, or simply to validate user input.