OpenStack API Support

Registered by Adam Johnson

We require the OpenStack API for running nova, so that we can easily extend it's functionality. For this, we need to add support for the OpenStack API.

Blueprint information

Status:
Complete
Approver:
Devin Carlen
Priority:
High
Drafter:
None
Direction:
Approved
Assignee:
Devin Carlen
Definition:
Approved
Series goal:
Accepted for diablo
Implementation:
Implemented
Milestone target:
milestone icon diablo-4
Started by
Jeffrey Wilcox
Completed by
Devin Carlen

Sprints

Whiteboard

Current Issues to Face: (Original notes from Devin)
* OpenStack API lacks support for Volumes - For now we will use this branch for volume support - https://code.launchpad.net/~justin-fathomdb/nova/justinsb-openstack-api-volumes
* OpenStack API has some conflicts with how project and user groups are handled.
* OpenStack API lacks admin API functions such as creating users and projects, starting VPNs.
  We have cobbled together the admin functions in the EC2 based admin endpoint for now.

Current Status (2011-Apr-14):
   - The EC2 and OpenStack API based dashboards can list/launch/terminate each other's instances and images
     as long as glance is used as the image store.
   - Integrating the two API's in a single dashboard where both are in use at the same time is complicated
     by the differences in object attributes and semantics between the two API's.
   - The OpenStack API lacks support for keypair managment and projects, which limits how close that version
     of the dashboard can be brought into sync with the EC2 API based version until these are addressed.

Current Status (2011-May-23) (Devin):
  - The refactor-submodules branch has landed against trunk. It will require a moderate amount of effort to merge trunk into your OpenStack API branch.

2011-05-30 (Jeff):
I re-based the openstack api dashboard branch against the current trunk and manually merged the code (and marked the old branch abandoned). As predicted the merge was not smooth, but the branch should now be mergable using bzr.

2011-07-12 (Jesse):
  - the master branch uses the openstack API, but uses both 1.0 and 1.1 api. (openstack-compute is 1.0 whereas the extensions use 1.1)

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.