Perl - Perforce 新工作区触发器:创建一个与父目录或 Perforce 具有相同权限的目录

Perl - Perforce new workspace Trigger: Create a directory with same permissions as parent directory or as Perforce would give

我们想要实现的是为每个创建的新工作区添加一个本地文件。
我目前所做的是 运行 触发 "form-commit client" 的脚本。

该触发器包含客户端计算机上应创建工作区的路径,但当用户尝试在网络驱动器上创建工作区时出现问题。

会发生什么情况是文件和目录已创建,但仅具有 "Root" 的权限,因为它们之前都不存在,因此在触发器的脚本完成后,perforce 无法将源代码推送到目录,因为它没有权限(由于同样的原因,用户无法编辑目录和文件)。

从我的角度来看有两个方向可以解决这个问题:
1) 确保 perl 脚本 "mkdir" 命令创建的目录与父目录具有相同的权限。(我该怎么做?) 无关紧要,我在另一个关于堆栈溢出的问题中问过它。

2) 仅在perforce完成"pull"命令并且工作区目录由perforce创建后创建触发器所针对的文件(那个触发器是什么)

提前致谢,
最大

编辑:(最后两点我都错了,它并没有像我想的那样工作)

我做了评论中建议的步骤,但没有成功。

我怀疑所有这些都与 perforce 服务用户直接相关,所以事情是这样的:
1) 网络驱动器的映射方式只有我可以写入我的用户文件夹(+ 网络管理员)。

2) perforce 触发器珍珠脚本在 perforce 服务器上运行(我怀疑是管理员用户。)

3) 当脚本创建文件夹时,它会向我(windows 域用户)+ UnixPermUid\root + UnixPermGid\root 授予权限,我不属于这些组。

4) 当我执行 chmod (07777, $dir) 或死时 "couldn't chmod $!";没有任何反应(也没有错误或权限)

5) 我无法从 "Windows explorer" 中删除文件夹,也无法使用删除它的触发器。

6) 接下来的步骤 + 触发器运行良好:

编辑 2: 对问题 2 有什么想法吗?

2) Create the file that the trigger is for only after the "pull" command is done by perforce and the workspace directory was created by perforce(What's the trigger for that)

解决办法是调用icacls系统命令给作品创建者权限space.

$error = system("icacls $ToWriteToDir /grant domain\user:(OI)(CI)F /T");

上面的代码为触发脚本(创建新作品space)的用户添加了对网络驱动器目录的完全递归权限。

我发布了一个相关的更一般的问题 。 我决定分成两个问题,以防有人会为 perforce 的用例找到更相关的解决方案,或为任何类型的服务找到通用解决方案。