首页 > 解决方案 > 使用 vsts 访问被拒绝错误

问题描述

我正在尝试使用 vsts 在实验室中创建 wcf 服务。

我创建了一个使用 msbuild 任务工作的构建定义。然后,它使用 robocopy 使用 Publish Artifacts 步骤将相关 dll 复制到实验室内的远程目录。

但是,我需要将内容创建为 Windows 服务,并在发布后启动。似乎有些东西正在运行,因为我在成功发布大约 9 分钟后看到了一个创建的日志文件,但我在服务菜单或 IIS 中看不到我的服务。

当我尝试运行执行 sc 创建的 bat 脚本(使用运行脚本步骤)时,即使在 vsts 构建定义中我已授予修改环境的步骤权限,我也会收到拒绝访问错误。

这是完整的错误:

2018-05-17T13:00:13.7702615Z ##[section]Starting: Run script GloBill/InstallBackEnd.bat
2018-05-17T13:00:13.7705444Z ==============================================================================
2018-05-17T13:00:13.7705561Z Task         : Batch Script
2018-05-17T13:00:13.7705655Z Description  : Run a windows cmd or bat script and optionally allow it to change the environment
2018-05-17T13:00:13.7705748Z Version      : 1.1.3
2018-05-17T13:00:13.7705824Z Author       : Microsoft Corporation
2018-05-17T13:00:13.7705924Z Help         : [More Information](https://go.microsoft.com/fwlink/?LinkID=613733)
2018-05-17T13:00:13.7706023Z ==============================================================================
2018-05-17T13:00:13.7775377Z ##[command]C:\agent\_work\1\s\GloBill\InstallBackEnd.bat 
2018-05-17T13:00:13.8030595Z 
2018-05-17T13:00:13.8031049Z C:\agent\_work\1\s>sc create GloBillBackEnd ../Services/GloBill.WS.exe 
2018-05-17T13:00:13.8048684Z [SC] OpenSCManager FAILED 5:
2018-05-17T13:00:13.8048781Z 
2018-05-17T13:00:13.8048901Z Access is denied.
2018-05-17T13:00:13.8048957Z 
2018-05-17T13:00:13.8064609Z ##[error]Process completed with exit code 5.
2018-05-17T13:00:13.8073202Z ##[section]Finishing: Run script GloBill/InstallBackEnd.bat

我的想法不多了。

标签: msbuildazure-devopspublish

解决方案


问题是我试图从驻留在另一台机器上的托管代理部署一个版本。

我必须配置一个仅用于部署的新代理,然后我必须通过添加 -executionpolicy bypass 命令稍微调整我的安装脚本。

这是新脚本:(%1 是文件路径)

Powershell.exe -executionpolicy bypass -File %1 -username Username -password ****** -exepath *exe* -serviceName *svcName*

推荐阅读