It's all about the answers!

Ask a question

How to build by work item status?

Morten Madsen (3053250) | asked May 24 '13, 11:41 a.m.
We're trying to implement a fully automated build and deploy process.

We want a periodic build which will only accept any incoming changes, if their work item status is for ex. "Waiting for UAT deployment".

I thought about implementing this as an ANT task, but this would probably screw up the traceability of the "changes included in build" which probably are set by the time the build starts. My questions are:

1. would it be possible for me to add changes/work item to the build page manually? I guess this is related to the automatic build snapshot then?

2. should I instead implement this as a build participant like in this post?

Any comments are very welcome :)

Accepted answer

permanent link
Scott Cowan (966310) | answered May 24 '13, 12:49 p.m.
Hi Morten,

It seems to me you should create a stream and build for this purpose instead, and only deliver those change sets that match your criteria (i.e. work item status is for ex. "Waiting for UAT deployment").

There are potentially problems with what you're proposing.  What do you do with change sets that don't match this criteria?  What if there are change set dependencies that introduce gaps?  In this case, your build wouldn't be able to accept them.  Also, to reproduce a problem in your build, a developer would need to create a repository workspace off of the build workspace instead of a stream.

What if your stream was called "Waiting for UAT deployment" (or something like that).  Only deliver the appropriate change sets.

Morten Madsen selected this answer as the correct answer

Morten Madsen commented May 24 '13, 6:33 p.m.

Yes, I think you're right. But the thing is, that I wont use the builds "accept all" functionality. I would create an ANT task to accept only the "Waiting for..." changes, and change that would create gaps I wouldn't accept (by checking the synch error message), so I would have total control over that aspect.

The build would build from a workspace, that would contain only the changes which were able to be accepted by these criteria. Therefore, if I could manually accept and add to the build result, then the build result would refer to the correct set of changes.

Morten Madsen commented May 24 '13, 6:33 p.m.
But maybe you're right. Your way, I would use the build-in functionality from RTC, and I would be able to accept ALL changes from the "Waiting for.." stream, and create an automatic baseline...

I will consider this :) thx a lot. I will rate your answer tomorrow (my tomorrow) when I choose my direction to go. 

Your answer

Register or to post your answer.

Dashboards and work items are no longer publicly available, so some links may be invalid. We now provide similar information through other means. Learn more here.