Hi Lasantha, I will further investigate on this. Let's create a JIRA for this if anything can be done from carbon-feature-plugin end.
Thanks, Dinusha On Fri, Oct 9, 2015 at 1:41 AM, Lasantha Fernando <[email protected]> wrote: > Hi Dinusha, > > Thanks for looking into the issue mentioned. As I mentioned offline during > the demo, there seems to be an issue of cleaning up resources copied by the > features and also the p2-profile generation fails for multiple profiles if > a feature removes any resources using touch points. > > Please let me know if this is something that can be addressed via the > carbon-feature-plugin itself. Will raise a JIRA for it if needed if it can > be handled from the plugin. > > Thanks, > Lasantha > > On 8 October 2015 at 11:59, Dinusha Boteju <[email protected]> wrote: > >> Hi Lasantha, >> >> Thank you very much for the given feedback. The plugin wraps the equinox >> p2 director application internally to install features. However, I am not >> sure what you have mentioned here is handled by the plugin. So lets have a >> demo and check that out. >> >> On a separate note there are few limitations in the plugin at the moment. >> We are in the process of rectifying those. >> >> Thanks, >> Dinusha >> >> On Thu, Oct 8, 2015 at 1:39 AM, Lasantha Fernando <[email protected]> >> wrote: >> >>> Hi Dinusha, >>> >>> The new configuration seems more intuitive and easier to use. +1 for the >>> proposed changes. >>> >>> A minor issue that I have encountered when using the previous plugin is >>> that resources that are copied via the p2.inf for a feature get left in the >>> repository/components/features directory of the pack. If considerably large >>> files are copied by the feature, we have to manually add instructions in >>> dist.xml of the product build to clean up these files, as in [1,2]. >>> >>> I guess one option to clean up these files would be to make use of the >>> eclipse touch points to clean up these resources after installation. >>> However, this approach fails if the product uses multiple profiles. i.e. >>> the feature gets installed in one profile generation and the resource files >>> get cleaned up. Then when it comes to installing features for the second >>> profile, the resource files are not available and will throw an error. >>> >>> Can this issue also be addressed with the changes that we are going to >>> incorporate to the p2-plugin? IMHO, this will make for a much cleaner >>> installation process for the features. Also, currently, if the features are >>> installed via management console, there is no way to perform a cleanup >>> operation similar to [1,2]. >>> >>> [1] >>> https://github.com/wso2/product-as/blob/master/modules/distribution/src/assembly/dist.xml#L35 >>> [2] >>> https://github.com/wso2/product-cep/blob/master/modules/distribution/src/assembly/dist.xml >>> >>> Thanks, >>> Lasantha >>> >>> On 7 October 2015 at 15:26, Dinusha Boteju <[email protected]> wrote: >>> >>>> >>>> Hi all, >>>> >>>> We are hoping to introduce a revamp version of carbon-feature-plugin >>>> 2.0.0 (previously known as carbon-p2-plugin) along with Carbon 4.5.0 and >>>> Carbon 5. Following were taken into consideration when revamping the >>>> carbon-feature-plugin. >>>> >>>> - Optimizing the existing plugin (architecture and technology >>>> migration) >>>> - Introduce a new packaging type for carbon features >>>> - Make the configuration consistent throughout the set of goals >>>> exposed through the plugin >>>> - Introduce unininstall feature. >>>> >>>> The new plugin is composed of 6 maven goals; >>>> >>>> 1. generate (previously known as p2-feature-gen) >>>> 2. install (previously known as p2-profile-gen) >>>> 3. uninstall >>>> 4. generate-repo (previously known as p2-repo-gen) >>>> 5. generate-profile (previously known as materialize-product) >>>> 6. publish-product >>>> >>>> To give a heads up, I am elaborating sample configuration of few maven >>>> goals of carbon-feature-plugin; >>>> >>>> - generate >>>> >>>> This goal generates carbon features, which you can install from feature >>>> manager console and/or add it to a p2 repo. In order to generate a carbon >>>> feature from the generate goal, you need to set the packaging type to >>>> *carbon-feature.* A sample plugin configuration; >>>> <project> >>>> .... >>>> * <packaging>carbon-feature</packaging>* >>>> ... >>>> <build> >>>> <plugins> >>>> <plugin> >>>> <groupId>org.wso2.carbon</groupId> >>>> * <artifactId>carbon-feature-plugin</**artifactId>* >>>> <version>2.0.0</version> >>>> <extensions>true</extensions> >>>> <executions> >>>> <execution> >>>> <goals> >>>> * <goal>generate</goal>* >>>> </goals> >>>> <phase>package</phase> >>>> >>>> *<configuration>* >>>> >>>> * >>>> <propertyFile>file:/home/carbon-kernel/feature.properties</propertyFile>* >>>> >>>> * <adviceFileContent>* >>>> >>>> >>>> >>>> * <advice> >>>> <name>org.eclipse.equinox.p2.type.group</name> >>>> <value>false</false> </advice>* >>>> >>>> * </adviceFileContent>* >>>> >>>> * <bundles>* >>>> * <bundles>* >>>> >>>> * >>>> <symbolicName>org.wso2.carbon.registry.contentsearch.feature</symbolicName>* >>>> >>>> * <version>4.2.0</version>* >>>> >>>> * </bundles>** >>>> </bundles>* >>>> * </configuration>* >>>> </execution> >>>> </executions> >>>> </plugin> >>>> </plugins> >>>> </build> >>>> <project> >>>> >>>> Note: If you are familiar with the previous versions of this goal, you >>>> will notice there are considerable changes in configuring adviceFile, >>>> bundles, etc. >>>> >>>> >>>> - install >>>> >>>> install goal, previously known as p2-profile-gen is used to install a >>>> given set of features to a carbon product. In the new version some of the >>>> redundant configuration parameters have been removed and feeding features >>>> to be installed is made consistent with *generate* and *generate-repo* >>>> maven goal. Sample configuration; >>>> <plugin> >>>> <groupId>org.wso2.carbon</groupId> >>>> * <artifactId>carbon-feature-plugin</**artifactId>* >>>> <version>2.0.0</version> >>>> <executions> >>>> <execution> >>>> <goals> >>>> * <goal>install</goal>* >>>> </goals> >>>> <phase>package</phase> >>>> >>>> *<configuration>* >>>> * <profile>default</* >>>> *profile>* >>>> * <repositoryURL>* >>>> *file:/home/p2-repo</repositoryURL>* >>>> * <destination>* >>>> */home/Apps/wso2carbon-4.4.0/repository/components</destination>* >>>> * <features>* >>>> * <feature>* >>>> * >>>> <id>org.wso2.carbon.student.mgt.feature</id>* >>>> * <version>4.2.0</version>* >>>> * </**feature>* >>>> * </**features>* >>>> * </configuration>* >>>> </execution> >>>> </executions> >>>> </plugin> >>>> >>>> >>>> - uninstall >>>> >>>> Configuring *uninstall* maven goal is pretty similar to install goal >>>> but with fewer parameters than *install* goal. The user need to >>>> specify features to be uninstalled exactly the same way the way you specify >>>> features to be installed in install goal. Since the configuration is so >>>> obvious, I have not introduce an example for this. >>>> >>>> - generate-repo >>>> >>>> Previously known as p2-repo-gen, this goal creates a p2 repository out >>>> of a given set of carbon features. Sample configuration; >>>> <plugin> >>>> <groupId>org.wso2.carbon</groupId> >>>> * <artifactId>carbon-feature-plugin</**artifactId>* >>>> <version>2.0.0</version> >>>> <extensions>true</extensions> >>>> <executions> >>>> <execution> >>>> <goals> >>>> * <goal>generate-repo</goal>* >>>> </goals> >>>> <phase>package</phase> >>>> >>>> *<configuration>* >>>> * >>>> <targetRepository>file:${basedir}/target/p2-repo</* >>>> *targetRepository>* >>>> >>>> * <features>* >>>> >>>> >>>> * <feature> >>>> <id>org.wso2.carbon.student.mgt.feature</name> >>>> <version>4.2.0</* >>>> *version> </feature>* >>>> >>>> * </features> * >>>> * </configuration>* >>>> </execution> >>>> </executions> >>>> </plugin> >>>> >>>> I hope you all will find easy to use the new plugin. I will share a >>>> proper documentation in the near future. >>>> Thanks & Best regards, >>>> -- >>>> >>>> *Dinusha Boteju* >>>> *WSO2, Inc. http://wso2.com <http://wso2.com/> * >>>> *lean.enterprise.middleware.* >>>> >>>> email: [email protected] <[email protected]> >>>> phone:(+94) 776640275 <%28%2B94%29%20777739736> >>>> >>>> _______________________________________________ >>>> Architecture mailing list >>>> [email protected] >>>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture >>>> >>>> >>> >>> >>> -- >>> *Lasantha Fernando* >>> Senior Software Engineer - Data Technologies Team >>> WSO2 Inc. http://wso2.com >>> >>> email: [email protected] >>> mobile: (+94) 71 5247551 >>> >>> _______________________________________________ >>> Architecture mailing list >>> [email protected] >>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture >>> >>> >> >> >> -- >> >> *Dinusha Boteju* >> *Associate Tech Lead,* >> *WSO2, Inc. http://wso2.com <http://wso2.com/> * >> *lean.enterprise.middleware.* >> >> email: [email protected] <[email protected]> >> phone:(+94) 776640275 <%28%2B94%29%20777739736> >> > > > > -- > *Lasantha Fernando* > Senior Software Engineer - Data Technologies Team > WSO2 Inc. http://wso2.com > > email: [email protected] > mobile: (+94) 71 5247551 > -- *Dinusha Boteju* *Associate Tech Lead,* *WSO2, Inc. http://wso2.com <http://wso2.com/> * *lean.enterprise.middleware.* email: [email protected] <[email protected]> phone:(+94) 776640275 <%28%2B94%29%20777739736>
_______________________________________________ Architecture mailing list [email protected] https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
