ossで作成するチーム開発環境
DESCRIPTION
Trac Lightning & GitTRANSCRIPT
OSSで作成するチーム開発環境
石坂忠広@ishisaka
opcdiary.net
自己紹介• 静岡から来ました• IT勉強会のスタッフをしています– NT-Committee2会員 (関東 )–静岡 ITPro勉強会スタッフ–静岡 Developers勉強会スタッフ– JAZUG静岡支部長
• 仕事は SE• 詳しくは以下を参照ください– http://opcdiary.net/?page_id=2
Agenda
• チームでの開発に必要なもの• TracLightningの導入• Gitの導入
チーム開発で必要なものチームでの仕事
一人とチームの違い
• コミュニケーション–合意–常識の共有
• 共有–知識–スケジュール–コード–ハードウェア
コミュニケーション
• 会話–席が隣。同じ場所で仕事をする。–電話 (テレカン、ビデオ会議… )
• 電子メール• IRC, Messenger• Twitter–新幹線で席が隣なら話した方がいいんじゃね ?
知識の共有
ルール
製品仕様
アーキテクチャ
バグ
ナリッジ
スケジュールの共有
Rev. 1.0 Release
スケジュール
進捗の入力
計画の承認・進捗の承認計画の入力
お菓子買わなくっちゃ…
コードの共有
ソースコードリポジトリ
Pull, Commit, Pushレビュー
ふむ。ふむ。これは参考になる!
Pull, Commit, Push
参照して HTML化
ちゃんとバグは治ってるかな ?
コード
ハードウェアの共有
ソースコードリポジトリ 参照
ビルド
パッケージング
JOBの登録
JOBの確認
失敗…
納品
ビルドサーバー
その実現はチーム開発環境で!
チーム開発環境での実現
• ナリッジの共有– Wiki– Issue Tracking
• コードの共有– SCM(Software Configuration Management System)–ブラウザ経由でのコード表示
• 作業の共通化– CI(Continuous Integration Tool)
Trac LightningTrac Lightningで構築するチーム開発環境
チーム開発環境のソフトウェア• プロプライエタリ– Visual Studio Team Foundation Server(MS)– Star Team(マイクロフォーカス )– IBM Rational Team Concert(IBM, Rational)
• オープンソースソフトウェア– Trac(Python)– Redmine(Ruby)
参考:http://en.wikipedia.org/wiki/Comparison_of_issue-tracking_systems
有償製品と OSSとの比較
• 管理できるプロジェクトの規模–有償:小規模 (数名 )から大規模 (千人規模 )まで
– OSS:中小規模プロジェクト• 機能–有償:有償セミナーが必要なぐらい高機能– OSS:本買えば何とかなりますよ。後はWEBで
• 導入コスト–それお高いんでしょ?– OSSなら導入 0円
できるだけ手間をかけずに!
• ただでも手間はかけられない• ただでさえ皆さん忙しいです• Trac, Redmineはただでも手間がかかるんでしょう?
• Linuxとかよくわかりません! (>_<)• サーバー OSとかありませんけど?• MySQLとか SQL Serverとかっ
Trac Lightning
• TracLightningを使えば簡単にチーム開発環境を構築できます。
• Windowsでインストーラーを動かすだけ!
• Tracを中心としたチーム開発スイート– Trac(Issue Tracking , Wiki, スケジュール )– Subversion(SCM)– Marven(Builder)– Jenkins(CI)
Trac Lightningの動作環境• Windows– XP, Vista, 7, 2003R2, 2008, 2008R2– IISはインストールしない– Windows Firewallでは必要ポートを開ける– Pythonや Apatchは TracLightningのインストーラーが入れる。
• Excel• Java Runtime• Visual Studio
Trac
• オープンソースのプロジェクト管理ツール• スウェーデンの EdgewallSoftware社が開発している
• 主な基本機能–チケット管理– Wiki–リポジトリブラウザ
Trac
• 開発言語– Pythonで開発されている。
• データベース– SQLiteを使用している。–バックアップ等での煩雑さは無いが、大規模な仕様では不安
– Postgre, MySQLを使用することも可能• 標準のバックアップコマンドでは DBまで面倒を見ないので注意
Tracでできること
• Wiki– Wikiは複数のメンバーが同一ページを効率的に編集・構築するためのシステム。
– Wikiは HTMLの書式ではなく、簡易化されたWiki 記法にて記述する。
– TracのWikiはチケット等との連携、コードリポジトリとの連携、プログラミングコードの文法ハイライトの機能などを備えている。
–チーム開発のルールなどの共有情報の保存・共有に使用する。
Tracでできること• チケットシステム– TODOやバグを「チケット」として管理する– 1タスク 1チケット–チケットには概要(表題)、報告者、詳細、分類、
優先度、マイルストーン、コンポーネントといった属性がつけられている
–チケットにはファイル添付が可能• バグ発生時のスクリーンショットなど
–チケットは作業ワークフローと連動した状態を持っている。• 新規チケット登録→作業者割り当て→作業中→作業完了
Tracでできること
• 標準のチケットワークフロー
Tracでできること
• チケットシステム–属性を設定することで、チケットを細かく管理することができる• 属性の値をソートや検索の条件にできる• 担当者の割り付けやマイルストーンの割り付けによる進捗の管理• 属性は設定変更により任意に追加できる
– TracLightningではカレンダー、ガントチャート機能のために開始日、終了日属性が追加されている
Tracでできること
• リポジトリブラウザ– Tracに登録された単一のリポジト上のディレクトリやファイルを参照することができる
–特定リビジョンでの変更内容やリビジョンログ、リビジョン間の Diffなどを確認することができる
–ソースコードはシンタックスハイライトされるし、 Diff表示でも変更点が色づけされる
Tracでできること
• タイムライン–作業履歴• Tracに加えられた様々な変更
– チケットの追加– チケットの状態変化– Wikiの変更– マイルストーンの変更– リポジトリへのチェックイン
• 誰が何をしたかを時系列に記録
Tracでできること
• ロードマップ–プロジェクトスケジューリングのための基本機能
–「マイルストーン」を管理する–チケットとマイルストーンをひも付けすることで、作業のスケジューリングと進捗管理を行う
Tracでできること
• 権限管理– Tracやリポジトリに対して誰が、何をできるのかを管理することができる
–認証には Apatch ( HTTPサーバ)の HTTP認証を用いる
• システムの拡張–プラグインによるシステム拡張がおこなえる
TracLightningでの追加• TracLightningではあらかじめいくつかの改
良、 Pluginが追加されている。–日本語化–カレンダー・ガントチャート• チケットベースでの進捗の管理につかう• もちろんマイルストーンとの関係性も確保• これで Redmineには負けない
– Excelインポート• チケットの情報を Excelからインポート、エクスポートできる– Excel 厨な上司に最適
TracLightningでの追加
• TracLightningではあらかじめいくつかの改良、 Pluginが追加されている。–チケットの親子関係• これで Redmineに負けない
– GUIの管理画面– GUIでのワークフローカスタマイズ– Jenkins への対応–など
DEMO, TRAC
はまらないコツ• UTF-8– Apatchなどの設定ファイルはいわゆる UTF-
8N–メモ帳で INIファイル類を編集しない–メモ帳で UTF-8のテキストを編集すると BOMがついてしまう
• Windows Firewall– Trac, Subversion, Hudsonで使用するポートはしっかりあけておく
–空けるか聞いてくると思いますけど
はまらないコツ
• Web Deployment Agent Service– Microsoft Web Deploy 2.0 用のリモート エージェント サービス
– VS2010 SP1などでインストールされる–何気にこの人が Port 80をがっつり捕まえていたりするので、殺しておく
• SQL Server– httpエンドポイントは使っちゃだめ
運用を快適に
• バックアップ–バッチコマンドがある–改造して使い勝手がいいように
• 仮想化– 仮想化しておくと使い勝手いいかもしれません– 仮想マシンごとテンプレ化して用意しておく
SCM(Software Configuration Management System)/ VCS(Version Control System)
• TrackLightningでは Subversionが自動的にインストール、環境構築される
• Subversion– Tracは原則 Subversionのためのツール
• クライアントをどうするか?– Visual Studioから
• AnkhSVN
– Windowsの Explorerから• TartoiesSVN
– どちらもそれぞれメリットがあるので両方使う。
SCM/VCS
• SCM/VCS用プラグイン– Git(後述 )– Mercurial(Hg)– Bazzar– Team Foundation Server• TFSを Subversionとして使用する
ビルドツール
• Apatch Mavenが TrackLightningの標準– Javaの世界では標準的 (?)–プラグインによる拡張• 様々なパッケージング• サーバーへのデプロイ
–規範による構成の一般化• ですが、MSクラスタでは一般的ではないし、使わないだろうからこれ以上の説明なし
Continuous Integration Tool
• TracLightningでは Jenkinsが CIツールとしてインストールされる
• Jenkins• Javaで作られている CIツール• Plugin 拡張• MS Build plugin• NUnit plugin• MStest plugin • Visual Studioでの開発でも問題なし。
DEMO, JENKINS
Trac, Trac Lightningにかけているところ
• 品質 /進捗の統計化–データ収集に関する機能が標準でない• 原則的に品質に関する数値管理は Jenkinsとそのプラグイン任せ。• 工数 /進捗といったチケットの情報は Excelでとれる。
–この辺はMSの TFSとか Rational 諸製品のような高価な有償ツールにはかなわないところかも
GIT分散型バージョン管理システム
Computer A中央 SCM
Version Database
集中と分散
集中 SCM 分散 SCM
Version 1
Version 2
Version 3
file
Checkout
Computer B
file
Checkout
中央 SCMVersion Database
Version 1
Version 2
Version 3
Computer A
Version Database
Version 1
Version 2
Version 3
file
Computer B
Version Database
Version 1
Version 2
Version 3
file
CVS, SVN, TFS
Git,Hg,Bazzar
Git
• Linux Kernelの開発ために作られ、そこで実際に使用されている分散型の SCM
• 差分では無くスナップショット– コミットの都度ファイルレベルでのスナップショットが作られるイメージ
• ほとんどの作業がローカル– ほとんどの作業ではローカルの作業用ファイルとデータベースだけが必要で、サーバーを必要としない。• たとえばMS VSSでは常に中央のサーバーを要求する。
Windows と Git
• 必ずしも相性は良くありません• Gitの根本的な思想は Unix 文化–ツールの組み合わせで処理を実現する–コマンドライン
• UTF-8を前提としたデータベース構造– Windowsでのファイル名の扱い–コミットログのようなテキストデータの処理
• 良くも悪くもまだ歴史が浅い (Win 上 )
msysGitか Cygwinか
• MinGWで開発された Gitの実装• Windows ネイティブなバイナリ• Git+MinGWの Unix発祥のツール群で構成• 多バイトのファイル名に対応していない
msysGit
• Windows 上に擬似的な Linux環境を構築する• Cygwin 向けツールは Cygwin用のバイナリ• Gitはそのツールの一つCygwin
msysGitのインストール
• 通常のWindowsインストーラーなので特に心配はいらない
• 後はWebで!– Visual StudioでGitを使用できるようになるまで
–パスは通せ–インストール先は変更しよう• Vista以降 Program Filesの下は面倒すぎる
クライアントツール
• コンテキストメニューからの Bash 呼び出し• Gitk 相当の GUIツールmsysGit
• 安心の Tortoiseシリーズ、通称亀 Git• Gitというより TortoiseSVNに近い使用感• Explorer 統合TortoiseGit
• Gitでの操作を GUI化し、より使いやすく• Explorer 統合• VS 統合GitExtensions
Gitと Trac(Trac Lightning)との統合
公開・共有用リポジトリの
作成
Trac への Git Pluginの追加 Trac.iniの編集 Httpdの
再起動
公開・共有リポジトリの構築
• Trac Lightningのコマンドプロンプトを起動
• 以下のコマンドを実行– > cd /d C:\TracLight\projects
> mkdir git> cd git> mkdir SampleProject> git init –bare> git update-server-info
• これで公開用の bareリポジトリを作成
Tracに Gitプラグインを追加する
• Trac Lightningのコマンドプロンプトを起動• 以下のコマンドを実行– > easy_install http://trac-hacks.org/svn/gitplugin/0.12
• 0.12は現状の最新なので、これは最新のものに合わせる。
trac.iniの編集
• Tracのリポジトリブラウザで Gitのリポジトリを見られるように設定を変更して、gitプラグインを有効にする
• C:\TracLight\projects\trac\SampleProject\confをメモ帳では無いテキストエディタで開く
• Trac.iniを編集する
編集内容[trac]repository_type = gitrepository_dir = C:\TracLight\projects\git\SampleProjectrepository_sync_per_request = (default)
[git]git_bin = C:\Git\bin\gitgit_fs_encoding = utf8
[components]tracext.git.* = enabled
Httpdの再起動
• サービスマネージャで” TracLightning”サービスを再起動する。– Windwos Serviceとして運用している場合
Gitを HTTPで公開する
• なぜ HTTPなのか?– Gitのリモートへのリポジトリ公開は sshで行うのが一般的
– Windowsには標準で ssh環境が無い• sshサーバの構築には Cygwinが必要
–ユーザーが慣れていない–管理的にも httpの方が敷居が低い気がする– Trac Lightningをインストールすれば、既に
Apacheがある• Tracのユーザー管理が使用できる
Gitを HTTPで公開する
git リポジトリの設定変更
Apacheの設定変更
httpdの再起動
Gitリポジトリの設定変更
• 公開しようとしているリポジトリのディレクトリにある” config”ファイルを、エディタで開く
• 以下の内容を追記[http]receivepack = true
• この設定で、 http経由の pushを受け付ける設定となる
Apacheの設定変更
• HTTPでの公開はWevDAVでと CGIを使う方法がるが、 pushも可能なように CGIでの公開として設定
• 設定した内容は以下の内容– git-httpd-backendを CGIとして動作させ、それを /git/というエイリアスに割り当てる。
–認証にはダイジェスト認証を使い、その設定は Trac Lightningのものを使用する
Apacheの設定変更
• C:\TracLight\CollabNetSVN\httpd\confに以下の内容を追加
SetEnv GIT_PROJECT_ROOT "C:\TracLight\projects\git"SetEnv GIT_HTTP_EXPORT_ALL
ScriptAlias /git/ "C:\Git\libexec\git-core\git-http-backend.exe/"SetEnv REMOTE_USER=$REDIRECT_REMOTE_USER<Location /git> Options +ExecCGI AuthType Digest AuthName trac AuthUserFile "C:\TracLight\projects\trac.htdigest" Require valid-user Allow from all</Location>
httpdの再起動
• サービスマネージャで” TracLightning”サービスを再起動する
DEMO GIT
No Code, No Life.Presented by Tadahiro Ishisakahttp://opcdiary.netCode licensed under the Apache License v2.0. Documentation licensed under CC BY 3.0.
参考資料
参照サイト (Trac Lightning)
• The Trac Project– http://trac.edgewall.org/
• Trac Lightning– http://sourceforge.jp/projects/traclight/wiki/Front
Page• Shibuya Trac– http://sourceforge.jp/projects/shibuya-trac/wiki/F
rontPage
参照サイト (Jenkins)
• Jenkins– http://jenkins-ci.org/
• 日本 Jenkins ユーザー会– http://build-shokunin.org/
• Hudson で MSBuild を動かす - かおるんダイアリー– http://d.hatena.ne.jp/kaorun55/20081218/12295
90139
参照サイト (Subversion)
• Apache Subversion– http://subversion.apache.org/
• Ankhsvn– http://ankhsvn.open.collab.net/
• TortoiseSVN– http://tortoisesvn.tigris.org/
参照サイト (Git)
• Git – Fast Version Control System– http://git-scm.com/
• msysGit– http://code.google.com/p/msysgit/
• TortoiseGit– http://code.google.com/p/tortoisegit/
• Git Extensions– http://code.google.com/p/gitextensions/
参照サイト (Git)
• Git Source Control Provider– Visual Studionのソースコントロールプロバイ
ダとして VSとmsysGitの仲立ちをする– VSから Git Extensionsや TortoiseGitの呼び出し– http://gitscc.codeplex.com/
• Pro Git( 日本語 ) Apressからでている書籍の日本語訳– http://progit.org/book/ja/
OPC Diary
• Visual Studioで Gitを使用できるようになるまで– http://opcdiary.net/?page_id=5677
• Trac Lightningと Gitを組み合わせる– http://opcdiary.net/?p=6111
• Full installer for unofficial Unicode Git for Windows 1.7.8というもの– http://opcdiary.net/?p=6142
Trac参照書籍
• 入門 Trac 第 2 版– 高山 恭介 ( 著 )–出版社 : 秀和システム (2009/08)– ISBN-10: 4798023507– ISBN-13: 978-4798023502–発売日: 2009/08
Trac参照書籍
• Trac入門 ――ソフトウェア開発・プロジェクト管理活用ガイド–菅野 裕 ( 著 ), 今田 忠博 ( 著 ), 近藤 正裕
( 著 ), 杉本 琢磨 ( 著 ) – 出版社 : 技術評論社 (2008/9/18)– 言語 日本語– ISBN-10: 4774136158– ISBN-13: 978-4774136158– 発売日: 2008/9/18
Subversion参照書籍
• 実用 Subversion 第 2 版 – C. Michael Pilato ( 著 ), Ben Collins-Sussman ( 著 ),
Brian W. Fitzpatrick ( 著 ), 宮本 久仁男 ( 監訳 ) ( 監修 ), 朝枝 雅子 ( 翻訳 ), 浜本 階生 ( 翻訳 )
–出版社 : オライリージャパン ; 第 2 版 (2009/7/27)
–言語 日本語– ISBN-10: 4873114144– ISBN-13: 978-4873114149–発売日: 2009/7/27
Git参照書籍
• Gitによるバージョン管理–出版社 : オーム社 (2011/10/25)–言語 日本語– ISBN-10: 4274068641– ISBN-13: 978-4274068645–発売日: 2011/10/25
Git参照書籍
• 実用 Git – Jon Loeliger ( 著 ), 吉藤 英明 ( 監訳 ) ( 翻訳 ), 本間 雅洋 ( 翻訳 ), 渡邉 健太郎 ( 翻訳 ), 浜本 階生 ( 翻訳 )
–出版社 : オライリージャパン (2010/2/19)–言語 日本語– ISBN-10: 4873114403– ISBN-13: 978-4873114408–発売日: 2010/2/19
Jenkins参照書籍
• Jenkins実践入門– 佐藤 聖規 ( 著 , 監修 ), 和田 貴久 ( 著 ), 河村
雅人 ( 著 ), 米沢 弘樹 ( 著 ), 山岸 啓 ( 著 ), 川口 耕介 ( 監修 )
– 出版社 : 技術評論社 (2011/11/11)– ISBN-10: 4774148911– ISBN-13: 978-4774148915– 発売日: 2011/11/11
Jenkins参照書籍
• Jenkins– John Ferguson Smart ( 著 ), Sky 株式会社 玉川 竜
司 ( 翻訳 ) –出版社 : オライリージャパン (2012/2/22)–言語 日本語– ISBN-10: 4873115345– ISBN-13: 978-4873115344–発売日: 2012/2/22
追加の参考資料
Linuxでの Trac, JenkinsKANONプロジェクト
Linuxでの Trac 運用
• KANON– Linux 上で実現する TracLightinig–ウォーターフォール開発、アジャイル開発
(SCRUM) 両方に対応– SCMの対応が豊か• はじめから SVN, Hg, Bazzar, Gitに対応
– Javaベースの GUIツール– http://kanon.ultimania.org– http://kanon.ultimania.org/trac/kanon
Linuxでの Trac 運用
• KANON–ダウンロード• http://kanon.ultimania.org/hg/KanonConductor/
–対応プラットフォーム• Ubuntu 10.10• RedHat Enterprise Linux 6.0 (Webサーバ構成 )• Debian GNU/Linux• CentOS 5
–インストール方法• http://kanon.ultimania.org/?p=1
WINDOWSでの GIT 設定
Git bashのための .inputrc 設定例
set kanji-code sjisset convert-meta offset meta-flag onset output-meta on
#うまくいかなければあきらめる
Git bashのための .profile 設定例
alias ls='ls --color=auto --show-control-chars'alias ll='ls -l'alias l='ls -CF'alias emacs='emacs -rv'
.gitconfigの設定例[merge]
tool = kdiff3[mergetool "kdiff3"]
path = c:/Program Files (x86)/KDiff3/kdiff3.exe[diff]
guitool = kdiff3[difftool "kdiff3"]
path = c:/Program Files (x86)/KDiff3/kdiff3.exe[core]
editor = \"C:/Program Files (x86)/GitExtensions/GitExtensions.exe\" fileeditor
autocrlf = true
なぜ今 Gitなのか?
• GitHubがホットでクールだから• 分散 SCMの快適さ–バザール的な開発に対応している–作業環境の変化→集中では構成を維持しにくい• ノマドスタイル• SOHO• 在宅勤務
–これはそのまま OSSの開発スタイルに近づいている
Unix的な流儀に慣れる
• Unix的な流儀に慣れる–これがWindowsだけを使ってきた人が Gitを使う上での一番の大きな壁かもしれません
– Gitに限らず多くの OSSやフリーソフトウェアは Unix 文化を背景にしています
–したがって、文化としての Unixを理解していくことが便利に使用していくための一番のこつだったりします
Jenkinsと Git
Jenkinsで Gitを使用する
• Git Pluginの導入– https://
wiki.jenkins-ci.org/display/JENKINS/Git+Plugin• Jenkinsの設定– Git.exe へのフルパスを記入
Jenkinsで Gitを使用する
• プロジェクトでの設定–リポジトリの URLを指定• 認証が必要な場合は認証データも URLに含める
Jenkins MSBuild Pluginの設定
JenkinsでのMSBuild 設定
• MSBuildプラグインの追加• Jenkinsの全体設定–複数バージョンのMSBuildが設定できる
JenkinsでのMSBuild 設定
• プロジェクトでの設定–使用するバージョンとビルド対象、パラメータを使用する
–パラメータで”を使うときはバックスラッシュでエスケープする
JenkinsでのMSBuild 設定
• MSBuildの Property 設定– /p:DebugSymbols=true • テスト、カバレッジを組み込むのであれば PDBの
出力は必須– /p:ReferencePath=\” ~ \”• VSで設定した参照設定は .suoに書かれ他環境では引き継がれないので、 GACに登録されず、ローカルにバイナリの無いライブラリへのリファレンスを追加する。
Jenkinsでの自動テストとカバレッジ、静的コード解析
Jenkinsでの NUnitの設定
• Nunitプラグインの導入• プロジェクトでの設定–コマンドラインランナーの起動• ビルドの追加でWindowsバッチコマンドを選択する。• XMLファイルを明示的に指示する。
Jenkinsでの NUnitの設定
• コマンド例–これはカバレッジを組み込まない場合
"C:\Program Files (x86)\NUnit 2.6\bin\nunit-console.exe" %WORKSPACE%\HokurikuDemo\TestHokurikuDemo\bin\Release\TestHokurikuDemo.dll /xml=nunit-result.xml /framework=net-4.0 exit 0
Jenkinsでの Nunitの設定
• テスト結果を収集するように設定
Jenkinsでの NUnitの設定
• ビルド結果表示
Jenkinsでの NUnitの設定
• テスト結果表示
Jenkinsでの NUnitの設定
• テスト履歴の表示
OpenCover
• OSSでフリーのコードカバレッジツール• X64環境に正式に対応している• .NET Framework 4.0 対応• 現状コンソールツールのみ• 結果表示には Report Generatorを使用する
OpenCoverと Jenkins
• プラグイン無し• ReportGeneratorの出力を HTML Publisherプラグインで表示させるようにする
OpenCoverと Jenkins
• OpenCoverから Nunitを起動して、単体テストとカバレッジの測定を行う。
cd /d %WORKSPACE%del result.xmldel TestResult.xmldel /s /q .\html\*.*"C:\Program Files (x86)\OpenCover\OpenCover.Console.exe" -register -target:"C:\Program Files (x86)\NUnit 2.6\bin\nunit-console.exe" -targetargs:"%WORKSPACE%\HokurikuDemo\TestHokurikuDemo\bin\x64\Release\TestHokurikuDemo.dll /framework=net-4.0" -targetdir:"%WORKSPACE%\HokurikuDemo\TestHokurikuDemo\bin\x64\Release" -filter:"+[HokurikuDemo]*" -output:result.xml
"C:\bin\reportgen\bin\reportgenerator" "result.xml" .\html
copy "%WORKSPACE%\HokurikuDemo\TestHokurikuDemo\bin\x64\Release\TestResult.xml" "%WORKSPACE%"
OpenCoverと Jenkins
• HTML Publisherプラグインの設定
OpenCoverと Jenkins
• 結果表示
OpenCoverと Jenkins
FxCopと Jenkins
• Windows バッチコマンドの実行ビルド手順を追加し、 FxCopを動作させる
• Violationプラグインで FxCopの設定を行う
FxCopと Jenkins
• FxCopを動作させる"C:\Program Files (x86)\Microsoft Fxcop 10.0\FxCopCmd.exe" /file:%WORKSPACE%\HokurikuDemo\HokurikuDemo\bin\Release\HokurikuDemo.exe /out:fxcop_result.xml
FxCopと Jenkins
• Violationプラグインの設定
FxCopと Jenkins
FxCopと Jenkins
FxCopと Jenkins
Task Scanner Plugin
• TODO, FIXMEなどのキーワードがついた残作業を示すコメントを集計して、作業漏れを確認できるようにする
• 指定されたキーワードのカウントと、キーワードのあった場所のハイライト
Task Scanner Plugin
Task Scanner Plugin
• プロジェクト毎に設定–対象ファイルのフィルタリング–対象キーワードと優先度–ソースファイルに合わせた文字エンコード指
定 (高度な設定 )
Task Scanner Plugin
• プロジェクトトップでの結果表示
Task Scanner Plugin
• サマリー
Task Scanner Plugin
• 詳細
Jenkins Plugin RSS
• TracLightningだと Jenkinsのプラグインインストール用の RSSの URIが登録されていない場合がある
• URIは以下の通り– http://updates.jenkins-ci.org/update-center.json
• 設定場所–プラグインマネージャ→高度な設定