我有一个PowerShell脚本,用于验证是否满足某些SQL编程要求。
该脚本在TFS 2015中的Gated Build的开头运行,并且似乎已成功完成。我在脚本的末尾添加了一个Write-Host行,后面没有任何内容,并且该步骤的日志记录显示了文本,因此我知道在抛出错误之前该行已被命中。
尽管看起来一切正常,没有错误或问题,但我收到“ ObjectNotFound”异常,声称无法加载该模块。
有趣的是,它试图加载的模块是“ DOMAIN \ UserName”。正如我已经指出的,在写入日志的最后一行之后没有其他脚本。
任何人以前都曾遇到过此问题,和/或没有人知道为什么会发生这种情况吗?
答案 0 :(得分:0)
所以我找出了问题所在。
我正在为源分支传递TFS变量(在这种情况下,是为门控构建创建的搁置集),但是我没有将值包装在引号中。我没有意识到的是,此实例中的源分支值由搁置集名称和与其关联的用户名组成:
例如Gated_2019-03-18_01.40.16.1334; DOMAIN \ UserName
通过不使用引号将参数引起来,我使它在分号分隔符上被分割,并且与Gated Build搁置集关联的“ DOMAIN \ UserName”被视为要加载的模块。
将论点用引号引起来后,问题就消失了。