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.
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
|OpenStack SDK||Python||Documentation||SDK for all OpenStack projects|
|Nova OpenStack API using python-novaclient||Python||Documentation
|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.|
|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/|
|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|