我在 TFS 中有一个 MsBuild Build,它正在发布一个 web zip 包。
这是我正在使用的命令行:
/t:Build;Package
/p:DeployOnBuild=true;Configuration=Release;
DeployTarget=Package;PackageLocation=\\xxx\MyApp.zip
它工作正常,并且还在 web.config 中按预期替换参数。
我面临的唯一问题是应用于包文件的权限。
现在文件被部署到:
*\myshare\myapp\*
并且文件夹设置了权限:
所有人:完全控制
文件夹内的包有权限:
TFSAdmin:完全控制
没有别的,所以我无法打开或复制它......有什么办法可以避免这种情况?
最佳答案
到目前为止,如果没有解决方法,问题似乎无法解决。
通过在构建过程结束时在工作流中执行批处理文件,我找到了一种简单易行的解决方法。
在批处理文件中,我使用了非常旧的 ICACLS 重新设置权限:
ICACLS \\xxx\MyPackage.zip /GRANT Everyone:F
ICACLS \\xxx\MyPackage.zip /GRANT Users:F
关于MsBuild Deploy 与 PackageLocation 放置文件权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9433159/