[ 
https://issues.apache.org/jira/browse/LIBCLOUD-159?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13546779#comment-13546779
 ] 

Paritosh Aggarwal commented on LIBCLOUD-159:
--------------------------------------------

Was this taken up? I am looking for a student project to implement over a 
break. 
                
> REST Interface (GSoC 2012)
> --------------------------
>
>                 Key: LIBCLOUD-159
>                 URL: https://issues.apache.org/jira/browse/LIBCLOUD-159
>             Project: Libcloud
>          Issue Type: New Feature
>          Components: Core
>            Reporter: Tomaz Muraus
>            Assignee: Tomaz Muraus
>              Labels: gsoc, gsoc2012, mentor
>
> This is an umbrella issue for Libcloud REST interface task.
> ================================================
> Description:
> HTTP interface for Libcloud (http://libcloud.apache.org/) which exposes all 
> the Libcloud functionality through a RESTful API. Currently Libcloud has a 
> big limitation - you can only use it with Python. Adding a REST interface 
> would allow users to leverage Libcloud functionality through an arbitrary 
> language which knows how to talk HTTP.
> Project with a similar goal already exists - Deltacloud 
> (http://deltacloud.apache.org), but benefit of libcloud.http over Deltacloud 
> would be that we support way more providers and APIs and we also have a lot 
> more tests.
> Milestones:
> 1. Phase 1 (MVP)
> - basic REST-y framework build on top of twisted.web
> - basic validation for input data (argument types, etc.)
> - use introspection and magic to build most of the functionality, no copy and 
> paste!
> - basic auth mechanism - user sends provider credentials in X header with 
> every request
> - for now use threads.deferToThread when calling libcloud methods
> - API versioning based on the libcloud release version
> - Support for compute API
> 2. Support for provider specific arguments and methods (ex_foo)
> - parse / introspect docstrings to figure out provider specific methods + 
> arguments and their types
> - hook it up with the rest of the system
> - discovery of provider capabilities through an endpoints
> 3. Pluggable caching & better auth mechanism
> - Pluggable caching system (file, memory, memcache, redis, ...)
> - Cache credentials, session id,...
> - Cache provider responses
> 4. Support for other APIs:
> - DNS
> - Load balancers
> - Storage (might be a bit tricky because of upload and download functionality)
> 5. Other (nice-to-have)
> - auto-generate clients in different languages
> - libcloud driver for libcloud.http (meta, baby!)

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to