diff options
| author | Steve Martinelli <stevemar@ca.ibm.com> | 2016-02-25 16:42:45 -0500 |
|---|---|---|
| committer | Steve Martinelli <stevemar@ca.ibm.com> | 2016-03-01 06:06:59 +0000 |
| commit | 3f95e2dd052cf0b24507088da7883e281101b6b9 (patch) | |
| tree | 253ab42d068065ff960af0f52fcde7f38110ac7d /doc/source | |
| parent | 6176e802b3a4125e983eba3805f3f90881622bc4 (diff) | |
| download | python-openstackclient-3f95e2dd052cf0b24507088da7883e281101b6b9.tar.gz | |
add a checklist for creating a new plugin
includes steps for both infra and osc changes.
Change-Id: I35ae2eb29cff87f5c971e64badd2927fc9a59bf4
Diffstat (limited to 'doc/source')
| -rw-r--r-- | doc/source/plugins.rst | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/doc/source/plugins.rst b/doc/source/plugins.rst index 288ee4b1..f5bbd6dd 100644 --- a/doc/source/plugins.rst +++ b/doc/source/plugins.rst @@ -129,3 +129,41 @@ so the version should not contain the leading 'v' character. DEFAULT_API_VERSION + ' (Env: OS_OSCPLUGIN_API_VERSION)') return parser + +Checklist for adding new OpenStack plugins +========================================== + +Creating the initial plugin described above is the first step. There are a few +more steps needed to fully integrate the client with openstackclient. + +Add the command checker to your CI +---------------------------------- + +#. Modify the section of ``zuul/layout.yaml`` related to your repository to + add ``osc-plugin-jobs`` to the list of job templates for your project. + This job checks that to see if any new commands are: duplicated, missing + entry points, or have overlap; across all openstackclient plugins. + +#. Update ``jenkins/scripts/check-osc-plugins.sh`` to include your new + library to be installed from source. This is essential in running the + previously mentioned check job. Simply add + ``install_from_source python-fooclient`` to the block of code where all + other clients are installed. + +Changes to python-openstackclient +--------------------------------- + +#. In ``doc/source/plugins.rst``, update the `Adoption` section to reflect the + status of the project. + +#. Update ``doc/source/commands.rst`` to include objects that are defined by + fooclient's new plugin. + +#. Update ``doc/source/plugin-commands.rst`` to include the entry point defined + in fooclient. We use `sphinxext`_ to automatically document commands that + are used. + +#. Update ``test-requirements.txt`` to include fooclient. This is necessary + to auto-document the commands in the previous step. + +.. _sphinxext: http://docs.openstack.org/developer/stevedore/sphinxext.html |
