IBM Support

Where to create UCM trigger types for mkbl, chbl and rmbl operations

Question & Answer


Question

In which IBM® Rational® ClearCase® UCM PVOB do I create triggers on baseline operations in order for them to function properly?

Answer



In a configuration where multiple UCM project VOBs are being used, mkbl triggers need to be attached to the correct pvob otherwise they will not fire.

Review Table 2. UCM object trigger definition operation keywords in IBM Rational ClearCase Command Reference on the topic of mktrtype (cleartool man mktrtype) for more information. Column Object type in the table refers to the type of UCM object to which triggers on the Operation keyword can be attached. "-ucm -all" triggers will be attached to all objects of that type in the PVOB where the trigger is defined.

  • mkbl trigger types have to be attached to component objects. "-ucm -all" mkbl trigger types fire for every baseline created on every component in the PVOB where the trigger type is defined. The event is the creation of a single baseline on a component.
  • chbl and rmbl trigger types have to be attached to component objects, not the baseline objects as one might expect. "-ucm -all" chbl / rmbl trigger types fire for every baseline changed / removed in every component in the PVOB where the trigger type is defined.
  • mkbl_complete trigger types have to be attached to stream objects. The event is the completion of a baselining operation across all components the stream has a foundation on. "-ucm -all" mkbl_complete trigger types fire for every stream in the PVOB where the trigger type is defined.


Consider the following mkbl example:
  • Two PVOBs are in use:

  • \dev_projects contains component "source"
    \doc_projects contains component "documentation"
  • A project "Release2" is created in \dev_projects and modifies both these components.
  • Composite baselines are created in component "releases", dependent on both "source" and "documentation".
  • The administrator of \doc_projects has a "-ucm -all -preop mkbl" trigger type "blnaming" in place to enforce naming standards.
  • The administrator of \dev_projects has a "-ucm -all -postop mkbl_complete" trigger type "newbl" in place to notify developers of a new baseline.
  • The project manager of "Release2" makes a new baseline "Release2_Milestone1".


Here is what happens:
  • Baseline "Release2_Milestone1.1256" is created on component "source".
  • Trigger "blnaming" is fired to check the name of the baseline for the "documentation" component and allows it to proceed.
  • Baseline "Release2_Milestone1.1278" is created on component "documentation".
  • Baseline "Release2_Milestone1" is created on component "releases".
  • Trigger "newbl" is fired to notify developers of new baseline(s) in stream "Release2_Integration"


  • Note: While all three baselines will actually be created in \dev_projects, the trigger type in \doc_projects is fired for the mkbl on component "documentation".

[{"Product":{"code":"SSSH27","label":"Rational ClearCase"},"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Component":"UCM: PVOB","Platform":[{"code":"PF002","label":"AIX"},{"code":"PF010","label":"HP-UX"},{"code":"PF016","label":"Linux"},{"code":"PF027","label":"Solaris"},{"code":"PF033","label":"Windows"}],"Version":"7.0.1;7.0;2003.06.00","Edition":"","Line of Business":{"code":"LOB45","label":"Automation"}},{"Product":{"code":"SSSH27","label":"Rational ClearCase"},"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Component":"UCM: Baseline","Platform":[{"code":"","label":""}],"Version":"","Edition":"","Line of Business":{"code":"LOB45","label":"Automation"}}]

Document Information

Modified date:
16 June 2018

UID

swg21304783