Hi all, After having lots of trouble of handling the code in svn we finally will be moving the platform code (except products code) to git. As I, Azeez and Senaka discussed offline, here is the new strategy of managing platform code in git.
In this model we have 13 git projects as listed below where each project will have related components, features and service stubs in them. - registry - governance - identity - mediation - analytics - data - apis - business-process - business-messaging - rules - deployment - qos (QoS) - utils These projects will be build in the builder machine and components will be hosted in nexus repo (May be once a day) so that projects can be clone from git repo and be able to build independently. Each product teams will own respective project (G-Reg team owns registry and governance projects) and should be maintain the code quality of that project. Additionally we identified some specific components which may not reuse at platform level as listed below, - appfactory - doc-reg-processor - stratos - cg - data-bridge - jaxws These components + features will be moving to the product level so that they will only build when the related product builds. Also we identified that we are loosing the whole purpose of having reusable components, features in our code base so we suggest people to follow some rules when creating a new components. 1. Check whether it's a platform wide re-usable component. (e.g. Registry components are used in most of the products in Carbon) If it's not meaningful out of the product add it to the product level. 2. Choose the most suitable project which the component should be added. If there is no matching component you can create new component iff there's no solution. 3. Add the component to most suitable feature in the same project. 4. If this feature need some other components (cross-project feature) from other project move that feature to the project level. 5. We may have to keep some reusable cross-project features in a separate place, TBD in future. Dependencies will be graduated and will make available in the nexus as SNAPSHOT versions and Products will be hosted as in the same svn location as now and will be able to build a SNAPSHOT version at any given time and will be decide whether we move to git later. @Azeez, Senaka, Please add if anything I have missed. @All Please let know if you have any idea or a comment on this. thanks Eranda -- *Eranda Sooriyabandara*Senior Software Engineer; Integration Technologies Team; WSO2 Inc.; http://wso2.com Lean . Enterprise . Middleware E-mail: eranda AT wso2.com Mobile: +94 716 472 816 Linked-In: http://www.linkedin.com/in/erandasooriyabandara Blog: http://emsooriyabandara.blogspot.com/
_______________________________________________ Architecture mailing list [email protected] https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
