OpenStack began with the mission to produce a ubiquitous open source cloud computing platform. A key component of that mission is building not only software, but a large OpenStack ecosystem that support its growth and adds value to the core technology platform. In carrying out that mission, the OpenStack Foundation has created a set of requirements to ensure that the various products and services bearing the OpenStack marks achieve a high level of interoperability. They consist of must-pass tests for required capabilities and designated code.
The goal is to help users make informed decisions and adopt the OpenStack products that best meet their business needs. They should be able to easily identify products that meet interoperability requirements via the OpenStack Powered logo, as well as evaluate product capabilities in the OpenStack Marketplace by viewing the test results.
There are three different trademark licensing programs which apply to products that contain the OpenStack software, all under a unified logo called "OpenStack Powered." Though the programs share a single logo, each of the licensing programs have a unique list of technical requirements appropriate to their use case, which include required capabilities validated by must-pass tests and designated sections of OpenStack software code.
Must include all designated sections and pass all capabilities tests
Qualifying products may use the OpenStack Powered logo and use the word "OpenStack" in their product name
Public cloud or distribution
Must include all compute-specific code and pass all compute-specific capabilities tests
Qualifying products may use the OpenStack Powered logo and use the phrase "OpenStack Powered Compute" in their product name
Compute cloud or appliance
Must include all object storage-specific code and pass all object storage-specific capabilities tests
Qualifying products may use the OpenStack Powered logo and use the phrase "OpenStack Powered Storage" in their product name
Object storage cloud or distribution
OpenStack-based products containing a recent version of the software may qualify for one of the three OpenStack Powered marketing programs, which consist of a logo and unique product naming rights.
Products must comply with one of the two most recent versions of requirements approved by the OpenStack Foundation Board of Directors. These versions are numbered based on the date when they were approved, such as “2015.05” for the version approved in May, 2015.
The two most recent versions approved by the board are 2015.04 and 2015.05. The list of required capabilities (with must-pass tests) and designated code sections are published on git.openstack.org and summarized below. Once a company verifies their products include the appropriate designated sections and submit API test results, they will be asked to sign the license agreements.
You’ll note that the “Platform” program technical requirements are essentially the combination of “Compute” and “Object Storage” requirements.
Version 2015.04 and 2015.05
|Object Storage Capabilities|
|auth-token||Advisory 2015.04, Required 2015.05||Advisory 2015.04, Required 2015.05||Advisory|
|Future Required Capabilities|
Nova is by default designated except scheduler, filter, drivers, API extensions and networking.
Glance designated sections are the API implementation code and domain model.
Swift designated sections are proxy server, object server, container server, account server and select middleware.
Keystone designated sections are assignment API, auth (v2.0) API, auth (v3) API, trust API, and resource API.
To apply for one of the OpenStack Powered marketing programs today, please review the requirements and submit via the online form.
OpenStack interoperability tests are part of the Tempest project suite of tests. To run the tests, you will need to install Tempest manually or with some wrapper tool such as the RefStack Client. After configuring for your particular product, Tempest can be run with a precompiled inventory of tests available from the Defcore repository. You can use this file to configure Tempest test runner to execute only the required tests. We prefer that you run the RefStack Client to produce a JSON file of all tests that have passed. You can email the full json test results file to [email protected] or upload the results to the RefStack server and mail the returned test identification link.
For more detailed instructions to run the tests, please consult this document. If you need help getting started, contact Chris Hoge, the Foundation's Interop Engineer, by emailing [email protected]. The Foundation is looking for feedback from companies who are running tests in order to improve the testing process and shape policy in the future.