我有一个(clearcase)preop 非交互式触发器,需要评估环境变量值(从客户端)以执行一些检查。
考虑到它似乎不适用于动态或快照视图,有没有办法或 w/a 将此类环境变量值从具有 CCRC 的客户端传递给触发器?
非常感谢!
我有一个(clearcase)preop 非交互式触发器,需要评估环境变量值(从客户端)以执行一些检查。
考虑到它似乎不适用于动态或快照视图,有没有办法或 w/a 将此类环境变量值从具有 CCRC 的客户端传递给触发器?
非常感谢!
根据这篇IBM 文章,没有。服务器端未定义的环境变量可能会导致触发器认为它是交互式的。
RWP
触发脚本引用了在客户端上设置但在Web 服务器上找不到的用户定义的环境变量。在此示例中
MYCC_TRIGGER_TMP
,在客户端上设置了用户定义的环境变量以定义备用临时目录,并由触发器脚本引用。
但是,它没有在RWP
Web 服务器上定义。
完整错误消息的示例:
Unable to checkin "<path to file>"
Error: directory for environmentvariable "MYCC_TRIGGER_TMP" or "TMP" not found
ccweb: Warning: Trigger "ci_pre" has refused to let checkin proceed.
Interactive triggers are not supported in the Web interface.
If the trigger was interactive, it may have failed for that reason.
ccweb: Error: Unable to check in "<path to file>".
文章为 ClearCase 远程客户端编写触发器证实了这一点,尽管是间接的。
注意:在某些情况下,操作前触发器将不起作用(例如,需要特定 ClearCase 环境变量评估的触发器)。
CCRC
作为客户端进程运行,将RPC
命令发送到CCRC
服务器,它们由单独的CCRC
服务器进程执行。
这些服务器进程在 Apache 下运行,因此环境变量 ( EV ) 可能与交互式开发期间在命令 shell 窗口中看到的不同。可以使用命令修改服务器配置文件 (
rwp.conf
, ) 以添加环境变量。ccrc.conf
SetEnv