如何使用TeamCity进行构build后部署?

我将TeamCity设置为我的构build服务器。

我有我的项目设置,它正在从颠覆正确更新,并build立好。

下一个是什么?

理想情况下,我希望将其自动部署到testing服务器,并手动部署到活动/临时服务器。

最好的办法是什么呢?

由于我使用C#/ ASP.Net,我应该添加一个Web部署项目到我的解决scheme?

本文介绍如何从TeamCity调用Microsoft的WebDeploy工具来将Web应用程序部署到远程Web服务器。 我一直在使用它来部署到testingWeb服务器上,并在签入时运行seleniumtesting。

http://www.mikevalenty.com/automatic-deployment-from-teamcity-using-webdeploy/

  1. 安装WebDeploy
  2. 启用Webconfiguration转换
  3. configurationTeamCity BuildRunner
  4. configurationTeamCity构build依赖关系

适用于我的应用程序的MSBuild参数是:

/p:Configuration=QA /p:OutputPath=bin /p:DeployOnBuild=True /p:DeployTarget=MSDeployPublish /p:MsDeployServiceUrl=https://myserver:8172/msdeploy.axd /p:username=myusername /p:password=mypassword /p:AllowUntrustedCertificate=True /p:DeployIisAppPath=ci /p:MSDeployPublishMethod=WMSVC 

我写了一篇关于这个可能让你感兴趣的主题的博客文章:

http://www.diaryofaninja.com/blog/2010/05/09/automated-site-deployments-with-teamcity-deployment-projects-amp-svn

基本上:

  • 安装web部署项目
  • 将web部署项目添加到您的解决scheme
  • 设置解决schemeconfigurationpipe理器以具有“部署”构buildconfiguration
  • 运行构build时让团队城市使用此构build开关
  • 有一个啤酒和奇迹在你的automagical精彩的荣耀

通常我所做的就是创build一个Wix安装程序。 Wix项目可以用MsBuild构build,所以你应该没有问题。

另外,我会build议看看下面的自动部署的MsBuild扩展:

http://www.codeplex.com/MSBuildExtensionPack
http://msbuildtasks.tigris.org/

我希望这有帮助。

我们正在使用Octopus Deploy来pipe理Team City之上的环境。

作为一个构build过程,我们有一个八达通发布和八达通部署在Octupus创build一个发布,然后也自动部署;

由于八达通pipe理我们的环境,它也提供了我们广泛使用的variables,并可以使用相同的构build一起创build一个新的环境。

还请考虑TeamCity开发人员的部署者插件: http : //confluence.jetbrains.com/display/TW/Deployer+plugin