失敗した Team Foundation ビルドの終了時に作業項目の作成を無効にするにはどうすればよいですか?
質問
Team Foundation Build を使用していますが、問題追跡に TFS をまだ使用していないため、失敗したビルドでの作業項目の作成を無効にしたいと考えています。これを行う方法はありますか?ビルド タイプの TFSBuild.proj ファイル内の作業項目情報をコメント アウトしようとしましたが、うまくいきませんでした。
解決
これを TFSBuild.proj の PropertyGroup 内に追加してみてください。
<SkipWorkItemCreation>true</SkipWorkItemCreation>
これがどのように機能するかについて興味がある場合は、Microsoft.TeamFoundation.Build.targets には次の内容が含まれています。
<Target Name="CoreCreateWorkItem"
Condition=" '$(SkipWorkItemCreation)'!='true' and '$(IsDesktopBuild)'!='true' "
DependsOnTargets="$(CoreCreateWorkItemDependsOn)">
<PropertyGroup>
<WorkItemTitle>$(WorkItemTitle) $(BuildNumber)</WorkItemTitle>
<BuildLogText>$(BuildlogText) <a href='file:///$(DropLocation)\$(BuildNumber)\BuildLog.txt'>$(DropLocation)\$(BuildNumber)\BuildLog.txt</a >.</BuildLogText>
<ErrorWarningLogText Condition="!Exists('$(MSBuildProjectDirectory)\ErrorsWarningsLog.txt')"></ErrorWarningLogText>
<ErrorWarningLogText Condition="Exists('$(MSBuildProjectDirectory)\ErrorsWarningsLog.txt')">$(ErrorWarningLogText) <a href='file:///$(DropLocation)\$(BuildNumber)\ErrorsWarningsLog.txt'>$(DropLocation)\$(BuildNumber)\ErrorsWarningsLog.txt</a >.</ErrorWarningLogText>
<WorkItemDescription>$(DescriptionText) %3CBR%2F%3E $(BuildlogText) %3CBR%2F%3E $(ErrorWarningLogText)</WorkItemDescription>
</PropertyGroup>
<CreateNewWorkItem
TeamFoundationServerUrl="$(TeamFoundationServerUrl)"
BuildUri="$(BuildUri)"
BuildNumber="$(BuildNumber)"
Description="$(WorkItemDescription)"
TeamProject="$(TeamProject)"
Title="$(WorkItemTitle)"
WorkItemFieldValues="$(WorkItemFieldValues)"
WorkItemType="$(WorkItemType)"
ContinueOnError="true" />
</Target>
この機能は独自のビルド スクリプトでオーバーライドできますが、Microsoft は先頭に便利な SkipWorkItemCreation 条件を提供しており、これを使用してターゲット全体の実行をキャンセルできます。
他のヒント
tfs2010 以降を使用している場合は、ビルド定義自体でこれを行うことができます。
の中に 「プロセス」タブ ビルド定義セットの Create Work Item on failure
財産を false
(「詳細」セクションの下)
所属していません StackOverflow