在与TeamCity构建之后如何部署?

时间:2021-02-04 16:37:33

I'm setting up TeamCity as my build server.

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

I have my project set up, it is updating correctly from subversion, and building ok.

我已经建立了我的项目,它正在从subversion中正确更新,并且构建ok。

So what's next?

下一步是什么呢?

Ideally, I'd like to have it auto deploy to a test server, with a manual deploy to a live/staging server.

理想情况下,我希望将其自动部署到测试服务器,并将其手动部署到活动/暂存服务器。

What's the best way to go about this?

最好的办法是什么?

Since I am using C#/ASP.Net, should I add a Web Deployment project to my solution?

因为我在使用c# /ASP。Net,我应该在我的解决方案中添加Web部署项目吗?

5 个解决方案

#1


58  

This article explains how to call Microsoft's WebDeploy tool from TeamCity to deploy a web application to a remote web server. I've been using it to deploy to a test web server and run selenium tests on check-in.

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

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

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

  1. Install WebDeploy
  2. 安装WebDeploy
  3. Enable Web config transforms
  4. 启用Web配置转换
  5. Configure TeamCity BuildRunner
  6. 配置TeamCity BuildRunner
  7. Configure TeamCity Build Dependencies
  8. 配置TeamCity构建依赖关系

The MSBuild arguments that worked for my application were:

对我的应用程序有效的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

#2


14  

I've written a pretty long blog post on this very topic that may interest you:

我写了一篇关于这个话题的很长的博文,你可能会感兴趣:

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

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

basically:

基本上:

  • install web deployment projects
  • 安装web部署项目
  • add web deployment project to your solution
  • 将web部署项目添加到解决方案中
  • setup the solution configuration manager to have a "Deployment" build configuration
  • 设置解决方案配置管理器以拥有一个“部署”构建配置。
  • get team city to use this build switch when running the build
  • 让team city在运行构建时使用这个构建切换
  • have a beer and wonder in glory at your automagical awesomenesss
  • 喝杯啤酒,在你的自动游戏中体验一种荣耀

#3


10  

Typically what I do is to create a Wix installer. A Wix project can be build with MsBuild so you should have no problems there.

通常我所做的是创建一个Wix安装程序。Wix项目可以使用MsBuild构建,这样您就不会遇到任何问题。

Also I would recommend looking at the following MsBuild extensions for the automated deployment:

此外,我还建议您查看以下自动部署的MsBuild扩展:

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

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

I hope this helps.

我希望这可以帮助。

#4


10  

We are using Octopus Deploy to manage our environments on top of Team city.

我们使用章鱼部署来管理团队城市的环境。

As a Build Process we have a Octopus Release and Octopus Deploy Creating a Release in Octupus which is then also automatically Deployed;

作为构建过程,我们有一个章鱼释放和章鱼部署在Octupus中创建一个释放然后自动部署;

Since Octopus is managing our Environments it also provided variables which we use extensively and can use the same build to create a new environment all together.

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

#5


3  

Please also consider a Deployer plugin from one of the TeamCity developers: http://confluence.jetbrains.com/display/TW/Deployer+plugin

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

#1


58  

This article explains how to call Microsoft's WebDeploy tool from TeamCity to deploy a web application to a remote web server. I've been using it to deploy to a test web server and run selenium tests on check-in.

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

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

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

  1. Install WebDeploy
  2. 安装WebDeploy
  3. Enable Web config transforms
  4. 启用Web配置转换
  5. Configure TeamCity BuildRunner
  6. 配置TeamCity BuildRunner
  7. Configure TeamCity Build Dependencies
  8. 配置TeamCity构建依赖关系

The MSBuild arguments that worked for my application were:

对我的应用程序有效的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

#2


14  

I've written a pretty long blog post on this very topic that may interest you:

我写了一篇关于这个话题的很长的博文,你可能会感兴趣:

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

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

basically:

基本上:

  • install web deployment projects
  • 安装web部署项目
  • add web deployment project to your solution
  • 将web部署项目添加到解决方案中
  • setup the solution configuration manager to have a "Deployment" build configuration
  • 设置解决方案配置管理器以拥有一个“部署”构建配置。
  • get team city to use this build switch when running the build
  • 让team city在运行构建时使用这个构建切换
  • have a beer and wonder in glory at your automagical awesomenesss
  • 喝杯啤酒,在你的自动游戏中体验一种荣耀

#3


10  

Typically what I do is to create a Wix installer. A Wix project can be build with MsBuild so you should have no problems there.

通常我所做的是创建一个Wix安装程序。Wix项目可以使用MsBuild构建,这样您就不会遇到任何问题。

Also I would recommend looking at the following MsBuild extensions for the automated deployment:

此外,我还建议您查看以下自动部署的MsBuild扩展:

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

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

I hope this helps.

我希望这可以帮助。

#4


10  

We are using Octopus Deploy to manage our environments on top of Team city.

我们使用章鱼部署来管理团队城市的环境。

As a Build Process we have a Octopus Release and Octopus Deploy Creating a Release in Octupus which is then also automatically Deployed;

作为构建过程,我们有一个章鱼释放和章鱼部署在Octupus中创建一个释放然后自动部署;

Since Octopus is managing our Environments it also provided variables which we use extensively and can use the same build to create a new environment all together.

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

#5


3  

Please also consider a Deployer plugin from one of the TeamCity developers: http://confluence.jetbrains.com/display/TW/Deployer+plugin

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