It's all about the answers!

Ask a question

How do we implement a code freeze?


Eddie Breeveld (6112230) | asked Apr 17 '14, 9:03 a.m.
A hopefully simple question really: We normally have a code freeze on sub-directories in a branch (stream) just before a release, how do we implement this in RTC 4.0.4 on Windows 7/Web?  The freeze is 'thawed' after the release if and when any code patches are needed in that version.

2 answers



permanent link
Geoffrey Clemm (29.6k23035) | answered Apr 18 '14, 11:11 p.m.
FORUM ADMINISTRATOR / FORUM MODERATOR / JAZZ DEVELOPER
I'd suggest using the "Restrict Change Set Delivery to Components in a Stream" pre-condition for the Deliver(server) action.

Comments
Tim Mok commented Apr 21 '14, 11:21 a.m.
JAZZ DEVELOPER

Configuring a precondition is the way to go. It can be configured according to your project's timeline so that your last sprint will not allow deliveries. There are also other preconditions that can be set to allow deliveries only if the necessary approvals are present. So you could allow deliveries at this time if the project lead approved it.


Eddie Breeveld commented Apr 22 '14, 3:39 a.m.

Thanks Tim.  For various reasons we are are not 'agile', but maybe we can implement something.  A straightforward code freeze, as available in other products, would suit us better.
Eddie


-1
permanent link
sam detweiler (12.4k6179201) | answered Apr 17 '14, 10:24 a.m.
edited Apr 17 '14, 10:25 a.m.
I would recommend taking a snapshot of the code at the freeze point, and then build a new stream from the snapshot.

then only fixes/maint applied to the release candidate stream.  developers cannot deliver to this stream.  only release manager (role)

you can also get the snapshot from the build record.. that supposedly went into test.

then you can flow those changes back into your dev stream later (and resolve any conflicts).

Comments
Eddie Breeveld commented Apr 17 '14, 11:16 a.m. | edited Apr 17 '14, 11:17 a.m.

Thanks Sam,
The problem we have is that the build and test machines use the Main stream.  If we create a new stream from last night's snapshot, then we will have to make a lot of changes to the build and test procedures to use the new stream. We will eventually create a new stream for the released version, but this will happen when we have got some time to set up builds and tests in both streams, i.e., after the release!  (We have in fact got streams for all previous releases, but as I said we have not branched this version yet.)   We would just like to freeze the code for a while.
Eddie

Your answer


Register or to post your answer.