Skip to content

Using Cloud Programming Interfaces

There are various programming APIs and language bindings are available for use with CERN private cloud. The support for these comes from the Internet communities rather than the CERN service desk. Different APIs have different levels of portability and compatibility which are included in the Notes section. General information about using APIs with OpenStack is available in the OpenStack API documentation. Software Development Kits are listed in the Developer documentation and SDK documentation. SDKs which work with OpenStack should work with the CERN private cloud unmodified.

Language Bindings

These are programming language specific APIs which can be used to access the CERN private cloud. These are suggestions of potential APIs to use rather than recommendations and the list is not exhaustive.

Note: Support for these APIs should be from the Internet communities, not the CERN Service desk

Programming API Language Links Notes
OpenStack SDK Python Documentation SDK for all OpenStack projects
Nova OpenStack API using python-novaclient Python Documentation
Support
API provided by the OpenStack foundation. It is OpenStack specific but supports all of OpenStack's functions. This library is tested with the appropriate OpenStack release as part of OpenStack's standard release testing.
libcloud Python Web Site
Support
Provides different cloud support including OpenStack. This can be useful for the same program talking to different cloud endpoints.
jclouds Java Web site The standard cloud API used with Java.
gophercloud Go Web site Common cloud APIs for use with Go/
jstack JavaScript Web site A JavaScript implementation of the OpenStack API.
Boto Python Web Site Boto uses the EC2 API. There have been reports of incompatibilities between Boto and OpenStack for some functions.
Fog Ruby Web Site A generic cloud interface library for Ruby programmers. Functionality by cloud endpoint is available here
Rubygem-openstack Ruby Web Site Initial tests against CERN private cloud seem to work.
OpenStack.NET .NET Web Site Support for Microsoft's .NET platform
php-openstack PHP php-openstack Web Site
OpenStack-SDK-PHP PHP Web Site
Net::OpenStack::Compute Perl Web Site