Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to deploy after a build with TeamCity?

I'm setting up TeamCity as my build server.

I have my project set up, it is updating correctly from subversion, and building 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?

like image 407
Neil N Avatar asked Dec 31 '09 23:12

Neil N


People also ask

How does TeamCity integration with Octopus?

About Octopus Deploy Just like TeamCity makes build automation easy, Octopus Deploy makes deployment automation easy. TeamCity builds the code and runs tests, while Octopus takes care of: Distributing applications to all the remote machines, securely. Environment-specific configuration, like connection strings.


2 Answers

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.

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

  1. Install WebDeploy
  2. Enable Web config transforms
  3. Configure TeamCity BuildRunner
  4. Configure TeamCity Build Dependencies

The MSBuild arguments that worked for my application were:

/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 
like image 139
Mike Valenty Avatar answered Oct 04 '22 09:10

Mike Valenty


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

basically:

  • install web deployment projects
  • add web deployment project to your solution
  • setup the solution configuration manager to have a "Deployment" build configuration
  • get team city to use this build switch when running the build
  • have a beer and wonder in glory at your automagical awesomenesss
like image 23
Doug Avatar answered Oct 04 '22 08:10

Doug