p4 triggers
概要
チェンジリストのサブミットやフォーム更新の都度、またはPerforceを外部の認証メカニズムやアーカイブメカニズムと統合するとき、条件に応じて実行されるスクリプトのリストを編集します。
構文
p4 [g-opts
] triggers
p4 [g-opts
] triggers -o
p4 [g-opts
] triggers -i
解説
Perforceトリガは、ユーザが記述するスクリプトまたはプログラムであり、特定の操作(チェンジリストのサブミットやフォームの変更など)が実行されるたびにPerforceサーバによって呼び出されます。スクリプトが値0
を返すと操作は続行し、他の値を返すと操作は失敗します。
p4 triggersコマンドには3つのバリアントが含まれています。
-
オプションを指定しない場合、コマンドはデフォルトのエディタを起動して、ユーザが1つ以上のトリガ定義を指定できるようにします。
-
-i
オプションは、標準入力を使用して1つ以上のトリガ定義を指定することを指定します。 -
-o
オプションは、トリガテーブルに現在保存されているトリガ定義を表示します。
トリガ定義には4つのフィールドが含まれています。各フィールドには、トリガの名前、スクリプトの実行をトリガするイベントのタイプ、スクリプトの場所、および他のトリガタイプの固有の情報をそれぞれ指定します。トリガ定義で指定した条件が満たされると、関連付けられているスクリプトまたはプログラムが実行されます。
トリガおよびトリガ定義の記述の詳細については、『Perforceサーバ管理者ガイド: 基本』の「Perforceのスクリプト: トリガとデーモン」を参照してください。
オプション
|
エディタを起動せずに、標準入力からトリガテーブルを読み取ります。 |
|
エディタを起動せずに、トリガテーブルを標準出力に記述します。 |
|
「“グローバルオプション”」を参照してください。 |
使用上の留意点
ファイル引数にリビジョン指定子を使えるか? |
ファイル引数にリビジョン範囲を使えるか? |
最低限必要なアクセスレベル |
---|---|---|
適用外 |
適用外 |
|
例
トリガテーブルが、以下のエントリで構成されていると仮定します。
Triggers: trig1 change-submit //depot/dir/... "/usr/bin/s1.pl %changelist%" trig2 change-submit //depot/dir/file "/usr/bin/s2.pl %user%" trig1 change-submit -//depot/dir/z* "/usr/bin/s1.pl %user%" trig1 change-submit //depot/dir/zed "/usr/bin/s3.pl %client%"
インデントに注意してください。Triggers:
フィールドの名前はインデントされていません。各行は1つ以上のスペースかタブ文字でインデントされています。
1行目と3行目は、両方ともスクリプト/bin/s1.pl
%changelist%
を呼び出します。最初に出現した特定のトリガ名が、それ以降にそのトリガ名が使用されたときに実行されるスクリプトを決定するからです。
ファイル//depot/dir/zebra
がサブミットされた場合、どのトリガもアクティブになりません。3行目でこのファイルが除外されているからです。//depot/dir/zed
がサブミットされた場合は、trig1のスクリプト/usr/bin/s1.pl
%changelist%が実行されます。4行目は3行目をオーバーライドしますが、名前trig1に関連付けられている最初のスクリプトだけが呼び出されます。
より詳細な例については、『Perforceサーバ管理者ガイド: 基本』の「Perforceのスクリプト: トリガとデーモン」を参照してください。