You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@ofbiz.apache.org by "Taher Alkhateeb (JIRA)" <ji...@apache.org> on 2016/08/25 10:10:21 UTC

[jira] [Created] (OFBIZ-7972) Create a (PoC) plugin system for OFBiz based on Gradle

Taher Alkhateeb created OFBIZ-7972:
--------------------------------------

             Summary: Create a (PoC) plugin system for OFBiz based on Gradle
                 Key: OFBIZ-7972
                 URL: https://issues.apache.org/jira/browse/OFBIZ-7972
             Project: OFBiz
          Issue Type: Improvement
    Affects Versions: Upcoming Branch
            Reporter: Taher Alkhateeb
            Assignee: Taher Alkhateeb


This JIRA houses the attempt to create a plugin system for OFBiz based on gradle. The plugin system should have the following features:

- It is independent of the version control system, file system, operating system and any other environment tools surrounding OFBiz. Instead, it should be fully integrated with OFBiz.
- It should unify the way OFBiz is extended, both for official supported plugins and for third party plugins
- The plugin system takes advantage of the concept of a "component" in OFBiz and utilize it as the building block for plugins
- The plugin system supports the concepts of "Repository" and "Dependency Management". If possible, the plugin system will utilize these concepts directly from Gradle instead of writing them from scratch.

The initial API for the plugin system will be small and expands as needed. The API should include the following gradle tasks:
- createPlugin: creates a new plugin based on templates and place it in the plugins directory
- activatePlugin: Make an inactive plugin active (compile and start with the system).
- deactivatePlugin: Make an active plugin inactive (does not compile nor start with the system)
- installPlugin: either install an existing plugin in the filesystem, or download and install the plugin from a remote repository. Installation happens by running the install script which is designed by the plugin author. By default installPlugin also activates the plugin.
- uninstallPlugin: Uninstall an already installed plugin by running its uninstall script. By default uninstallPlugin also deactivates the plugin, but does not delete it.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)