4

忙しいエンタープライズ サーバーには、30 のエージェントで実行されている 550 のアクティブなビルド構成があります。他のビルドの実行中に一部のビルドが実行されないようにする方法が必要です。アーティファクトの依存関係は既に理解していますが、ビルドは相互に依存しておらず、サーバーのポート番号やデータベース接続などのリソースを共有しているだけであるため、これで問題は解決しません。一部のビルド構成は、同時に実行すると互いに競合するため、他の多くのビルドのいずれかが実行されているときにビルドを (実行するのではなく) キューに入れる方法を用意することで、これを防ぐ必要があります。

ビルドを特定のエージェントに制限するなど、すでにばかげたトリックを使用しています... db テーブルなどのフラグをチェックする最初のビルドステップを追加することを考えていますが、これにより、本当に必要なときに多くの失敗したビルドが追加されます。適切なビルド キューイングです。

何か不足していますか?この機能は既に TeamCity に存在しますか?

4

2 に答える 2

4

必要なものはTeamCity 8 Shared Resourcesの形で提供されているようです。ここから EAP にアクセスできます。

于 2013-06-02T19:09:15.520 に答える
0

550 の構成と 30 のエージェントに敬意を表します。

あなたはすでに解決策を見つけたと思います:

  1. エージェントごとに 1 つの環境を持つ
  2. 特定のエージェントの構成を割り当てる

どれだけの仕事か想像できました。しかし、複数の構成を同時に実行するという制限よりもはるかにクリーンで、はるかに高速に動作すると思います。

于 2012-09-01T06:44:23.147 に答える