Perforce 触发器 - 修改描述文本
Perforce Triggers - modify description text
我正在浏览 Perforce : Prefill changelist description,它应该描述 1:1 如何创建 form-out change
触发器,我做到了。
- p4 触发器文件
suffix form-out change "powershell S:/p4_template.ps1 %formfile%"
- 模板文件:
(Get-Content $args[0]) |
Foreach-Object {$_ -replace "<enter description here>", "template text"} |
Set-Content $args[0]
但是,我不断收到以下错误消息:
'suffix' 验证失败:
Execution Failed: powershell -ExecutionPolicy Bypass -File
S:/p4template.ps1 /tmp/tmp.379055.140083088879040.130: No such file or directory
我确实也重新启动了 perforce 服务器(只是因为在该线程中提到了它,但看起来它并不真的需要重新启动)。据我所知,我们想要访问 tmp 文件并替换文本,但是那个 tmp 文件 /tmp/tmp.379055.140083088879040.130
似乎不存在?我已经检查了 %TEMP%
并使用 ENV var 对其进行了设置。此外,当我单击 refresh
并执行 p4 change -o
操作时,我在 p4v
中收到此消息。
后代的回答:这里的问题是触发器在服务器上运行,而不是在客户端上运行,并且大概 No such file
指的是 powershell
可执行文件或脚本不存在于服务器。
关于 Perforce 触发器的文档:https://www.perforce.com/manuals/p4sag/Content/P4SAG/chapter.scripting.triggers.html
我正在浏览 Perforce : Prefill changelist description,它应该描述 1:1 如何创建 form-out change
触发器,我做到了。
- p4 触发器文件
suffix form-out change "powershell S:/p4_template.ps1 %formfile%"
- 模板文件:
(Get-Content $args[0]) |
Foreach-Object {$_ -replace "<enter description here>", "template text"} |
Set-Content $args[0]
但是,我不断收到以下错误消息: 'suffix' 验证失败:
Execution Failed: powershell -ExecutionPolicy Bypass -File
S:/p4template.ps1 /tmp/tmp.379055.140083088879040.130: No such file or directory
我确实也重新启动了 perforce 服务器(只是因为在该线程中提到了它,但看起来它并不真的需要重新启动)。据我所知,我们想要访问 tmp 文件并替换文本,但是那个 tmp 文件 /tmp/tmp.379055.140083088879040.130
似乎不存在?我已经检查了 %TEMP%
并使用 ENV var 对其进行了设置。此外,当我单击 refresh
并执行 p4 change -o
操作时,我在 p4v
中收到此消息。
后代的回答:这里的问题是触发器在服务器上运行,而不是在客户端上运行,并且大概 No such file
指的是 powershell
可执行文件或脚本不存在于服务器。
关于 Perforce 触发器的文档:https://www.perforce.com/manuals/p4sag/Content/P4SAG/chapter.scripting.triggers.html