我们目前正在为我们的公司设置 Team Build 2010,我正在尝试使用工作流活动来检索当前正在构建的解决方案的确切本地路径。我还没有找到获得这个值的方法,有人知道如何(不编写自定义活动)吗?
服务器或本地路径之一就足够了(即$/TeamProject/Branch/OurProject
or C:\TeamBuild\src\path\to\branch\OurProject
)因为我们可以使用服务器项目上的转换活动。
我们需要此路径的原因是为了更新版本信息文件,并且仅需要针对正在构建的当前解决方案执行此操作,并且文件具有相同的名称(例如,AssemblyInfo.cs)。
In this 类似的问题 https://stackoverflow.com/questions/7179564/variable-of-solution-directory-or-something-close-in-tfs-2010-build,解决方案是定义一个参数,但由于此信息特定于正在构建的解决方案而不是某些外部路径,因此我们希望可以检索此信息。
您无需添加任何内容即可检索此特定信息。如果您在构建过程模板中导航到 MSBuild 中断的位置,您将看到要构建的解决方案被设置为名为的字符串localProject
.
这将包含 TFS 下载 SLN 的本地路径,例如C:\TeamBuild\src\path\to\branch\OurProject\OurProject.sln
.
打开 XAML 并导航到:
Run On Agent
Try Compile, Test, and Associate Changesets and Work Items
Compile, Test, and Associate Changesets and Work Items
Try Compile and Test
Compile and Test
For Each Configuration in BuildSettings.PlatformConfigurations
Compile and Test for Configuration
If BuildSettings.HasProjectsToBuild
For Each Project in BuildSettings.ProjectsToBuild
Try to Compile the Project
Compile the Project
Run MSBuild for Project
如果你选择Run MSBuild for Project
& 打F4
你看到了。
为了检索你之后的内容,你可以定义另一个字符串变量solutionPath
在您的构建过程模板中并插入到Run MSBuild for Project
a new Assign
活动与
To : solutionPath
and
Value : Path.GetDirectoryName(localProject)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)