1

ビルドプロセスの最後にステータスメールを送信するカスタムコードアクティビティがあります。これまでのところ、関連するチェンジセットと作業項目を取得できないように見えることを除いて、動作しています。

現在、以下のコードを使用してチェンジセットと作業項目を取得しようとしていますが、空のリストが返されます。

IList<IChangesetSummary> changesetSums = InformationNodeConverters.GetAssociatedChangesets(buildDetails);
IList<IWorkItemSummary> workItemSums = InformationNodeConverters.GetAssociatedWorkItems(buildDetails);

AssociateChangesetsAndWorkItemsアクティビティが実行および終了し、変更セットと作業項目がVisual Studioのビルドの概要に表示された後、CodeActivityは正常に実行されています。

4

1 に答える 1

2

問題は、ビルドプロセス自体で利用可能な参照を使用するか、新しいIBuildDetailを個別にクエリするかのいずれかで、ビルド全体が完了するまでIBuildDetailが更新されないことです。プロセスの終わり近くでPowershellスクリプトを実行するときに両方を試しました(動作はエージェントとコントローラーの両方で同じでした)。

私が行った解決策は、 associatedChangesets変数を使用することでした。これには、デフォルトのプロセステンプレートのAssociateChangesetsAndWorkItemsアクティビティの結果が含まれています。これにより、関連するチェンジセットの配列が得られます。

この情報はすでに存在しているはずなので、関連する作業項目の取得は簡単です。ただし、作業項目が必要なかったため、これはテストしていません。

于 2012-02-27T13:38:10.290 に答える