在 TFS 构建部署测试中找不到脚本
Script not found in TFS Build Deploy Test
我们的构建中有一个预部署脚本可以正常工作,运行在构建并发送到特定构建控制器和代理时正确。
但是,为了精简,我们设置了几个实验室环境和一个构建-测试-部署流程,这样每当开发人员推送新构建时,它都会自动构建测试方法并将它们发送到测试环境。
那部分都很棒,很可爱,很棒。但是:上述脚本在构建-部署-测试流程中不起作用。它与特定于机器的构建具有完全相同的路径,但每次我们 运行 构建时我们都会得到
The system cannot find the file specified
Exception Message: Team Foundation Server could not complete the deployment task for machine 'TestController1', script '"#/80908/drop/AutomatedTests/AutomatedTests.Desktop/ExternalLibs/GetEi.ps1"'
这是适用于特定机器构建的过程参数
这是找不到脚本的构建部署测试的过程参数(是的,我试过不带引号和 $(BuildLocation))
我不相信测试控制器和代理支持 "store drop on the server"。为了使用构建-部署-测试 DevOps 周期,您需要:
- 更改为使用可从测试服务器访问的 UNC 放置位置。
- 改为使用发布管理进行部署。支持服务器掉落
我建议使用#2,因为我已经用这种方法取得了巨大的成功。
事实证明,实际的放置路径与其他构建模板不同。使用实验室设置将所有内容置于 $(BuildLocation) 作为根目录下,因此 ExternalLib 文件夹路径仅为 $(BuildLocation)\ExternalLib\Getei.ps1
如果其他人遇到这个问题,我建议导航到放置路径(在我的例子中,\\TestController1)并检查脚本相对于构建的其余部分的实际放置位置。
我们的构建中有一个预部署脚本可以正常工作,运行在构建并发送到特定构建控制器和代理时正确。
但是,为了精简,我们设置了几个实验室环境和一个构建-测试-部署流程,这样每当开发人员推送新构建时,它都会自动构建测试方法并将它们发送到测试环境。
那部分都很棒,很可爱,很棒。但是:上述脚本在构建-部署-测试流程中不起作用。它与特定于机器的构建具有完全相同的路径,但每次我们 运行 构建时我们都会得到
The system cannot find the file specified Exception Message: Team Foundation Server could not complete the deployment task for machine 'TestController1', script '"#/80908/drop/AutomatedTests/AutomatedTests.Desktop/ExternalLibs/GetEi.ps1"'
这是适用于特定机器构建的过程参数
这是找不到脚本的构建部署测试的过程参数(是的,我试过不带引号和 $(BuildLocation))
我不相信测试控制器和代理支持 "store drop on the server"。为了使用构建-部署-测试 DevOps 周期,您需要:
- 更改为使用可从测试服务器访问的 UNC 放置位置。
- 改为使用发布管理进行部署。支持服务器掉落
我建议使用#2,因为我已经用这种方法取得了巨大的成功。
事实证明,实际的放置路径与其他构建模板不同。使用实验室设置将所有内容置于 $(BuildLocation) 作为根目录下,因此 ExternalLib 文件夹路径仅为 $(BuildLocation)\ExternalLib\Getei.ps1
如果其他人遇到这个问题,我建议导航到放置路径(在我的例子中,\\TestController1)并检查脚本相对于构建的其余部分的实际放置位置。