web-dev-qa-db-ja.com

同じコンピューターで複数のTeamCityエージェントを実行していますか?

複数のビルドマシンがあり、それぞれが単一のTeamCityビルドエージェントを実行しています。各マシンは非常に強力であり、同じマシンで複数のビルドエージェントを実行したいと考えています。

これは可能ですか?仮想化を使用せずに?これをサポートするTeamCityの高品質な代替品はありますか?

82
ripper234

はい、 可能

複数のエージェントを単一のマシンにインストールできます。これらは別々のエージェントとして機能し、TeamCityは同じマシンを共有しているという事実を利用せずに、異なるエージェントとして動作します。 1つのエージェントをインストールした後、次の条件が満たされていれば、追加のエージェントをインストールできます。

  • エージェントは個別のディレクトリにインストールされます
  • 彼らは独特の仕事と一時ディレクトリを持っています
  • buildAgent.propertiesは、nameおよびownPortプロパティに異なる値を持つように構成されます

絶対チェックアウトディレクトリが指定されているビルド構成がないことを確認してください(または、そのようなビルド構成で "クリーンチェックアウト"オプションが有効になっており、並行して実行できないことを確認してください)。

Windowsで、追加のエージェントをサービスとしてインストールするには、[agent dir]\launcher\conf\wrapper.confを変更して、プロパティを変更し、名前をコンピュータ:

  • wrapper.console.title
  • wrapper.ntservice.name
  • wrapper.ntservice.displayname
  • wrapper.ntservice.description
127
CrazyCoder

また、ステップバイステップガイドについては、このブログ投稿をご覧ください。

http://handcraftsman.wordpress.com/2010/07/20/multiple-teamcity-build-agents-on-one-server/

29
kay.one

一番の答えは正しい方法ですが、これをもっと簡単に完了したい場合は、 TeamCityAgent Chocolatey package を使用して、エージェント名、エージェントフォルダー、ポートを--paramsとして指定し、構成ファイルのセットアップと、必要なバージョンのJavaをserver-jreパッケージ経由で取り込む]を処理します。

Chocolateyは現在、「新規」インストールとは異なる構成で同じアプリケーションをインストールすることを理解していないため、最初のエージェントのインストール後は、--forceを使用する必要があります。

また、--version 2.0.1-beta-05を使用する必要があります。これはまだテスト段階にありますが、すぐにベータ版から抜け出す必要があります。

2番目のエージェントの完全インストールの例:choco install teamcityagent --force -y --params 'serverUrl=http://teamcity.local:8111 agentName=AgentUno agentDir=C:\buildAgentUno ownPort=9091' --version 2.0.1-beta-05

1
dragon788