TFS 检查文件是否存在于构建目录中
TFS check if file exists in build directory
有没有办法在 TFS 构建运行时检查特定的 .xml 文件是否存在于构建目录中?
我正在尝试根据 found/not 找到的结果 true/false 获得布尔结果
我尝试创建一个变量来存储这个结果(我猜这就是这样做的方法)。但是我在尝试使用它时遇到错误。
您可以尝试编写一个脚本来检查特定文件是否存在,然后在您的构建过程中检查脚本和 运行 作为 Pre-build script
:
例如:
$Source = $Env:TF_BUILD_BUILDDIRECTORY
$filename = "*.xml"
if (!(Test-Path "$Source$filename"))
{
Write-Warning "$filename absent from build directory"
# Write-Error "$filename absent from build directory"
#exit 1
}
引用Using Environment Variables in Visual Studio 2013 and TFS 2013
表达式编辑器使用标准VB.NET,因此您可以调用System.IO.File.Exists(path)
来检测文件是否已经存在。
找到解决方案。我添加了一个新的 variable "dcMatchedFile" - 这是一个 IEnumerable 类型。使用此 dcMatchedFile 作为 FindMatchingFiles 项目的 "Result" 选项(见下图)
然后你可以简单地使用"If"语句来检查Any()。
有没有办法在 TFS 构建运行时检查特定的 .xml 文件是否存在于构建目录中?
我正在尝试根据 found/not 找到的结果 true/false 获得布尔结果
我尝试创建一个变量来存储这个结果(我猜这就是这样做的方法)。但是我在尝试使用它时遇到错误。
您可以尝试编写一个脚本来检查特定文件是否存在,然后在您的构建过程中检查脚本和 运行 作为 Pre-build script
:
例如:
$Source = $Env:TF_BUILD_BUILDDIRECTORY
$filename = "*.xml"
if (!(Test-Path "$Source$filename"))
{
Write-Warning "$filename absent from build directory"
# Write-Error "$filename absent from build directory"
#exit 1
}
引用Using Environment Variables in Visual Studio 2013 and TFS 2013
表达式编辑器使用标准VB.NET,因此您可以调用System.IO.File.Exists(path)
来检测文件是否已经存在。
找到解决方案。我添加了一个新的 variable "dcMatchedFile" - 这是一个 IEnumerable 类型。使用此 dcMatchedFile 作为 FindMatchingFiles 项目的 "Result" 选项(见下图)
然后你可以简单地使用"If"语句来检查Any()。