- 追加された行はこの色です。
- 削除された行はこの色です。
[[Open棟梁Project>http://opentouryo.osscons.jp/]] - [[マイクロソフト系技術情報 Wiki>http://techinfoofmicrosofttech.osscons.jp/]]
-[[戻る>Jenkins]]
* 目次 [#f55b1c93]
#contents
*概要 [#r3357d42]
自動的にGithubのリポジトリを取得してCIするJenkinsサーバの構築手順。
自動的に[[GitHub]]のリポジトリを取得して[[CI]]する[[Jenkins]]サーバの構築手順。
*ダウンロードとインストール [#rf2f3218]
**前提環境 [#g24fc7fd]
インストール開始前に以下の環境を準備する。
-Windows OS
-Windows OS~
Jenkinsの前提 Windows OS
-Java SDK (JDK)~
Antが原因で JREでは動作しない。
-Git クライアント
-Git クライアント - for GitHubプラグイン
--'git' コマンド)が通常のパスで動作すること( in /usr/bin or /usr/sbin )
--もし、その他の場合 ( /opt/local/bin/git か /usr/local/bin/git )~
/usr/bin に、シンボリックリンクを作成すること(例: sudo ln -s /opt/local/bin/git /usr/bin/git).
-Graphviz
-Graphviz - for [[Doxygen]]プラグイン~
http://www.graphviz.org/
-.NET Framework(CI対象のversion)
-FxCop
**Jenkins [#v4fd5e30]
-https://jenkins-ci.org/にアクセス
-Native packages [Windows]からダウンロード
**Jenkinsのインストール [#v4fd5e30]
-https://jenkins-ci.org/にアクセスする。
-Native packages [Windows]からダウンロードする。
-[jenkins-バージョン番号.zip]からjenkins.msiを取り出す。
-jenkins.msiをダブルクリックして、デフォルトの設定でインストールする。
-ローカルのWebサーバ上でJenkinsのサイトが実行されブラウザでダッシュボードHPが表示される。
**プラグイン [#na92cb2a]
**プラグインのインストール [#na92cb2a]
***追加するプラグイン [#b32891c2]
-MSBuild プラグイン
-HTML Publisher プラグイン
-GitHub プラグイン
-NUnit プラグイン
--GitHunのリポジトリからコードを取得する。
-[[MSBuild]] プラグイン
--VisualStudioを使用せずにVisual Studio Project solution fileをビルドする。
-[[NUnit]] プラグイン
--ビルドしたプログラムにテストコードを実行しテスト結果を出力する。
-Violations プラグイン
-FxCop Runner プラグイン
-Doxygen プラグイン
-Email notification プラグイン
--FxCopを実行し、DLL(アセンブリ)に対して静的コード解析を行う。
-[[Doxygen]] プラグイン
--[[Doxygen]]を実行し、プログラムのドキュメンテーションを行う。
-HTML Publisher プラグイン
--各種プラグインが生成したHTMLをダッシュボードに表示する。
-Email-ext プラグイン
--email notificationsを送る。
-Credentials プラグイン
--Credentialsを追加して認証できるようにする。
***プラグインの追加手順 [#afdfb749]
ダッシュボードHP上にあるManage Jenkins をクリックする。
-オンライン時、一般的なプラグインを追加する場合、
--Availableタブを選択し、次のセクションでプラグインを選択する。
--Install without restart をクリックしプラグインをインストール。
--[Install without restart]ボタンをクリックしプラグインをインストール。
-オフライン時やカスタム・プラグインの場合、
--Advancedタブを選択し、プラグインをアップロードする。
**プラグインの設定手順 [#a1108584]
Manage Jenkins セクッションの Configure Systemをクリックしプラグインを設定。
*Jenkinsの設定 [#lbfc4f2e]
**プラグインの設定 [#a1108584]
Manage Jenkins セクッションの [Configure System]ボタンをクリックしプラグインを設定。
***GitHub プラグイン [#s8086894]
-Gitのセクションで、
-Nameフィールドを入力する。
-[Path to executable]にgit.exeのパスを設定。
-[Name]フィールドを入力する。
-[Path to executable]に"git.exe"のパスを設定する。
***MSBuild プラグイン [#wf370ba6]
-MSBuild のセクションで、
-[MsBuildInstallations…]をクリック。
-Nameフィールドを入力する。
-[Path to MSBuild]にMSBuild.exeのパスを設定。
***[[MSBuild]] プラグイン [#wf370ba6]
-[[MSBuild]] のセクションで、
-[MsBuildInstallations…]をクリックする。
-[Name]フィールドを入力する。
-[Path to MSBuild]に"MSBuild.exe2のパスを設定する。
***FxCop プラグイン [#w7d37d4b]
-FxCop のセクションで、
-[FxCopInstallations…]をクリック。
-Nameフィールドを入力する。
-[Path to FxCopCmd.exe]にFxCopCmd.exeのパスを設定。
-[FxCopInstallations…]ボタンをクリックする。
-[Name]フィールドを入力する。
-[Path to FxCopCmd.exe]に"FxCopCmd.exe"のパスを設定する。
***Graphviz プラグイン [#nf4c8b8c]
-Dependency Graph Viewer Configuration のセクションで、
-[Enable rendering with graphviz]チェック ボックスをオン。
-[Dot Executable Path]に"Graphvizxx.xx\bin\dot.exe"のパスを設定。
-[Dot Executable Path]に"Graphvizxx.xx\bin\dot.exe"のパスを設定する。
***Email notification プラグイン [#pb05a3a2]
-E-mail Notification のセクションで、
-SMTP serverを"smtp.gmail.com"など、SMTPサーバのアドレスを設定する。
-[SMTP server]に"smtp.gmail.com"など、SMTPサーバのアドレスを設定する。
-Advanced… をクリックし下記を設定する。
-[Advanced…]ボタンをクリックし下記を設定する。
--Use SMTP Authenticationを選択
--User Nameを入力
--Passwordを入力
--[Use SSL]チェックボックスをオン
-"smtp.gmail.com"を指定した場合、~
Googleの設定でメールの送信の許可が必要になる。
---安全性の低いアプリがアカウントにアクセスするのを許可する~
https://support.google.com/accounts/answer/6010255?hl=ja
---Less secure apps - Account settings~
https://www.google.com/settings/security/lesssecureapps
**その他の設定手順 [#ybd36c63]
***ユーザの作成と管理 [#bc443498]
Jenkins CI サイトは、アクセス権とセキュリティのレベルを指定してユーザの作成と管理ができる。
-ユーザの作成
--Manage JenkinsページでManage Credentialsをクリックしユーザ作成する。
--Manage Jenkinsページで[Manage Credentials]ボタンをクリックしユーザ作成する。
--Manage CredentialsページでAdd Credentials をクリックし Username with passwordを選択する。
--Manage Credentialsページで[Add Credentials]ボタンをクリックし[Username with password]を選択する。
--Username with password のセクションに下記を設定する。
---Scopeを選択
---Usernameを入力
---Passwordを入力
---Descriptionを入力
---Saveをクリック
---[Scope]を選択
---[Username]を入力
---[Password]を入力
---[Description]を入力
---[Save]ボタンをクリック
-ユーザの管理
--Manage JenkinsページでManage Usersをクリックしユーザの作成・削除・修正をする。
--Manage Jenkinsページで[Manage Users]ボタンをクリックしユーザの作成・削除・修正をする。
--Users ページ
---ユーザの設定
---ユーザの削除
-ユーザの設定
--Manage JenkinsページでConfigure Global Securityをクリックしユーザのアクセスレベルと権限を設定する。
--Manage Jenkinsページで[Configure Global Security]ボタンをクリックしユーザのアクセスレベルと権限を設定する。
---[Enable security]チェックボックスをオン、以下は設定例。
---TCP port for JNLP slave agentsのセクションで[Random]オプションボタンを選択
---Security Realm のセクションで[Jenkins' own user database]オプションボタンを選択
---Authorization のセクションの[Project-based Matrix Authorization Strategy ]オプションボタンを選択
---User/group to addを選択
---[Apply] と [Save] ボタンをクリック
*プロジェクトの作成と設定 [#v66fb027]
**プロジェクトの作成 [#i2fa535f]
-Jenkins Dashboard ページでNew Item をクリックし新しいプロジェクトを作成する。
-Jenkins Dashboard ページで[New Item]ボタンをクリックし新しいプロジェクトを作成する。
-New Item ページで下記を設定する。
--[Item name]フィールドを入力
--[Freestyle project]オプションボタンを選択
--[OK]ボタンをクリック
**プロジェクトの設定 [#da9a53ff]
新プロジェクトの設定方法について説明する。
**プロジェクトのプラグイン設定 [#da9a53ff]
プロジェクトのプラグインの設定方法について説明する。
***MSBuild プラグインの設定 [#w40724aa]
MSBuild プラグインの設定方法について説明する。
-Configuration ページのBuild セクションの[Add build step]ボタンをクリックし、
-[Build a Visual Studio project or solution using MSBuild]を選択する。
-Build a Visual Studio project or solution using MSBuildのセクションで以下を設定する。
-- MSBuild Versionに[[MSBuildのName>#wf370ba6]]を入力する。
--MSBuild Buid File に Visual Studio Project solution fileのシステムパスを入力する。
--詳細なビルドオプションを設定するには、[Advanced...]ボタンをクリックする。
***GitHub プラグインの設定 [#he70bdc6]
GitHub プラグインの設定方法について説明する。
-Configuration ページの Source Code Management の Git セクションで GitHub プラグインを設定する。
-Gitのセクションで以下を設定する。
--Repository URLに 'https://github.com/XXX/YYY/'.を入力する。
--Repository URLに 'https://github.com/組織名/リポジトリ名/'.を入力する。
--[Add]ボタン をクリックしユーザの資格情報を追加する。
--GitHubのブランチ名や参照などの詳細なオプションを設定するには、Advanced をクリック
--GitHubのブランチ名や参照などの詳細なオプションを設定するには、[Advanced]ボタン をクリック
--Repositoryの設定
---Add Repository をクリックしGitHub にリポジトリを追加
---Delete Repository をクリックしGitHubのリポジトリを削除
---Branch Specifier (blank for ‘any’) にGitHubのリポジトリに存在するブランチ名を入力
---[Add Repository]ボタン をクリックしGitHub にリポジトリを追加
---[Delete Repository]ボタン をクリックしGitHubのリポジトリを削除
---[Branch Specifier (blank for ‘any’)]にGitHubのリポジトリに存在するブランチ名を入力
--Branchの設定
---Add Branch をクリックしリポジトリにブランチを追加
---Delete Branchをクリックしリポジトリにブランチを削除
---[Add Branch]ボタンをクリックしリポジトリにブランチを追加
---[Delete Branch]ボタンをクリックしリポジトリにブランチを削除
***ビルドトリガの設定 [#rdaf5b1b]
*プロジェクトのビルド設定 [#h3cc79a1]
プロジェクトのビルドの設定方法について説明する。
**ビルド・トリガの設定 [#rdaf5b1b]
ビルド・トリガの設定方法について説明する。
-Configuration ページの Build Triggersセクションで定期的に実行するためのビルド・トリガを設定する。
-設定例 :
--Build Periodically (定期的にビルド)を選択
--Schedule に「0 0 * * 1」を入力する~
---毎週月曜日の 12.00 AM JST.にビルドが起動される。
---このスケジュールは、crontabの書式で記述される。
---see : https://ja.wikipedia.org/wiki/Crontab
**ビルド・ステップの設定 [#vdb0be18]
ビルド・ステップの設定方法について説明する。
-Configuration ページのBuild セクションの[Add build step]ボタンをクリックし、以下のビルド・ステップを追加可能。
--Build a Visual Studio project or solution using [[MSBuild]]
--Execute Windows batch command
--Execute Shell
--[[FxCop]] exec.
--Generaet documentation using [[Doxygen]]
--Invoke Ant
--Invoke top-level Marven target
--Set build status to "pending" on GitHub commit
--, etc.
***バッチファイルを設定する場合 [#v76cbac0]
ビルド・ステップにおける[Windows batch command]の設定方法について説明する。
-Configuration ページのBuild セクションの[Add build step]ボタンをクリックし[Execute Windows batch command]を選択する。
-Execute Windows batch commandセクションで以下を設定する。
--Windowsのバッチファイル名をCommandに入力する。
--
***[[MSBuild]] プラグインの設定 [#w40724aa]
ビルド・ステップにおける[[MSBuild]] プラグインの設定方法について説明する。
-Configuration ページのBuild セクションの[Add build step]ボタンをクリックし、
-[Build a Visual Studio project or solution using MSBuild]を選択する。
-[Build a Visual Studio project or solution using MSBuild]のセクションで以下を設定する。
-- [[MSBuild]] Versionに[[MSBuildのName>#wf370ba6]]を入力する。
--[[MSBuild]] Buid File に Visual Studio Project solution fileのパスを入力する。
--詳細なビルドオプションを設定するには、[Advanced...]ボタンをクリックする。
***FxCop プラグインの設定 [#g091aeeb]
ビルド・ステップにおけるFxCop プラグインの設定方法について説明する。
-Configuration ページのBuild セクションの[Add build step]ボタンをクリックし
-[FxCop exec]を選択して FxCop プラグインを設定する。
-[FxCop exec]セクションで下記を設定する。
--[FxCop Name]を入力する。
--[Assembly Files]に対象となる Assembly Files の path を入力(1行 1 path)する。
--[Output XML]に出力XMLファイルのパスを入力する。
***[[Doxygen]] プラグインの設定 [#j3b212e1]
ビルド・ステップにおける[[Doxygen]] プラグインの設定方法について説明する。
-Configuration ページのBuild セクションの[Add build step]ボタンをクリックし
-[Generate documentation using Doxygen]を選択して [[Doxygen]] プラグインを設定する。
-[Generate documentation using Doxygen]セクションで下記を設定する。
--[Doxygen installation]フィールドに名称を入力する。
--[Doxyfile path]にDoxygenの設定ファイルのパスを入力する。
--詳細なオプションを設定するには、[Advanced…]ボタンをクリックする。
**ビルド後アクションの設定 [#h5d6baa7]
ビルド後アクションの設定方法について説明する。
-Configuration ページのPost-build Actions セクションの[Add post-build action]ボタンをクリックし、以下のビルド後アクションを追加可能。
--, etc.
***Publish [[NUnit]] test result reports プラグインの設定 [#wfa4e698]
ビルド後アクションにおける[[NUnit]] プラグインの設定方法について説明する。
-Post-build Actions セクションの[Add post-build action]ボタンをクリックし
-[Publish [[NUnit]] test result reports]を選択して Dashboardに[[NUnit]]のプラグインによって生成されたHTMLの出力を表示させる。
-Publish [[NUnit]] test result reports セクションで[Add]ボタンをクリックし下記を設定する。
--[Test report XMLs]に[[NUnit]]のレポートファイルのパスを入力する。
***[[Doxygen]] プラグインの設定 [#z7253e56]
ビルド後アクションにおける[[Doxygen]] プラグインの設定方法について説明する。
-Configuration ページのPost-build Actions セクションのPost-build Actions セクションの[Add post-build action]ボタンをクリックし
-[Publish Doxygen]を選択して Dashboardに[[Doxygen]]の出力を表示させる。
-Publish Doxygen セクションで下記を設定する。
--[Doxyfile path]にDoxygenの設定ファイルのパスを入力する。
--詳細なオプションを設定するには、[Advanced…]ボタンをクリックする。
***[[Publish HTML reports]] プラグインの設定 [#k4e672c6]
ビルド後アクションにおける[[Publish HTML reports]] プラグインの設定方法について説明する。
-Configuration ページのPost-build Actions セクションのPost-build Actions セクションの[Add post-build action]ボタンをクリックし
-[Publish HTML reports]を選択して Dashboardに[[Doxygen]]などのプラグインによって生成されたHTMLの出力を表示させる。
-Publish HTML reports セクションで[Add]ボタンをクリックし下記を設定する。
--[HTML directory to archive]を入力
--[Index page[s]]を入力
--[Report title]を入力