mktrigger

Attaches a trigger to an element

APPLICABILITY

ClearCase (cleartool subcommand), Attache (command)

SYNOPSIS

mktrigger [ -c·omment comment | -cfi·le comment-file-pname |-cq·uery

| -cqe·ach | -nc·omment ]
[ -r·ecurse ] [ -nin·herit | -nat·tach ] [ -f·orce ]
trigger-type-selector pname ...

DESCRIPTION

Prerequisite: A trigger type object, created with mktrtype -element, must already exist in the VOBs containing the specified elements.

The mktrigger command attaches a trigger to one or more elements. An attached trigger fires (executes the trigger action) when the element or any of its versions is involved in an operation specified in the trigger type definition. For example, if a trigger type is defined to fire on a checkin command, the attached trigger fires when the specified element is checked in. If a VOB operation causes multiple attached triggers to fire, the order of firing is undefined.

Trigger Inheritance

ClearCase has a trigger inheritance scheme, whereby newly created elements (but not existing elements) inherit the triggers that are currently associated with their parent directory element. But a simple inherit-all-triggers strategy does not suit the needs of many sites. For example:

To enable such flexibility, each directory element has two independent lists of trigger types:

By default, attaching a trigger to a directory element updates both lists:

cmd-context mktrigger trig_co proj

Added trigger "trig_co" to inheritance list of "proj".
Added trigger "trig_co" to attached list of "proj".

Each file element has only an attached list:

cmd-context mktrigger trig_co util.c

Added trigger "trig_co" to attached list of "util.c".

You can use the -ninherit and -nattach options to control exactly which triggers on a directory element are inherited. (And you can make adjustments using the -ninherit and -nattach options of the rmtrigger command.)

PERMISSIONS AND LOCKS

Permissions Checking: For each object processed, you must be one of the following: element group member, element owner, VOB owner, member of the ClearCase group. See the permissions reference page.

Locks: An error occurs if any of the following objects are locked: VOB, element type, element, trigger type.

OPTIONS AND ARGUMENTS

EVENT RECORDS AND COMMENTS. Default: Creates one or more event records, with commenting controlled by your .clearcase_profile file (default: -nc). See CUSTOMIZING COMMENT HANDLING in the comments reference page. Comments can be edited with chevent.

-c·omment comment | -cfi·le comment-file-pname |-cq·uery | -cqe·ach | -nc·omment

Overrides the default with the option you specify. See the comments reference page.

ATTACHING TRIGGERS TO AN ENTIRE SUBDIRECTORY TREE.  Default: If a pname argument names a directory element, the trigger is attached only to the element itself, not to any of the existing elements within it.

-r·ecurse

Processes the entire subtree of each pname that is a directory element (including pname itself).

CONTROLLING TRIGGER INHERITANCE.  Default: For a directory element, the specified trigger type is placed both on the element's attached list and its inheritance list. (For a file element, the trigger type is placed on its attached list, which is its only trigger-related list.) The following options apply to directory elements only.

-nin·herit

The trigger is placed on the element's attached list, but not on its inheritance list. This option is useful when you want to monitor operations on a directory, but not operations on the files within the directory.
-nat·tach

The trigger is placed on the element's inheritance list, but not on its attached list. This option is useful when you want to monitor operations on the files within a directory, but not operations on the directory itself.

OBSERVING ELEMENT TYPE RESTRICTIONS.  Default: If trigger-type-name is defined with a restriction to one or more element types, mktrigger refuses to process an element of another type.

-f·orce

Attaches a trigger to an element whose type does not match the definition of the trigger type. Such a trigger does not fire unless you change the element's type (chtype) or you redefine the trigger type (mktrtype -replace).

SPECIFYING THE TRIGGER TYPE.  Default: None.

trigger-type-selector

The name of an existing element trigger type. Specify trigger-type-selector in the form [trtype:]type-name[@vob-selector]

type-name

Name of the trigger type

vob-selector

VOB specifier

Specify vob-selector in the form [vob:]pname-in-vob

pname-in-vob

Pathname of the VOB-tag (whether or not the VOB is mounted) or of any file-system object within the VOB (if the VOB is mounted)

SPECIFYING THE ELEMENTS.  Default: None.

pname ...

One or more pathnames, specifying elements to which the specified trigger type is to be attached.

EXAMPLES

Examples including wildcards or quoting are written for use in cleartool interactive mode. If you use cleartool single-command mode, you may need to change the wildcards and quoting to make your command interpreter process the command appropriately.

In cleartool single-command mode, cmd-context represents the command interpreter prompt. In cleartool interactive mode, cmd-context represents the interactive cleartool prompt. In Attache, cmd-context represents the workspace prompt.

cmd-context mktrigger trig1 hello.c
Added trigger "trig1" to attached list of "hello.c".
cmd-context mktrigger -force trig1 util.c
Added trigger "trig1" to attached list of "util.c".
cmd-context mktrigger trig1 src
Added trigger "trig1" to attached list of "src".
Added trigger "trig1" to inheritance list of "src".
cmd-context mktrigger -nattach trig1 release
Added trigger "trig1" to inheritance list of "release".

SEE ALSO

describe, mktrtype, rmtrigger



Feedback on the documentation in this site? We welcome any comments!
Copyright © 1999 by Rational Software Corporation. All rights reserved.