[p4] Implementing mainline model with build promotion

Stephen Nesbitt snesbitt at cobaltgroup.com
Tue Jun 26 10:32:04 PDT 2007


All:

I'm hoping the collective wisdom of the group can provide me with some 
insight on how to implement build promotion within the environment of a 
mainline branching model.

Here's the basic branching scenario:

[main]-----------------------------------------------
             |                              |
             [july release]-----------------|------
                                            [
                                            |[august rel]-----------


[main] is owned by cm and serves as the primary parent and "latest best". 
The [july release branch] supports continuous integration with frequent 
dev builds and less frequent - twice a day - formal builds delivered to 
QA. 

My question is on what branch should the QA build occur? on the [july 
release branch] or on [main]? Or - to say it another way - does the 
promotion from the july effort to main occur before or after the build.

My gut tells me to perform the QA build on the [july release]. Once QA has 
accepted that build the promotion occurs (using the changelist on which 
the QA build was based). This is a copy merge and - theoretically - main 
should be identical to the july effort at the time of the QA build 
changelist.

That's the catch I am concerned about. The actual QA build - which might 
get promoted to release was executed against, say, changelist #1 on the 
july release branch. For reproducibility purposes, however, the release 
is marked as, say changelist #2, on the main branch. I am asserting that 
changelist #2 on main is identical to changelist #1 on the july release 
development branch.

So, does anyone do something equivalent? Am I completely out to lunch here 
and just asking for trouble? Any thoughts, hints, opinions advice? How 
are others handling the case of development on a branch with builds which 
are promoted to various statuses?

Thx!
-- 


Stephen Nesbitt
CM Architect/Lead
The Cobalt Group
snesbitt at cobaltgroup.com
x8271


More information about the perforce-user mailing list