Jump to: navigation, search

Difference between revisions of "SDK-Development/PythonOpenStackSDK"

(Resources)
(Meetings)
Line 46: Line 46:
  
 
= Meetings =
 
= Meetings =
 +
* The weekly Unified SDK [[Meetings/UnifiedSDK|IRC meeting]] is held on TBD at [http://www.timeanddate.com/worldclock/fixedtime.html?msg=UnifiedSDK+Meeting&iso=20131015T16 1600 UTC.]
 +
* [http://eavesdrop.openstack.org/meetings/sdk_team_meeting/2014/ 2014 Unified SDK Meeting Archive]
 
:
 
:
  
 
= Frequently Asked Questions =
 
= Frequently Asked Questions =
 
Please see our [[UnifiedSDK/FAQ|FAQ]] for answers to common questions about the Unified SDK.
 
Please see our [[UnifiedSDK/FAQ|FAQ]] for answers to common questions about the Unified SDK.

Revision as of 19:53, 24 January 2014

Summary

This is a proposed OpenStack project that is designed to improve the experience of OpenStack end-users by consolidating the various OpenStack python-* client back-ends and common code into a unified, well designed and user focused SDK ("Software Development Toolkit").

Detailed Description:

Currently, OpenStack's end user stories for both command-line and application developer consumers of OpenStack based clouds is confusing, fractured and inconsistent. This means that if a non-operator or OpenStack developer attempts to consume more than a single service from a deployed OpenStack system they face an uphill battle. With at least 22 individual python-* clients to install to build a consuming application, each with different APIs and nuances it becomes increasingly difficult to consume OpenStack clouds.

The Unified SDK proposes a new project with a single API namespace ("openstack") that would provide users with a single point of entry and series of supporting functions/methods from which to build applications and tools. As a side effect of this consolidation it becomes very easy to derive a unified CLI (such as openstackclient) or specialized per-service CLI tools. However, it is important that the definition of SDK (the compilation of the APIs and developer functions) and CLI tools stay separate as it is easy to conflate the idea of "clients" which is the state we have today.

Once the initial work to create the Unified SDK is complete; the next stage would be to collapse the individual python-* clients to use this as their logical backends.

The project is under active development, and will be moving to the regular OpenStack meeting schedule soon.

Audience

There are two key audiences for this project:

  • Application Developers: Application developers are not OpenStack Operators, or Developers - these are developers looking to consume a feature-rich OpenStack Cloud (multiple services). These Developers require a consistent, single namespace API ("Application Programming Interface") that allows them to build and deploy their application with minimal dependencies.
  • Command line consumers: These are similar to the Application Developers as their requirements are to use a consistent, single binary/script to interact with OpenStack Clouds - the commands they use should use consistent command line format, terminology and not require a large number of child dependencies to be installed onto the system.

Resources

Source code
Bug tracker
Blueprints
Developer doc

Project Outline

Requirements

Non-Requirements ("Things Not To Do")


IRC

The developers use IRC in #openstacksdk on freenode for development discussion.

Meetings

Frequently Asked Questions

Please see our FAQ for answers to common questions about the Unified SDK.