TFSに特定のタスクを新しい作業項目に自動的に追加させる方法は?


9

私たちは職場でTFSを使用して、ソースコードを管理し、開発を追跡しています。

バグややるべきことがあるときはいつでも、少なくとも次の2つのタスクを常に行う必要があります。

  • 作業をテストするか、テストが必要かどうかを判断します。
  • 現在のリリースのリリースノートを更新するか、特定のエントリが必要かどうかを決定します。

他のタスクは、実行中の作業に固有のものですが、新しい作業項目を追加するときに、「テスト」と「リリースノート」を常に入力していることに気づきました。

新しいバグまたは作業項目が作成されるたびにTFSにこれら2つのタスクを自動的に追加させる方法はありますか?まれなケースでは、これらのタスクは不要であり、単にその作業項目に対して完了または削除のマークを付けることができるため、これを自動化することによる影響については心配していません。

私は周りを見回しましたが、PowerShellスクリプトを作成して欠落しているすべての作業項目にタスクを追加できる可能性があるようです。

回答:


11

重要な注意点

このためのすぐに使える機能はありません。通常、私は「テスト」、「デプロイ」などの一般的なタスクから人々を遠ざけ、仕事を通してずっとテストについて考えさせ、定義させるようにします途中で実行したい中間テスト。

リリースノートやデプロイメントなどの一般的なものは完全に自動化できます。おそらくpowershellも使用しています;)。

そのため、Powershell-fuを使用してこれらの一般的なタスクと悪いタスクを自動化することに重点を置いてもらうようにしています。

答え

もちろん、それ自体はあなたの質問に対する答えではありません。だからここに本当の答えは、はい、あるPowerShellはオプションです、あなたに呼び出すことができるのREST APIまたはそのクライアントオブジェクトモデルと使用クエリー鍋項目へと新しい作業項目を作成します。APIは広く使用されており、ブログの投稿などに関して多くの情報があります。または、同じクライアントオブジェクトモデルを使用する小さなコンソールアプリケーションを作成することもできます。

また、アラートからSOAP APIを使用して、ワークアイテムが追加または変更されたときに通知を受け取り、必要な子ワークアイテムを追加することで、コードに作用させることができます。

SOAP APIに代わるものは、サーバー自体に統合されるTFSアグリゲーターのようなものを使用することです。同じTFSクライアントオブジェクトモデルを使用します。私はそれを構築しているチームの一員であり、2013u2 +と2015+の両方をリリースしました。TFSアグリゲーターを使用すると、C#スクリプトのPowershellを使用して、作業項目の変更を処理するルールを記述できます。自動化の観点からクライアントオブジェクトモデルを操作する際のよくある落とし穴を防ぐために、すでに多くの作業が行われています。

TFSアグリゲーターは、TFS 2013(更新2以降)のサーバーサイドプジンであり、ルールに基づいて新しい作業項目を作成する機能を備えています。タスクの例はここにあります:

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.