Jump to: navigation, search

Cinder/tested-3rdParty-drivers

< Cinder
Revision as of 05:03, 18 December 2014 by Thingee (talk | contribs) (add devstack config information and more general clean up)

Driver Testing

Testing for new drivers in Kilo release

We've implemented a simple wrapper around the tempest volume.api tests at https://github.com/openstack-dev/devstack/tree/master/driver_certs . The process currently is for each vendor to run this test against their backend driver in their own environment. The wrapper is very simple, it just does a fresh clone of the cinder and tempest repos and restarts services, then runs the tempest volume.api tagged tests in the tempest suites and collects the output to a temporary log file. Once you have a log file, create a cinder launchpad bug and attach the log to it. Post a comment to your driver's gerrit review with a link to the bug.

Testing for drivers merged before Kilo release

Deadline for drivers merged before Kilo to have a CI is end of k-2 (5th of Feb 2015) - Discussion regarding this here

To be designated as compatible, a third-party plugin and/or driver code must implement external third party testing. The testing should be Tempest executed against a Devstack build with the proposed code changes. The environment managed by the vendor should be configured to incorporate the plugin and/or driver solution. The OpenStack Infrastructure team has provided details on how to integrate 3rd party testing at:

http://ci.openstack.org/third_party.html

and Tempest can be found at:

https://github.com/openstack/tempest

Questions

  • Join Third Party Meeting
  • Reach out to IRC nicks DuncanT or asselin on Freenode #openstack-cinder.

Configuring Devstack For Your Driver CI Testing

[[local|localrc]]
ADMIN_PASSWORD=password
MYSQL_PASSWORD=password
RABBIT_PASSWORD=password
SERVICE_PASSWORD=password
SERVICE_TOKEN=password

# These options define  expected driver capabilities
TEMPEST_VOLUME_DRIVER=foo
TEMPEST_VOLUME_VENDOR="Foo Inc"
TEMPEST_STORAGE_PROTOCOL=iSCSI

# These options allow you to specify a branch other than "master" be used
CINDER_REPO=https://review.openstack.org/openstack/cinder<br />
CINDER_BRANCH=refs/changes/83/72183/4

# Disable security groups entirely
Q_USE_SECGROUP=False
LIBVIRT_FIREWALL_DRIVER=nova.virt.firewall.NoopFirewallDriver
CINDER_SECURE_DELETE=False

[[post-config|$CINDER_CONF]]
volume_driver=cinder.volume.drivers.foo.FooDriver

FAQ

When thirdparty CI voting will be required

Once third party CI's become more common and stable, we'll revisit the subject. For now you can review the discussion on the decision.