Hi, Jaggery, UES[2] and ES[3] almost developed and maintain in git, for we only had git external for SVN. We have missed UES and ES features and component shared google spread sheet caled 'Moving to Git'. pls added those, It will helpful who are work on $subject
Jaggery will be consider as project and jaggery feature can be found in jaggery product[1]. [1] https://github.com/wso2/jaggery [2] https://github.com/wso2/enterprise-store [3] https://github.com/wso2/ues [4] https://github.com/wso2/jaggery-extensions On Wed, Feb 12, 2014 at 9:38 AM, Sagara Gunathunga <[email protected]> wrote: > > > > On Wed, Feb 12, 2014 at 9:20 AM, Isuru Udana <[email protected]> wrote: > >> Hi Sagara, >> >> >> On Wed, Feb 12, 2014 at 12:07 AM, Sagara Gunathunga <[email protected]>wrote: >> >>> >>> Please find POM restructuring guidelines in addition to things we >>> discussed during today's meeting. >>> >>> 1. Top level POM file is the 'parent POM' for your project and there is >>> no real requirement to have separate Maven module to host parent POM file. >>> >>> 2. Eliminate POM files available on 'component' , 'service-stub' and >>> 'features' directories as there is no gain from them instead directly call >>> real Maven modules from parent pom file ( REF - [1] ) >>> >>> e.g - >>> >>> >>> >>> >>> >>> <modules> >>> <module>service-stubs/service-mgt</module> >>> <module>service-stubs/webapp-mgt</module> >>> >>> <module>components/service-mgt</module> >>> <module>components/webapp-mgt</module> >>> >>> >>> >>> >>> <module>features/as-runtimes</module> >>> >>> <module>features/service-mgt</module> >>> <module>features/webapp-mgt</module> >>> >>> >>> >>> >>> </modules> >>> >>> >>> >>> [ You can keep same directory structure to enhance human readability ] >>> >>> >>> 3. You must have a <dependencyManagement> section on parent POM and >>> should define all your project dependencies along with versions. ( REF - >>> [1] ) >>> >>> >>> 5. You CAN'T have <dependencyManagement> sections on any other POM >>> file other than parent POM. >>> >>> 6. In each submodule make sure you have Maven dependencies WITHOUT >>> versions ( REF - [2] ) >>> >>> e.g - <dependency> >>> >>> <groupId>org.apache.axis2.wso2</groupId> >>> >>> >>> >>> >>> <artifactId>axis2</artifactId> >>> >>> </dependency> >>> >>> >>> When you introduce a new Maven dependency define it's version under >>> <dependencyManagement> >>> section of parent POM file. >>> >>> 7. Make sure you have defined following repositories and plugin >>> repositories on parent POM file. These will be used to drag SNAPSHOT >>> versions of other carbon projects which used as dependencies of your >>> project. >>> >>> <repositories> >>> >>> >>> >>> >>> >>> <repository> >>> <id>wso2-nexus</id> >>> <name>WSO2 internal Repository</name> >>> >>> <url>http://maven.wso2.org/nexus/content/groups/wso2-public/</url> >>> >>> >>> >>> >>> <releases> >>> <enabled>true</enabled> >>> >>> >>> >>> >>> <updatePolicy>daily</updatePolicy> >>> <checksumPolicy>ignore</checksumPolicy> >>> </releases> >>> </repository> >>> >>> >>> >>> >>> >>> <repository> >>> <id>wso2.releases</id> >>> <name>WSO2 internal Repository</name> >>> >>> <url>http://maven.wso2.org/nexus/content/repositories/releases/</url> >>> >>> >>> >>> >>> <releases> >>> <enabled>true</enabled> >>> >>> >>> >>> >>> <updatePolicy>daily</updatePolicy> >>> <checksumPolicy>ignore</checksumPolicy> >>> </releases> >>> </repository> >>> >>> >>> >>> >>> >>> <repository> >>> <id>wso2.snapshots</id> >>> <name>Apache Snapshot Repository</name> >>> >>> >>> >>> >>> <url>http://maven.wso2.org/nexus/content/repositories/snapshots/</url> >>> >>> >>> >>> >>> <snapshots> >>> <enabled>true</enabled> >>> >>> >>> >>> >>> <updatePolicy>daily</updatePolicy> >>> </snapshots> >>> <releases> >>> >>> >>> >>> >>> <enabled>false</enabled> >>> </releases> >>> </repository> >>> >>> </repositories> >>> >>> >>> >>> >>> >>> <pluginRepositories> >>> >>> <pluginRepository> >>> <id>wso2.releases</id> >>> >>> >>> >>> >>> <name>WSO2 internal Repository</name> >>> >>> >>> <url>http://maven.wso2.org/nexus/content/repositories/releases/</url> >>> >>> >>> >>> >>> <releases> >>> <enabled>true</enabled> >>> >>> >>> >>> >>> <updatePolicy>daily</updatePolicy> >>> >>> <checksumPolicy>ignore</checksumPolicy> >>> </releases> >>> >>> >>> >>> >>> </pluginRepository> >>> >>> >>> <pluginRepository> >>> <id>wso2.snapshots</id> >>> <name>Apache Snapshot Repository</name> >>> >>> >>> <url>http://maven.wso2.org/nexus/content/repositories/snapshots/</url> >>> >>> >>> >>> >>> <snapshots> >>> <enabled>true</enabled> >>> >>> >>> >>> >>> <updatePolicy>daily</updatePolicy> >>> >>> </snapshots> >>> <releases> >>> >>> <enabled>false</enabled> >>> </releases> >>> >>> >>> >>> >>> </pluginRepository> >>> >>> <pluginRepository> >>> <id>wso2-nexus</id> >>> >>> >>> >>> >>> <name>WSO2 internal Repository</name> >>> >>> >>> <url>http://maven.wso2.org/nexus/content/groups/wso2-public/</url> >>> >>> >>> >>> >>> <releases> >>> <enabled>true</enabled> >>> >>> >>> >>> >>> <updatePolicy>daily</updatePolicy> >>> >>> <checksumPolicy>ignore</checksumPolicy> >>> </releases> >>> >>> >>> >>> >>> </pluginRepository> >>> >>> </pluginRepositories> >>> >>> >>> >>> >>> 8. Make sure you have defined distribution management section as >>> follows on your parent POM file. Jenkins will use these details to deploy >>> your project's SNAPSHOT artefacts into Nexus so that others can use your >>> components without building locally. >>> >>> <distributionManagement> >>> >>> >>> >>> >>> <repository> >>> <id>wso2.releases</id> >>> >>> >>> >>> >>> <name>WSO2 internal Repository</name> >>> >>> <url>http://maven.wso2.org/nexus/content/repositories/releases/</url> >>> >>> >>> >>> >>> </repository> >>> >>> <snapshotRepository> >>> <id>wso2.snapshots</id> >>> >>> >>> >>> >>> <name>Apache Snapshot Repository</name> >>> >>> Why this is called *Apache* Snapshot Repository ? I guess name should >> be changed. >> > > Yes, it should be 'WSO2' not 'Apache'. Geeth, please note and modify on > [1]. > > Thanks ! > >> >> Thanks. >> >>> >>> <url>http://maven.wso2.org/nexus/content/repositories/snapshots/</url> >>> >>> >>> >>> >>> </snapshotRepository> >>> </distributionManagement> >>> >>> >>> >>> >>> >>> >>> >>> Please use carbon-deployment[3] as a reference project. Eranda/Geeth >>> please add if I missed anything. >>> >>> >>> [1] - https://github.com/wso2/carbon-deployment/blob/master/pom.xml >>> >>> [2] - >>> https://github.com/wso2/carbon-deployment/blob/master/components/webapp-mgt/org.wso2.carbon.webapp.mgt.ui/pom.xml >>> >>> [3] - https://github.com/wso2/carbon-deployment/ >>> >>> >>> >>> Thanks ! >>> -- >>> Sagara Gunathunga >>> >>> Senior Technical Lead; WSO2, Inc.; http://wso2.com >>> V.P Apache Web Services; http://ws.apache.org/ >>> Linkedin; http://www.linkedin.com/in/ssagara >>> Blog ; http://ssagara.blogspot.com >>> >>> >>> _______________________________________________ >>> Dev mailing list >>> [email protected] >>> http://wso2.org/cgi-bin/mailman/listinfo/dev >>> >>> >> >> >> -- >> *Isuru Udana* >> Senior >> * Software Engineer* >> WSO2 Inc.; http://wso2.com >> email: [email protected] cell: +94 77 3791887 >> blog: http://mytecheye.blogspot.com/ >> twitter: http://twitter.com/isudana >> > > > > -- > Sagara Gunathunga > > Senior Technical Lead; WSO2, Inc.; http://wso2.com > V.P Apache Web Services; http://ws.apache.org/ > Linkedin; http://www.linkedin.com/in/ssagara > Blog ; http://ssagara.blogspot.com > > > _______________________________________________ > Dev mailing list > [email protected] > http://wso2.org/cgi-bin/mailman/listinfo/dev > > -- *Madhuka* Udantha Senior Software Engineer Development Technologies WSO2 Inc. : http://wso2.com *Mobile*: +94774066336 *Blog*: http://madhukaudantha.blogspot.com/
_______________________________________________ Dev mailing list [email protected] http://wso2.org/cgi-bin/mailman/listinfo/dev
