关于c#:如何使用TeamCity进行构建后进行部署?

How to deploy after a build with TeamCity?

我将TeamCity设置为生成服务器。

我已经建立了我的项目,它正在从Subversion正确更新,并且构建良好。

那么接下来呢?

理想情况下,我希望将它自动部署到测试服务器,并手动部署到实时/临时服务器。

最好的方法是什么?

因为我使用的是C/ASP.NET,我应该在我的解决方案中添加一个Web部署项目吗?


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

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

  • 安装WebDeploy
  • 启用Web配置转换
  • 配置TeamCity BuildRunner
  • 配置TeamCity生成依赖项
  • 适用于我的应用程序的msbuild参数为:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    /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部署项目添加到解决方案中
    • 将解决方案配置管理器设置为具有"部署"生成配置
    • 让团队城市在运行生成时使用此生成开关
    • 喝一杯啤酒,为你的汽车魅力而惊叹


    我们使用Octopus Deploy来管理团队城市顶部的环境。

    作为一个构建过程,我们有一个章鱼发布和章鱼部署,在章鱼中创建一个发布,然后也会自动部署;

    由于章鱼正在管理我们的环境,它还提供了我们广泛使用的变量,并且可以使用相同的构建来共同创建一个新的环境。


    通常我要做的是创建一个wix安装程序。WIX项目可以用msbuild生成,因此应该没有问题。

    另外,我建议查看以下用于自动部署的msbuild扩展:

    http://www.codeplex.com/msbuildextensionpackhttp://msbuildtasks.tigris.org网站/

    我希望这有帮助。


    请考虑一个来自TeamCity开发人员的部署程序插件:http://confluence.jetbrains.com/display/tw/deployer+plugin