我正在使用VSTS(Visual Studio Team Services,以前称为Visual Studio Onine)在我的构建定义中使用Azure文件复制任务继续部署到Azure VM。
我遇到的问题是我在Azure VM上设置了ACL,只允许从我的办公室连接Remote Powershell。
使用ACL后,Azure文件复制任务将失败,并显示类似" WinRM无法完成操作的错误。验证指定的计算机名称是否有效,是否可以通过网络访问计算机,以及是否启用了WinRM服务的防火墙例外并允许从此计算机进行访问。"删除ACL后,一切正常。
要清楚,这不是WinRM配置或防火墙或类似的问题。特别是VM上阻止活动的ACL。
所以问题是,如果不从我的VM中完全删除ACL,如何才能使其工作?我不想向全世界开放VM Powershell端点,但我需要能够让我的构建的Azure文件复制任务成功。
答案 0 :(得分:0)
您可以拥有位于办公室网络中的本地构建代理,并配置内容以使构建仅使用该代理。
https://msdn.microsoft.com/library/vs/alm/release/getting-started/configure-agents#installing
答案 1 :(得分:0)
Azure文件复制任务需要使用WinRM Https协议,因此当您启用ACL时,托管构建代理将无法访问Azure VM上的WinRM,这将导致Azure文件复制任务失败。
将文件从blob容器复制到Azure VM时, 使用Windows远程管理(WinRM)HTTPS协议。这个 要求在VM上正确设置WinRM HTTPS服务 虚拟机上也安装了证书。
据我所知,没有任何简单的解决方法。我建议您在网络中setup your own build agent访问Azure VM WinRM。