Software provisioning is considered to be the act of placing an individual software application or a complete software stack onto a target system. In our case, it entails installing/updating/uninstalling features to/from Carbon. The manual method of provisioning Carbon involves dropping bundles and configuration files belonging to a particular feature. This method is not recommended since it can cause errors; finding the exact set of components and configuration files is a difficult task. Components have inter-dependencies with other components; some components depend on specific versions of other components. In order to overcome these issues, Equinox P2 was integrated with Carbon.
Equinox P2 is best known as a framework for provisioning Eclipse-based applications. However, this definition does not fully reflect the capabilities of P2. In addition to Eclipse-based applications, P2 can also be used as a provisioning platform for any OSGi-based application. P2 has been integrated with the WSO2 Carbon platform to enable provisioning capabilities. P2 integration takes WSO2 Carbon to a new level in terms of user-friendliness for building customized SOA products. It enables users to download the WSO2 Carbon framework, or any other SOA product, and extend it by installing various features.
Feature Manager provides a convenient user interface for performing provisioning operations such as installing, uninstalling, and updating features.