複数のビルドマシンがあり、それぞれが単一のTeamCityビルドエージェントを実行しています。各マシンは非常に強力であり、同じマシンで複数のビルドエージェントを実行したいと考えています。
仮想化を使用せずにこれは可能ですか?これをサポートするTeamCityの高品質な代替手段はありますか?
回答:
はい、それは可能です:
1台のマシンに複数のエージェントをインストールできます。それらは別々のエージェントとして機能し、TeamCityは、同じマシンを共有するという事実を利用せずに、異なるエージェントとしてそれらと連携します。1つのエージェントをインストールした後、次の条件が満たされていれば、追加のエージェントをインストールできます。
絶対チェックアウトディレクトリが指定されているビルド構成がないことを確認してください(または、そのようなビルド構成で「クリーンチェックアウト」オプションが有効になっていて、並行して実行できないことを確認してください)。
Windowsで、追加のエージェントをサービスとしてインストールするには、[agent dir] \ launcher \ conf \ wrapper.conf を変更してプロパティを変更してコンピューター内で個別の名前を付けます。
ステップバイステップガイドについては、このブログ投稿もご覧ください。
http://handcraftsman.wordpress.com/2010/07/20/multiple-teamcity-build-agents-on-one-server/
一番の答えは正しい方法ですが、これをより簡単に完了したい場合は、TeamCityAgent Chocolateyパッケージを使用して、エージェント名、エージェントフォルダー、およびポートを指定する--params
と、構成ファイルのセットアップとプルが処理されます。server-jre
パッケージを介して必要なバージョンのJavaで。
--force
Chocolateyは現在、同じアプリケーションを異なる構成で「新規」インストールとしてインストールすることを理解していないため、これに対する1つの注意点は、最初のエージェントの後のインストールで使用する必要があることです。
--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