将安装文件复制到以TFS中的版本号命名的文件夹中

时间:2017-05-22 09:04:14

标签: tfs versioning setup-project

我们正在使用TFS构建,当我在TFS构建中构建项目时,它还会创建一个安装文件。

例如,我的应用程序版本是V1.2.3(来自assembly.cs),安装文件的位置是C:\ myproject \ setup \ setup.exe

我想将此设置exe复制到以下文件夹

C:\ products \ producta \ V1.2.3

所以我只需要获取版本号来创建一个名为" V1.2.3"的文件夹。对于复制和爬行,我可以制作批处理文件,但我不知道如何获得版本号。 TFS有一些变量,例如Build.SourceVersion 但这些变量并没有给我产品的版本号。

我怎么做这件事?

1 个答案:

答案 0 :(得分:1)

你必须编写一个脚本来执行此操作。

1)Powershell脚本从assemblyInfo.cs读取内部版本号

$myAssemblyVersion = major.minor.patch -> Read from assembyInfo.cs
$versionWithBuildId = '{0}.{1}' -f $myAssemblyVersion, $Env:BUILD_BUILDID

2)从当前版本

更新TFS内部版本号
Write-Verbose -verbose "##vso[build.updatebuildnumber]$versionWithBuildId"

之后你可以使用"复制文件"或者"发布神器"步。

使用"复制文件"

Target Folder = "C:\products\producta\$(Build.BuildNumber)"

使用"发布工件"

Artifact Name = "$(Build.BuildNumber)"

Path = "C:\products\producta"