3

この問題は何度も報告されていますが、私が見つけた解決策はうまくいきませんでした。セットアップ:

  1. TFS 2010 から TFS2013 へのアップグレードを実行しました。アップグレード マニュアルの 1 つで説明されているように、データベースと分析サービス キーをバックアップし、別のボックスに復元しました。この新しいボックスを boxTFS2013と呼びましょう。最初にセットアップ全体がそこで行われ、いくつかの共有ポイントの問題は別として、それは成功しました. しかし、ビルド サービスはこの問題を報告し始めました。

    「診断アクティビティ ログをドロップ場所にコピー中にエラーが発生しました。詳細: HTTP 要求が 00:01:40 後にタイムアウトしました。」

    ビルド サービスを含め、TFS に関連するほとんどすべてがアカウントDOMAIN\TFSServiceで実行されます。NTNetworkAuthorityには何もありません

  2. 2 番目のステップとして、新しいビルド サーバーboxBUILD2013を作成し、そこにビルド サービスをインストールし、boxTFS2013からビルド サービスをアンインストールしました。再びまったく同じ問題 - ビルドは部分的に成功し、同じログ コピーの失敗が発生します。

現在の設定は次のとおりです。

TFS2013、SQL、Sharepoint は boxTFS2013 にあります( Sharepoint は移動しようとしています)。TFS2013 はDOMAIN\TFSService アカウントで実行されています。

ビルド サービスはboxBUILD2013にセットアップされます。1 つのコントローラーと 2 つのエージェントがあります。エージェントの作業フォルダーは d:\BUILD で、アカウントはDOMAIN\TFSServiceです。ドロップ フォルダーは同じボックス e:\BUILDS にあります (現在の問題を解決した後に名前を変更する予定です)。

通常、ビルド エージェントにドロップ フォルダーへの書き込み権限を与えることで、この問題を解決します。これは最初からそうでした (そのドメイン アカウントには常にアクセス権がありました) が、問題は解決しません。問題がアクセス許可に関連付けられていないことを確認するために、アカウント Everyone に d:\BUILD および e:\Builds に対する完全な制御権を与えました。

私が知る限り、xml ビルド定義には異常は何も含まれていません。ビルドはファイルを本来あるべき場所にドロップし、部分的な失敗はログでのみ発生します。私は本当にアイデアがありません。誰でもアドバイスできますか?

4

2 に答える 2

3

解決策: C:\Program Files\Microsoft Team Foundation Server 12.0\Tools\TFSBuildServiceHost.exe.config
を追加して、タイムアウトを増やします。

<appSettings> 
<add key="ServerDrop.MaxRequestTimeInSeconds" value="300"/>
</appSettings>

ハーバート

于 2014-10-14T09:16:27.077 に答える
0

ある程度解決できました。

どうやら、ビルド サーバーは、ビルドが成功した後、TFS サーバーに対して何らかの HTTP Post を実行します。それがなぜなのか、それが何であるかはまったくわかりません。TFS サーバーが何らかの理由でビジー状態の場合、これは失敗します。それは妨害されたネットワークである可能性があり、別の何かである可能性があります。私たちのケースでは、TFS が実行されているボックスはパワー不足でした。そのボックスに4GB RAMを追加すると(ビルドではなくTFSのものです!)、この問題は解決しました。したがって、TFS サーバーに十分な RAM がなかったため、基本的にビルド サーバーは失敗し、エラーをスローしていました。現在、非常に強力なボックスを使用しているにもかかわらず、SQL がバケットロードのエラー ログをスローするという問題がまだたくさんありますが、これを解決できることを願っています。

于 2014-05-16T13:40:15.257 に答える