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 supports its growth and adds value to the core technology platform. In carrying out that mission, the OpenStack Foundation has created, with the community, requirements to ensure that the various products and services bearing the OpenStack marks achieve a high level of interoperability.
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 logos, as well as evaluate product capabilities in the OpenStack Marketplace by viewing test results and other technical product details.
The OpenStack Foundation offers two different logos for vendors. "OpenStack Powered" is for products that run fully functional instances of the OpenStack software. Details on the technical and testing requirements to qualify for the "Powered" program are here.
"OpenStack Compatible" is for software solutions that interact with "OpenStack Powered" systems, and hardware solutions that are designed to run the OpenStack software. In June 2015, the OpenStack Board approved the development of testing programs for "OpenStack Compatible" products. The OpenStack Foundation is rolling out these testing programs with new requirements for storage drivers starting in November 2015. Network driver testing and application testing requirements are scheduled for 2016. Details on the technical requirements to qualify for the the storage driver "Compatible" logo are here.
There are three different trademark licensing programs which apply to products that contain the OpenStack software, all under unified "OpenStack Powered" logo. 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 guidelines approved by the OpenStack Foundation Board of Directors. These versions are numbered based on the date when they were approved, such as "2015.07"for the version approved in July, 2015.
The two most recent versions approved by the board are "2015.07" and "2016.01". These two guidelines cover four OpenStack releases: Icehouse, Juno, Kilo, and Liberty. 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.
|Object Storage Capabilities|
Nova is by default designated except scheduler, filter, drivers, API extensions and networking.
Keystone designated sections are assignment API, auth (v2.0) API, auth (v3) API, trust API, and resource API.
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.
Designated sections are the API implementation code
By default, designated for all code backing required capabilities except plugable components such as plugins, drivers, and API extensions other than those listed below.
OpenStack interoperability tests are part of the Tempest project suite of tests. To run the tests for your license application, you will need to install Tempest with 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. You will need to run Tempest inside of the RefStack Client and upload the results to the RefStack Server. Once your results are uploaded, you can send a link to the report page to [email protected] .
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.
To apply for one of the OpenStack Powered marketing programs, please review the requirements at the "OpenStack Powered" brand page and submit your logo application test results via the online form.
There are two types of "OpenStack Compatible" products that fall under the unified logo program. The first is software applications that interact with "OpenStack Powered" systems. The second is hardware solutions and drivers that run OpenStack software. Starting November 1 2015, The OpenStack Foundation will require that new "OpenStack Compatible" logos for storage drivers pass community-defined third-party integration tests. The Cinder team has a detailed overview of the requirements for third-party testing.
Proof of successful third-party testing will be required at the time of licensing, and may include links to Gerrit runs and the Tempest logs of those runs. You can begin the application process by filling out the form at the "OpenStack Compatible" brand page.