お疲れ様です!前回はインストールまで出来ました。今回は実際にビルドをしてみます。バージョン管理はTFS 2017(TFVC)を使った場合の設定となります。
NuGet 設定
NuGet を使っているプロジェクトをビルドするには nuget.exe が必要なのでダウンロードします。
ダウンロード先:NuGet Gallery | Downloads
ダウンロードしたら C:\Windows\System32\ 配下に配置します。
64bit のときは C:\Windows\SysWOW64\ 配下にも配置しておきます。
TFS 設定
設定は Team Foundation Server plugin for Jenkins プラグインの Readme を参考にします。
ジョブ毎に指定するときはこの設定は飛ばしても大丈夫です。
認証情報の追加
Jenkins へログイン後、「認証情報」メニューの「System」-「Add domain」をクリックし接続先ドメイン名を追加します。
TFS プラグインの設定
「Jenkinsの管理」メニューの「システムの設定」-「TFS/Team Services」へ接続するコレクションの追加をします。
TFS の URL と先ほど追加ユーザーを選択し、「TEST CONNECTION」をクリックし「Success via SOAP API.」と表示されるのを確認します。
ERROR が表示されるときは入力内容を確認してください。どうしても接続できないときは Release 3.2.0 (Apr 14 2015) · jenkinsci-tfs-plugin · GitHub に変更してみてください。接続設定はこちらを参照してください。
MSBuild 設定
「Jenkinsの管理」メニューの「Global Tool Configuration」で MSBuild を追加します。
ここでは Visual Studio 2017 と .NET 4.0 の設定をします。他の .NET Framework バージョンを使う時はその分だけ追加設定します。
ジョブ作成
「新規ジョブ作成」でジョブを作成します。通常は「フリースタイル・プロジェクトのビルド」で作成します。
「General」で「古いビルドの破棄」を指定し容量削減をします。開発版、リリース版で履歴数をルールで決めればよいと思います。
「ソースコード管理」へソースの取得元を設定します。「Collection URL」、「Project path」を入力し「Use update」のチェックを外します。「Use update」は常に最新状態を取得するようにします。個別の接続情報にするときは「Credentials」を ”Manual” にしてユーザー情報を設定します。
「ビルド・トリガ」でチェックインしたときにビルドされるように設定します。
「ビルド」でビルドするソリューションを指定します。NuGet パッケージを追加しているときは最初に NuGet のリストアを実行します。
「ビルド後の処理」でビルド出力ファイルと容量削減のためワークスペースのクリアをしておきます。
TFS サービスフック設定
TFS の方でチェックインしたときにビルドできるようにサービスフックの設定をします。まずは設定に必要な APIトークンを取得します。
Jenkins のヘッダーにあるユーザー名をクリックし「設定」メニューで APIトークンを控えておきます。
TFSのプロジェクトサイトで「設定」の「サービスフック」をクリックします。
「サブスクリプションの作成」をクリックします。
サービスは「Jenkins」を選択して「次へ」をクリックします。
「トリガー」は「コードのチェックイン」で対象にするソリューションのフォルダを指定し「次へ」をクリックします。
「アクション」は JenkinsベースURL、自分のユーザー名、先ほど控えた API トークンまで入力するとビルド、統合レベルが表示されるので確認して「テスト」をクリックします。
今までの設定に問題がなければ成功と表示されます。失敗するときは今までの設定を見直してください。
ビルド
ソースを修正してチェックインするとビルドが実行されます。