web-dev-qa-db-ja.com

TeamCityでビルドした後にデプロイする方法は?

TeamCityをビルドサーバーとして設定しています。

プロジェクトをセットアップしました。Subversionから正しく更新され、正常にビルドされています。

それでは、次は何ですか?

理想的には、ライブ/ステージングサーバーに手動で展開し、テストサーバーに自動展開するようにします。

これについて行く最善の方法は何ですか?

C#/ ASP.Netを使用しているので、Web Deploymentプロジェクトをソリューションに追加する必要がありますか?

72
Neil N

この記事では、TeamCityからMicrosoftのWebDeployツールを呼び出して、WebアプリケーションをリモートWebサーバーにデプロイする方法について説明します。私はこれを使用してテストWebサーバーにデプロイし、チェックイン時にSeleniumテストを実行しました。

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

  1. WebDeployをインストールする
  2. Web構成変換を有効にする
  3. TeamCity BuildRunnerを構成する
  4. TeamCityビルドの依存関係を構成する

私のアプリケーションで機能した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
59
Mike Valenty

私はあなたに興味があるかもしれないこのまさにトピックに関するかなり長いブログ投稿を書きました:

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

基本的に:

  • web展開プロジェクトをインストールする
  • ソリューションにWeb展開プロジェクトを追加する
  • 「構成」ビルド構成を持つようにソリューション構成マネージャーをセットアップする
  • ビルドを実行するときにチームシティにこのビルドスイッチを使用させる
  • あなたの魔法の素晴らしさを称えてビールを飲み、不思議に思う
14
Doug

Octopus Deploy を使用して、Team Cityの上で環境を管理しています。

ビルドプロセスとして、OctopusリリースとOctopus Deployがあり、Octupusでリリースを作成します。これも自動的にデプロイされます。

Octopusは環境を管理しているため、広範囲に使用する変数を提供し、同じビルドを使用して新しい環境を一緒に作成できます。

10
Amit

通常、私がやることはWixインストーラーを作成することです。 WisプロジェクトはMsBuildでビルドできるので、問題はないはずです。

また、自動展開用の次のMsBuild拡張機能を確認することをお勧めします。

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

これがお役に立てば幸いです。

10
Burt

TeamCity開発者の1人のDeployerプラグインも検討してください。 http://confluence.jetbrains.com/display/TW/Deployer+plugin

3
KIR