Hi,

I have created a doc[1] on
1. What configurations should be allowed to be changed by component
developers (may have default values or not)
2. What should have default values which cannot be overridden without
redeclaring the plugin inside the bundle

Please share your thoughts on this.

And this[2] is the documentation I created on the usage of this approach.

I have built C5, carbon-transport, product-mss, product-gw with this.

[1]
https://docs.google.com/a/wso2.com/spreadsheets/d/1EegtaHbrSVQ1eJf75z9p03PiEkFguCytAYmyQCDSsjI/edit?usp=sharing
[2]
https://docs.google.com/a/wso2.com/document/d/1468M7L2vHcJQ-4oChb_5wBpRECNbUX3Om31MFzpZ_nc/edit?usp=sharing


Thank you.

On Wed, Nov 11, 2015 at 2:50 PM, Manuri Amaya Perera <manu...@wso2.com>
wrote:

> + architecture@
>
> On Wed, Nov 11, 2015 at 2:46 PM, Manuri Amaya Perera <manu...@wso2.com>
> wrote:
>
>> Hi,
>>
>> Currently for each carbon component's pom file we need to include the
>> maven bundle plugin. Some of the bundle plugin configuration values such as
>> group id, artifact id and version are repetitively used in each of these
>> components(eg: [1])
>>
>> We can avoid this repetition by including the bundle plugin inside
>> carbon-parent pom[2] instead of having it inside each component.
>> Here we have to include bundle plugin inside build/plugins[3] section of
>> carbon-parent pom and then the plugin configuration will be inherited by
>> child modules and any configuration that needs to be overridden could be
>> mentioned as properties inside child poms.
>> This will make maintenance easier and reduce code.
>>
>> There is also a disadvantage with parameterizing the bundle plugin. That
>> is, some headers such as Bundle-NativeCode must have a value if that
>> element is put in the plugin configuration[4], otherwise the build
>> fails.Therefore we cannot have this inside carbon-parent pom's bundle
>> plugin configuration as child modules may not have a value for it.
>> This is the only header we've found out which causes this problem. And I
>> could not find any usage of this header in a WSO2 repository. Therefore if
>> this header is not going to be used we can safely remove it from
>> carbon-parent pom and proceed with parameterizing the bundle plugin.
>>
>> Your ideas on moving the bundle-plugin configuration to carbon-parent pom
>> and parameterization will be highly appreciated.
>>
>>
>> ​[1] https://github.com/wso2/carbon-kernel/blob/5.0.x/core/pom.xml​
>> ​[2] ​https://github.com/wso2/carbon-parent/blob/master/pom.xml
>> [3] https://maven.apache.org/pom.html#Plugins
>> [4] http://bnd.bndtools.org/heads/bundle_nativecode.html
>>
>>
>> ​Thank you.​
>>
>> --
>>
>> *Manuri Amaya Perera*
>>
>> *Software Engineer*
>>
>> *WSO2 Inc.*
>>
>> *Blog: http://manuriamayaperera.blogspot.com
>> <http://manuriamayaperera.blogspot.com>*
>>
>
>
>
> --
>
> *Manuri Amaya Perera*
>
> *Software Engineer*
>
> *WSO2 Inc.*
>
> *Blog: http://manuriamayaperera.blogspot.com
> <http://manuriamayaperera.blogspot.com>*
>



-- 

*Manuri Amaya Perera*

*Software Engineer*

*WSO2 Inc.*

*Blog: http://manuriamayaperera.blogspot.com
<http://manuriamayaperera.blogspot.com>*
_______________________________________________
Dev mailing list
Dev@wso2.org
http://wso2.org/cgi-bin/mailman/listinfo/dev

Reply via email to