ホーム > 雑記, TFS > TFS Advent Calendar Day 4 SMTPプロキシを利用したTFSでのメール通知

TFS Advent Calendar Day 4 SMTPプロキシを利用したTFSでのメール通知


TFS Advent Calendarの4日目です。
サイトはこちら:http://atnd.org/events/22819

TFSには、TFS内で発生したイベントの通知をメールで受け取る機能が備わっています。

この機能を有効にすると、毎日のバックアップが正常に終了しているか、実行したビルドが正常に終了したかなどをメールで受け取れるので、TFSを使った開発環境を運用する上では必須の機能になるでしょう。詳しくは、MSDNの「電子メール通知の構成および SMTP サーバーの指定(http://msdn.microsoft.com/ja-jp/library/ms400808.aspx)」を参照してください。

SMTPサーバーが標準以外のポートを利用していると、うまく設定できない

ただ、このメール通知機能ですが、ポート番号などを指定できないのでセキュリティーの都合などでSMTPサーバーが標準のポート(25)以外を利用している場合は、うまくSMTPの設定が行えません。

image
SMTPサーバーに smtp.xxx.xxx:10025みたいな設定ができない

SMTPのプロキシになってくれるソフトを探す。

Windows 2008 R2に付属するIISのSMTPでもおそらく可能(未検証)なんですが、今回はBlackJumboDogというWebサーバーやら、SMTPサーバーやら、プロキシサーバーやらの昨日を備えたサーバーソフトの集合体みたいなソフトウェアを利用してみます。BackJumboDogは下記のURLからダウンロード可能です。

サッポロワークス BlackJumboDog http://www.spw02.sakura.ne.jp/spw/bjd/

このエントリーを書くのに検索したら、作者さんがCLR/Hで発表したスライドを発見しました。

Black jumbodog 運転と改造のすすめ http://www.slideshare.net/furuya02/b-lack-jumbodog

BlackJumboDogはC#のソースコードも公開されていて、独自サーバーをBlackJumboDogに組み込むことも可能なようです。

SMTPサーバーをTFSに立てて対応する

実行するとこんな画面が起動するので、メニューバーから、オプション>プロキシサーバー>SMTPを選択します。

image

この画面では、SMTPプロキシを利用するのチェックをいれ、こんな感じで設定してあげればいいでしょう。

No 設定項目 設定値 備考
1 クライアントから見たポート 25
2 接続先ポート 10025 接続するSMTPサーバーのサービスポートです。
3 接続先サーバー xxx.xxx.xxx.xxx 接続するSMTPサーバーのホスト名かIPアドレスです。

image

BlackJumboDogをサービス化する

BlackJumboDogのサービス登録の設定は、BlackJumboDogを管理者として起動し、メニューの起動/停止>サービス設定から行うことができます(サービス設定はBlackJumboDog停止中でないと選択できません)。

image

登録ボタンをクリックして、この状態になればサービスの登録は完了です。

image

TFSの管理コンソールからSMTPの設定を行う

Team Foundation Server 管理コンソールを開き アプリケーション層メニューで、電子メール通知の設定を行います。SMTPサーバーにlocalhostを、電子メール差出人アドレスに、有効な電子メールアドレスを設定してOKボタンをクリックします。

image

image

これでTFSで起動しているBlackJumboDog経由でメール通知が飛ぶようになります。

ここまでやったけれど、実は設定で簡単にポート番号を指定する方法があったりするのかな。。。

広告
カテゴリー:雑記, TFS タグ:
  1. まだコメントはありません。
  1. No trackbacks yet.

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中

%d人のブロガーが「いいね」をつけました。