使用TFS / RM 2015环境变量/自定义配置

时间:2016-02-16 11:03:30

标签: tfs tfs2015 ms-release-management

我有一个控制台应用程序,我正在使用Visual Studio Build在本地tfs 2015上构建。我想要实现的是:

如果在正常开发期间在dev机器上执行应用程序,则会出现一条简单的消息“Hello Developer”,如果它部署在qa环境中并且测试人员从那里运行它应该打印“Hello Tester” “。只是一个简单的演示。

所以我认为我需要一个App.config来存储一个在构建过程中不会被更改的配置。我有信心这是一个没有道理,因为我发现有很多网站描述这样的事情,但事实证明,他们都没有透露有趣的内容,如

  • App.config需要怎么样?
  • C#代码中使用的变量如何?
  • 发布管理客户端中有哪些必要设置?
  • 内部部署TFS构建定义中需要哪些设置?

或已过时(TFS 2013 (1)RM Client 2013 (2))或正在使用Visual Studio Online/ Team Services或正在使用custom tasks

有人可以解释一下,如何实现所描述的场景“Hello Developer”/“Hello Tester”?

非常感谢!

2 个答案:

答案 0 :(得分:1)

我们使用MSDeploy进行此类设置。您可以通过将csproj文件中的Import行添加到项目中的新.targets文件来扩展MSBuild。引用MSDeploy任务并使用它为控制台应用程序创建MSDeploy包。最后创建参数化文件,以使用适当的消息定义要转换的配置部分和每个环境的SetParameters文件。

This blog post用于数据库项目,但基本步骤相同。

在RM中,您将使用MSDeploy通过PowerShell命令将包与适当的SetParmeter文件一起部署到目标服务器。

enter image description here

答案 1 :(得分:0)

您是否尝试过使用SlowCheetah

  

此软件包允许您自动转换app.config(或   在Visual Studio中按F5时的任何文件。你可以有不同的   基于构建配置的转换。这将使你   轻松拥有不同的应用程序设置,连接字符串等   调试与发布。如果要转换其他文件,可以执行此操作   那也是。