1

対象環境: TFS 2015 Update 3

vNext ビルド システムを取得して、Release Management を介してデプロイされたビルドにのみ変更セットと作業項目を関連付けることができるようにしようとしています。ただし、TFS vNext ビルド システムは、ビルド時に (最後に成功したビルドに基づいて) これらのアイテムをビルドに自動的に関連付けます。古い XAML ビルド システムには、これをオフにする SkipGetChangesetsAndUpdateWorkItems というプロパティがありましたが、新しいシステムには存在しません。

したがって、vNext ビルド プロセスの最後にタスク/スクリプトを追加して、これらの関連付けを削除する必要があります (その後、同様のタスクをリリース管理に追加して、それらを再度関連付けます)。これは世界で最も単純なタスクではありませんが、TFS REST API を介して何かを実行できるように思われます。

しかし、私は一生、これらの関連がどのように形成されているかを知ることはできません. チェンジセットの JSON は関連するビルドについて言及していないようであり、ビルドの JSON は関連するチェンジセットのリストについて言及していないようです。

変更セット/作業項目とビルドの間のこれらの関連付けはどのように定義されていますか?

4

1 に答える 1

1

remove changesetのこれを達成できるような Rest API はありません。XAML ビルドでは、関連情報は と呼ばれる SQL テーブルに保存されます。このテーブルdto.tbl_BuildDefinitionに対して、変更セットを再関連付けしLastBuildUriLastGoodBuildUriとの値を変更しますLastGoodBuildLabel。詳細はこちらのリンクを参照してください:変更セットと作業項目をビルドに再関連付けするvNext ビルド定義については、SQL で同様のものを見つけられませんでした。ただし、関連付けが保存されている場所がいくつかあるはずです。

ワークアイテムとビルドの関連付けには、$WorkItemAssociatedURLなどと呼ばれるメソッドがあります。

$WorkItemAssociatedURL = $collectionURL + $project + “/_apis/build/builds/” + $BuildId + “/workitems?api-version=2.0”

$ResponseJSON = Invoke-RestMethod -Uri $WorkItemAssociatedURL -ContentType “application/json” -headers $headers -Method GET

詳細については、このブログを参照してください: vNext で作業項目との関連付けを構築する

于 2016-11-17T10:10:23.237 に答える