~~NOTOC~~
The OpenNebula Ecosystem is formed by external tools and extensions that complement the functionality provided by the OpenNebula Cloud Management Platform. In addition, the ecosystems built around the cloud interfaces implemented by OpenNebula, Amazon AWS and OGC OCCI, can also be leveraged.
====== Ecosystem Coordination ======
The Ecosystem Catalog is coordinated through the OpenNebula [[:community:mailinglists|developers mailing lists]].
* [[#Types of Components|Types of Components]]
* [[#Requirements of New Components|Requirements of New Components]]
* [[#How to Submit a New Component|How to Submit a New Component]]
====== Ecosystem Catalog ======
//The OpenNebula project does not endorse or recommend any products listed, and cannot vouch for the quality or reliability of any of them.
//
---- datatable ----
cols : %title%, brief description, type, opennebula version, author, organization_img100
headers : Component, Description, Type, OpenNebula Version, Author, Organization
sort : %pageid%
filter : %pageid% ~ software:ecosystem:*
----
====== Types of Components ======
The OpenNebula Ecosystem is formed by:
* **Tools** providing added value on top of OpenNebula clouds by leveraging its APIs, from service or VM image managers to user-friendly dashboards
* **Extensions** adding new functionality to OpenNebula cloud instances, from support for enforcement of energy policies or advance reservation of capacity
====== Requirements of New Components ======
Once you've developed a new tool for OpenNebula, you'll want to make sure people can find out about and download it. Note that we do not perform filtering on the basis of technical issues. This is because the OpenNebula Ecosystem respects and suggests variety of technical approaches. It does not fear innovation or even internal confrontation between projects which overlap in functionality. We only filter components on the basis of the likeliness of them becoming successful tools.
The **basic requirements** are:
* A **working codebase** tested in the version you claim to support
* An **active development and support**
* A **potential user community**
* A **web site** with information about the component
* An **open-source license**
Moreover we applaud the following **design and development principles** in the components:
* **Collaborative open-source** software development
* **Commercial-friendly** license
* High **quality** software
* Implementation of **standards**
* **Security** as a mandatory feature
====== How to Submit a New Component ======
1. Send to the [[:community:mailinglists|developers mailing list]] the following information
* Name of the Component
* URL of the Component
* Brief Description (30 words max)
* Type (tool/extension)
* License (proprietary/OSS)
* OpenNebula Version
* Author (person or organization developing the code)
* E-mail
2. The Community Manager will evaluate your proposal and respond within one week time
3. If approved, the [[webmaster@opennebula.org|webmaster]] will create a page in the ecosystem namespace, and you will receive an account to update its contents. You will also receive an account for our [[http://blog.opennebula.org|blog]].
4. You should update your page with all needed documentation on how to install and use the component and give users a pretty good idea what it does before installing it. Adding screenshots might be a good idea as well. At the top of the component page a few metadata fields will be filled. Uploads are not allowed, so you need to host your plugin files somewhere else. We recommend to manage your source with a Revision Control System using any public repository host.
5. Notify through the [[:community:mailinglists|developers mailing list]] when the component page is ready for review.
6. Prepare a [[http://blog.opennebula.org|blog post]] to announce your participation in the ecosystem and to give visibility of the new component.
7. The [[community-manager@opennebula.org|Community Manager]] will publish your blog post and announce the new component in the developers mailing list and in other community instruments.