From: Nick Boldt <nboldt(a)redhat.com>
Subject: Proposed New Github Component Chunks for JBoss Tools 4.0
Date: 23 Aug 2012 21:00:37 GMT+02:00
To: Max Rydahl Andersen <max.andersen(a)redhat.com>, Denis Golovin
<dgolovin(a)exadel.com>, Michael Istria <mistria(a)redhat.com>,
As part of the planned migration to git [0] it's been suggested that we combine some
of the existing components into larger groups [1] so that it's more manageable in
terms of checking out sources and tagging/branching [2].
Because 25 is a large number, and 1 is a small number, and we need some happy
compromise.
Here's my proposal for how to divide the JBT 4.0 sources into 7 github repos
(chunks), comprising 4 tiers of dependency. This is akin to the +0, +1, +2, +3 labels
assigned to projects within the annual Eclipse release trains [3], used to define delivery
times based on dependencies between projects.
== TIER 0: no upstream
JBoss.org chunks ==
Base = tests + common + usage
== TIER 1: 1 upstream chunk, Base ==
AppServer = openshift + as + archives + jmx
-> depends on Base
Hibernate/Birt/Freemarker = hibernate + birt + freemarker
-> depends on Base
Visual Editing = vpe + xulrunner + gwt + struts + jsf + jst + cdi
-> depends on Base
Web Services = WS + Forge
-> Depends on Base
== TIER 2: 4 upstream chunks ==
Seam/Runtime = Seam + Runtime
-> depends on Hib + Vis + AppServer + Base
== TIER 3: 5 upstream chunks ==
Central/Examples/Maven/Portlet = central + examples + maven + portlet
-> depends on Seam/Runtime + Hib + Vis + AppServer + Base
I'm not thrilled with the names of the chunks, as something like
"Central/Examples/Maven/Portlet" doesn't exactly roll off the tongue. If you
have better names for the chunks, please suggest them.
But regardless of name, I think the above separation of concerns, and the implied build
sequence workflow makes a lot of sense.
[0]
http://tinyurl.com/git-migration-plan
[1]
http://ether-man.rhcloud.com/p/build.next
[2]
http://ether-man.rhcloud.com/p/jbosstools-2012-08-23
[3]
http://wiki.eclipse.org/Juno/Simultaneous_Release_Plan#Milestones_and_Rel... -
"These delivery times are based on the dependencies between projects. They are
labeled +0, +1, +2, and +3, with +0 coming first (the Platform) and +3 coming last (EPP).
Projects themselves decide if they are +0, +1, +2, or +3."
If you have comments or suggestions regarding this migration plan, please post them here
or in
https://issues.jboss.org/browse/JBIDE-12475.
Thanks!
--
Nick Boldt :: JBoss by Red Hat
Productization Lead :: JBoss Tools & Dev Studio
http://nick.divbyzero.com