From 9e6f974110544ed4e4494f3a95fc68b556d72192 Mon Sep 17 00:00:00 2001 From: Kiall Mac Innes Date: Mon, 23 May 2016 16:20:55 +0100 Subject: [PATCH] Document tempest APIs which plugins may use Plugin authors can have a hard time determining which APIs are acceptable to use, and which are not. We should provide an explicit list on the plugin interface doc page. Change-Id: I475a8ccc568077a4824fda0ddc20606a0ffabbc7 --- doc/source/plugin.rst | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/doc/source/plugin.rst b/doc/source/plugin.rst index ad2674161c..9640469108 100644 --- a/doc/source/plugin.rst +++ b/doc/source/plugin.rst @@ -15,10 +15,22 @@ effort on top of creating a test suite using tempest.lib. One thing to note with doing this is that the interfaces exposed by tempest are not considered stable (with the exception of configuration variables which ever effort goes into ensuring backwards compatibility). You should not need to import anything from -tempest itself except where explicitly noted. If there is an interface from -tempest that you need to rely on in your plugin it likely needs to be migrated -to tempest.lib. In that situation, file a bug, push a migration patch, etc. to -expedite providing the interface in a reliable manner. +tempest itself except where explicitly noted. + +Stable Tempest APIs plugins may use +----------------------------------- + +As noted above, several tempest APIs are acceptable to use from plugins, while +others are not. A list of stable APIs available to plugins is provided below: + +* tempest.lib.* +* tempest.config +* tempest.test_discover.plugins + +If there is an interface from tempest that you need to rely on in your plugin +which is not listed above, it likely needs to be migrated to tempest.lib. In +that situation, file a bug, push a migration patch, etc. to expedite providing +the interface in a reliable manner. Plugin Cookiecutter -------------------