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

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

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

Nicolas Malin (Jira)

    [ https://issues.apache.org/jira/browse/OFBIZ-7972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15445394#comment-15445394 ]

Taher Alkhateeb commented on OFBIZ-7972:
----------------------------------------

I made a comment on the ML in a new design utilizing maven in [this thread|http://markmail.org/message/j64vdoh2sbisuunh]

Also, [this github repo|https://github.com/bintray/bintray-examples] contains useful resources on publishing to bintray (jcenter)

> 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
>              Labels: plugin, proof-of-concept, system
>
> 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)