It's all about the answers!

Ask a question

Force baseline creation after delivering to stream


Andrea Mantovani (4174) | asked Aug 03 '11, 5:26 a.m.
Hello,
is it possible to configure RTC in order to force baseline creation after a Deliver operation is performed?
Is it needed to create a specific plugin for this?

Thanks,
Andrea

9 answers



permanent link
Ralph Schoon (63.7k33648) | answered Aug 03 '11, 6:11 a.m.
FORUM ADMINISTRATOR / FORUM MODERATOR / JAZZ DEVELOPER
Hello,
is it possible to configure RTC in order to force baseline creation after a Deliver operation is performed?
Is it needed to create a specific plugin for this?

Thanks,
Andrea

Hi Andrea, I am not aware of such a functionality. You'd probably have to create an extension.

I would be interested in the use case.

permanent link
Geoffrey Clemm (30.1k33035) | answered Aug 03 '11, 8:30 a.m.
FORUM ADMINISTRATOR / FORUM MODERATOR / JAZZ DEVELOPER
Note that you effectively have a baseline of every delivery, in that you
can pick any change-set in the history of a stream, discard all of
change-sets after that stream, and recreate the configuration at the
time immediately after that delivery.

So like Ralph, I'd be interested in hearing what use case motivates the
creation of these baselines, since there may be a simpler way to achieve
it in RTC without automatically creating these baselines.

Cheers,
Geoff

On 8/3/2011 6:23 AM, rschoon wrote:
amantovaniwrote:
Hello,
is it possible to configure RTC in order to force baseline creation
after a Deliver operation is performed?
Is it needed to create a specific plugin for this?

Thanks,
Andrea
Hi Andrea, I am not aware of such a functionality. You'd probably have
to create an extension.

I would be interested in the use case.

permanent link
Andrea Mantovani (4174) | answered Aug 03 '11, 9:40 a.m.
Thanks for your feedbacks; I'm aware of the possibility to browse the history of the streams, retrieving all the change sets that have been delivered.
Baselines are just a way to "tag" a component along its timeline; they can be useful in order to group many change sets that are somehow related, which need to be logically tagged together.

In my use case, for a particular component, two consecutive baselines differ only for one change set.

