Files
fuel-docs/pages/plugin-dev/plugin-cert.rst
Dmitry Borodaenko 5c3ab273fe Fix file references for Plugin Dev Guide PDF
Change-Id: Ib17fa9628b48423ecb818ecac54413d7148bb17d
2014-12-30 18:02:08 -08:00

6.2 KiB

Fuel plug-ins certification

Certified and Non-Certified plug-ins

Plug-ins come into two categories: Certified and Non-Certified.

For information on Certified and Non-Certified plug-ins certification requirements, see Plug-in certification requirements<plug-in-cert>.

For instructions on creating your own plug-in, see 020-fuel-plugin-dev. For instructions on installing a plug-in, see 040-install-plugin. For instructions on building your plug-in, see How To Build your Plug-in<create-build-plugin>.

Plug-ins storage

Plug-ins are kept in a special file storage, so that you can download them from https://software.mirantis.com/fuel-plugins and install.

Plug-ins development requirements

Plug-ins must meet a set of development requirements. Once a provided plug-in does not satisfy any of them, Mirantis cannot accept it and publish into the Catalog.

When you plan to develop a plug-in for Fuel, take the following requirements into consideration:

Plug-ins certification requirements

Certified and Non-Certified plug-ins have a set of requirements.

Non-Certified

Non-Certified plug-in should satisfy the following requirements:

  • Built plug-in or download link is provided
  • Plug-in purpose is specified: for example, Compute, Storage, Network, Operations
  • Basic description of plug-in functionality (specification) is provided
  • Plug-in developer contact information (company, support contacts) is provided

Non-Certified plug-in must also have the following set of documentation:

  • Plug-in Installation Guide in .pdf format
  • Plug-in User Guide in .pdf format (for templates, see plugin-doc-template)
  • Test Plan and Test Report in .pdf format (for templates, see test-plan-report)

Certified

Certified plug-ins are those that passed Non-Certified<non-certified> phase.

The main difference between Non-Certified and Certified plug-ins is that the latter are tested by the Fuel QA team more thoroughly to verify that plug-in can be enabled in Fuel without any harm.

If a Non-Certified plug-in susccessfully passes all tests, it is moved to the appropriate directory of the Plug-ins storage<plugins-storage> and signed by Mirantis GPG key.

How to upload your plug-in into Mirantis OpenStack Catalog

It is not important where to host the plug-in code. Nevertheless, to enable CI tests it is recommended to publish plug-ins into separate repositories of the Stackforge project.

Currently, plug-ins created by Mirantis developers are kept in the following repos:

Note that the plug-ins will also be moved to separate repos in Stackforge.

A contributor should only build the plug-in as described in instructions on building a plug-in<create-build-plugin> and send it to fuel-plugin@mirantis.com.

The email should contain the following information:

  • Type of the plug-in
  • Set of required documents, described in Non-Certified<non-certified> and Certified<certified> sections.

After receiving the email, Partner Integration team starts Plug-in acceptance workflow<plug-in-accept-workflow>.

Plug-in acceptance workflow

Non-Certified plug-in acceptance workflow

The workflow for Non-Certified plug-ins consists of the following steps:

  1. Plug-in that satisfies Non-Certified<non-certified> plug-ins certification requirements, goes through a set of tests. Fuel QA team confirms it.
  2. Fuel Documentation team verifies that all necessary documents are provided according to Documentation template<plugin-doc-template>.
  3. After Fuel QA and Documentation teams provide their confirmation, responsible person from Partner Integration team adds or replaces the plug-in with its User Guide into Non-Certified plug-ins directory of the Plug-ins storage<plugins-storage>.

Certified plug-ins acceptance workflow

The workflow for plug-ins certification consists of the following steps:

  1. A plug-in should pass Non-Certified plug-in acceptance workflow<non-certified-plug-in-workflow>.
  2. Fuel Core, PI and MOS teams developers review the code, try to check architecture, security and performance issues of the provided plug-in.
  3. Fuel QA team tests plug-in according to the extended test cases. Additional test cases should be provided in the contributor's testing instruction.
  4. After Fuel QA, Core, MOS and Documentation teams confirm that plug-in can be moved to Verified, responsible person from Partner Integration team pushes the plug-in with its documentation into the Certified directory of the Plug-ins storage<plugins-storage>.