我们大量使用TeamCity进行构建\测试。
据我所见,TeamCity不是打包和部署的适当工具。当然,任何命令行进程都可以由"Environment",启动,但我们缺少的是部署到哪里的TeamCity概念。
有些工具,如Nolio,具有任意格式。因此,例如,我们可以定义项目的环境类型:
1 app server:
- IIS web site with:
- Virtual Dir \ Web Application:
- App Pool
- .NET Framework version
- Windows service with:
- Name
- Description
1 db server:
- db name
- db user
- db password所以所有的环境(Dev,QA,PreProd,Prod)都会有不同的参数。在打包步骤中(例如,通过Wix对MSI ),我们可以使用这些参数为特定环境创建MSI,例如在Web.config中更新Web.config。
其他项目可以有不同的环境。XML格式可能是最好的描述这种结构和值的格式。
我们在NAnt脚本中实现了类似的内容,其中每个环境都有.build文件,其中包含平面的值列表。然后我们将这些值<xmlpoke>到Web.config文件中。但这是很难维持的。
因此,现在我们正在寻找一些工具,可以与TeamCity集成(以获取构建工件),将它们打包到可安装的MSI中,然后可以轻松地部署到环境中。此类工具必须具有“环境”的概念,允许轻松定义结构(参见上面的示例),允许添加\修改\delete环境实例,然后在打包\部署时自动使用它们。
有什么想法或者你的经验吗?
发布于 2012-06-22 13:15:13
我对不同环境的自动化和手动部署实际上是通过Team与MSDeploy和使用Config转换完成的。
这是我使用的一步一步的指南,由特洛伊亨特:http://www.troyhunt.com/2010/11/you-deploying-it-wrong-teamcity.html
以下是转换语法的附加信息:http://msdn.microsoft.com/en-us/library/dd465326.aspx
在此设置中,每个环境将是解决方案中的不同构建配置,以及特定的配置转换。
https://stackoverflow.com/questions/11156715
复制相似问题