3

Team Foundation Server 2008 のインストールと、チーム ビルド サービスを備えた別のマシンがあります。

チーム ビルドを作成し、Visual Studio またはコマンド ライン (正常に完了した場合) で手動でトリガーできます。ただし、ビルド定義ですべてのチェックインをビルドするオプションがオンになっているにもかかわらず、ソース ツリーにチェックインしてもビルドはトリガーされません。更新: 明確にするために、CI オプションが有効になっている完全に機能するビルド定義がありました。

ソース ツリーは、MainフォルダーまたはBranch\branchNameフォルダーの下にあるコードを使用して、非常に単純な方法で構成されます。コードの各ブランチ (メインを含む) には、含まれるソリューション ファイルに関連する標準のチーム ビルド定義があります。デフォルト設定からわずかに変更されているのは、ビルド サーバーの作業フォルダーだけです。つまり、メインの場合、パスの長さにより、これはServer:"$\main" Local:"c:\build\main"になります。

私が推測できた唯一のこと (可能性のある赤いニシン) は、開発者のワークスペースに奇妙な点がある可能性があるということです。現在、各開発者は Server:"$\" を local:"c:\tfs\" にマップしているため、すべてのブランチに対して 1 つのワークスペースしかありません。これは主に、一部の開発者が以前に陥った再マッピングの問題を回避するためです。しかし、これが CI にどのように影響するかはわかりません。

更新:間接的に答えを見つけました。以下をお読みください

4

3 に答える 3

4

いくつかの行き止まりの後、私は自分で答えを見つけました。最後に、別の問題を修正しているときに、意図せずにこれを修正しました。基本的に、ビルドの単体テストの自動実行を有効にしたところです。テストは正常に実行されますが、すぐに、ビルド ドロップ フォルダーにレポートできないというメッセージがビルドに表示されます。

何が起きていたかというと、Build サービスは 1 つのアカウントで実行され、一連の権限を持っています。一部の機能は、実際には TFSService アカウントによって駆動されます。大量の許可を渡した後、テストが報告されました。次に、チェックイン時にビルドがトリガーされ始めたことに気付きました。どのパーミッションがこれを修正したのか正確にはわかりませんが、うまくいけば、この答えが少なくとも人々を正しい道に導くでしょう.

ワークスペース マッピングの競合が原因で、いくつかのビルドが失敗し始めたことにもう 1 つ注意してください。

これが他の誰かに役立つことを願っています。

于 2008-09-11T13:19:35.507 に答える
0

TFS アプリケーション サーバーのログにエラーはありますか? 発砲しようとしたが失敗したことを示すものはありますか?

于 2008-09-08T22:32:56.903 に答える
0

チーム エクスプローラーからチーム プロジェクトを選択し、Builds フォルダーを右クリックします。新しいビルド定義を選択し、トリガー タブを選択します。ラジオ ボタンを [チェックインごとにビルドする (ビルドを増やす)] に移動します。

詳細はこちら

MSDN の方法: ビルド定義を作成する

于 2008-09-06T16:05:53.387 に答える