Visit the OpenStack Summit page for the latest news, registration and hotels.
Monday, November 3 • 16:20 - 17:00
Getting Started with OpenStack Python SDK

Sign up or log in to save this to your schedule and see who's attending!

The OpenStack Python SDK is designed to improve developer experience by consolidating the various OpenStack python-* client libraries and command line interfaces into a unified, well designed, and user focused SDK ("Software Development Toolkit").  In this talk, we'd like to discuss what the Python SDK is, how it is designed, and how you can contribute to the project.


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 a consumer application requiring potentially 22 individual python-* clients to install, each with different APIs and nuances, it becomes increasingly difficult to consume OpenStack clouds.


The python-openstacksdk project 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.


There are three major components of the OpenStack Python SDK: communication, authentication, and resources. The communication component of the SDK loosely follows the OSI Model for abstract layers of a protocol stack.  The authentication component is largely based on work done in the python-keystoneclient with legacy code removed.  The resource component generally follows that of an ORM (Object-relational mapping).


The project s git repository is https://github.com/stackforge/python-openstacksdk and we'd like to introduce the state of the project and discuss areas of greatest need for contribution.


avatar for Brian Curtin

Brian Curtin

Software Developer, Rackspace
I'm a Software Developer at Rackspace on the Developer Experience Team, working on Python related tools to enable users to interact with OpenStack clouds. My current focus is on building up the OpenStack SDK project, to provide an improved experience to consumers of OpenStack clouds... Read More →
avatar for Terry Howe

Terry Howe

Software Engineer, HP
Terry Howe is a Senior Software Engineer for Developer Experience at HP Cloud.  In this role, he is responsible development of Python SDKs and CLIs.  Previous to working with Python, Terry was working with Ruby Fog and Ruby CLIs.Prior to joining HP, Terry has years of programming... Read More →

Monday November 3, 2014 16:20 - 17:00
Room 242AB

Attendees (0)