Since the baseline name is commonly used by developers to refer to the component version (thus, it's needed to "tag" the component) and I don't want the developers to perform manually the Deliver operation + Baseline (risk to forget it), I was wondering if this automatization is possible within the tool (i.e., define it for the specific stream as a follow up action during delivery operation).

Maybe I can just use the baseline name inside the Change Set comment (or the summary of the WI associated to the delivery operation), but it would be more clear if the component itself would be baselined.

Cheers,
Andrea




Note that you effectively have a baseline of every delivery, in that you
can pick any change-set in the history of a stream, discard all of
change-sets after that stream, and recreate the configuration at the
time immediately after that delivery.

So like Ralph, I'd be interested in hearing what use case motivates the
creation of these baselines, since there may be a simpler way to achieve
it in RTC without automatically creating these baselines.

Cheers,
Geoff

permanent link
Ralph Schoon (63.7k33648) | answered Aug 03 '11, 10:28 a.m.
FORUM ADMINISTRATOR / FORUM MODERATOR / JAZZ DEVELOPER
Hi Andrea,

the reason I was asking is that this requirement seems not to add any benefit from my point of view. If every single check in is in it own baseline it seems to be the baseline is abused to simulate a form of tagging. And since then the system is swamped with baselines I see no potential benefit in having them at all.

The Idea of a baseline (from my perspective of course) is that some capable person for instance an integrator can baseline something considered special e.g. tested, integrated, in general some useful state in development. Since not every delivery will lead to such a special state it seems to be not worth a baseline. The change sets and the history are enough for that.

Since Streams and repository workspaces can be used to automatically rebase on the current state and to create special collections of change sets that are worth being baselined I would not recommend to do what you propose above. I have never felt the need to create a baseline for every change. Typically I baseline only if something is really done to a point that satisfying across a component. Also, sharing change sets can be done via various means. Even in other SCM systems I have never seen each and every change being tagged with all other constant data.

So from my perspective it seems odd to do what you want. But maybe there is a reason why you need all that baselines and I just don't get it. You describe below you want users to be able to pass baselines. For what purpose? Especially if they are working against the same stream and see the other's changes.

permanent link
Andrea Mantovani (4174) | answered Aug 03 '11, 10:49 a.m.
Hi Ralph,
I agree with your idea of baselining feature, and we're using it for our development.

However, we've an internal exception on this approach, which is stored under a special stream.
Simplifying, this stream contains special important releases coming from an internal stakeholder, which are identified by a tag (stakeholder baseline name); when we refer to this specific component, we are used to identify it with the same baseline name that the stakeholder is providing us.
This is basically the reason I was wondering for this "abuse" of baselining under RTC for this specific component.

Hope this is answering your question.
Regards,
Andrea




Hi Andrea,

the reason I was asking is that this requirement seems not to add any benefit from my point of view. If every single check in is in it own baseline it seems to be the baseline is abused to simulate a form of tagging. And since then the system is swamped with baselines I see no potential benefit in having them at all.

The Idea of a baseline (from my perspective of course) is that some capable person for instance an integrator can baseline something considered special e.g. tested, integrated, in general some useful state in development. Since not every delivery will lead to such a special state it seems to be not worth a baseline. The change sets and the history are enough for that.

Since Streams and repository workspaces can be used to automatically rebase on the current state and to create special collections of change sets that are worth being baselined I would not recommend to do what you propose above. I have never felt the need to create a baseline for every change. Typically I baseline only if something is really done to a point that satisfying across a component. Also, sharing change sets can be done via various means. Even in other SCM systems I have never seen each and every change being tagged with all other constant data.

So from my perspective it seems odd to do what you want. But maybe there is a reason why you need all that baselines and I just don't get it. You describe below you want users to be able to pass baselines. For what purpose? Especially if they are working against the same stream and see the other's changes.

permanent link
Ralph Schoon (63.7k33648) | answered Aug 03 '11, 10:58 a.m.
FORUM ADMINISTRATOR / FORUM MODERATOR / JAZZ DEVELOPER
Hi Andrea,

yes, in this special case it might actually make sense to do that, just because you need to be able to refer to the specific baseline. But in this case I assume the deliveries are at least not typically really just one simple change set, but rather one that represents many changes and the delivery/accept is more an integration task.

Thanks for the clarification.

permanent link
Andrea Mantovani (4174) | answered Aug 03 '11, 12:21 p.m.
Yes, you're right...the baselines received will be, from a RTC point of view, a single change set (because they come from a different CM system, the one used by the internal stakeholder that delivers the component), and we just deliver the complete package received.

Thus, in this particular situation we'd like to have the baseline action automatically triggered with the delivery one.



Hi Andrea,

yes, in this special case it might actually make sense to do that, just because you need to be able to refer to the specific baseline. But in this case I assume the deliveries are at least not typically really just one simple change set, but rather one that represents many changes and the delivery/accept is more an integration task.

Thanks for the clarification.

permanent link
Geoffrey Clemm (30.1k33035) | answered Aug 03 '11, 7:11 p.m.
FORUM ADMINISTRATOR / FORUM MODERATOR / JAZZ DEVELOPER
So it sounds like you not only want to create a baseline, but you want
it to be created with a specific name. Where would the automated
"make-baseline" get that name from?

Cheers,
Geoff

On 8/3/2011 10:53 AM, amantovani wrote:
Hi Ralph,
I agree with your idea of baselining feature, and we're using it for
our development.

However, we've an internal exception on this approach, which is stored
under a special stream.
Simplifying, this stream contains special important releases coming
from an internal stakeholder, which are identified by a tag
(stakeholder baseline name); when we refer to this specific
component, we are used to identify it with the same baseline name
that the stakeholder is providing us.
This is basically the reason I was wondering for this
"abuse" of baselining under RTC for this specific
component.

permanent link
Andrea Mantovani (4174) | answered Aug 04 '11, 6:12 a.m.
Hi Geoff,
yes, it's correct: the baseline name should be the same used by the internal stakeholder to tag it.
It's usually stored in the Release Notes (assume that it's a text file); alternatively, it could be enough to receive a prompt from RTC where the baseline name can be manually inserted.

Cheers,
Andrea

So it sounds like you not only want to create a baseline, but you want
it to be created with a specific name. Where would the automated
"make-baseline" get that name from?

Cheers,
Geoff

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.