かげさんの111から始まるHistory » 初音ミク冒険記 » Jenkinsの設定をいろいろと変更してみた、が、あと一歩が分かんない

« 昨夜のあれは「魔女の一撃」だったらしい | トップページ | 初音ミク冒険記の第1章のプレイにおける素朴な疑問 »

Jenkinsの設定をいろいろと変更してみた、が、あと一歩が分かんない

■現在モヤモヤしていること
Jenkinsのビルド・トリガで「リモートからビルド」というのができるらしく
ネットで調べると、認証トークンというのが必要っぽい。

が、そもそも、ビルド・トリガで「リモートからビルド」というのが無い。
なぜだ?

これができれば、10分毎のSVNのポーリングとかしなくて良いのに・・・

■追加でできるようにしたことをまとめてみた

★Jenkins Sounds pluginの利用
10分おきのSVNポーリングでビルドが動くので
若干タイムラグがあるから、ビルド結果が音でわかるようにした。

ビルドが成功すると、初音ミク冒険記の「レベルアップ」の効果音
ビルドが失敗すると、初音ミク冒険記の「ゲームオーバー」の効果音
が鳴るようにしている。

<事前準備>
なお、ファイル形式はwavで2つのwavファイルを同じフォルダにおいてZipファイルにする。
ポイントはフォルダごと固めちゃダメってところ。
格納フォルダを開いて、上記の2ファイルを選択した状態でZIPにする必要がある。

<プラグインのインストール>
「Jenkinsの管理」-「プラグインの管理」から
「Jenkins Sounds plugin」をインストール

<プラグインの設定>
インストール後「Jenkinsの管理」-「システムの設定」で「Jenkins Sounds」のところの設定を行う。
file://プロトコルで事前準備したzipファイルを指定して、「適用」ボタンをクリック。

※左側のサイドメニューの「Sounds」が目立つのでそっちで指定するのかと思ったら
 指定したファイル名を保存するボタンがなくて、一時困ったのだが、「システム設定」だったのね。

<ビルド後の処理の設定>
「Jenkins Sounds」を追加し
On BUild result:Success、チェックボックスはSuのみ、サウンドは前述のものを設定
同様にOn BUild resultがAbort、Failure、Unstableには、
対応するチェックボックスにチェックしてゲームオーバーの効果音を設定

これで音が鳴るので結構いいかも!

★Jenkins Persona Pluginの利用
<事前準備>
もともとTraclightningに入っていた
C:\TracLight\projects\hudson\.hudson\persona\hudmi
を参考にし
C:\TracLight\projects\hudson\.hudson\persona\Miku
に以下のようなファイルを用意する。
Jenkinspersona0

<プラグインのインストール>
「Jenkinsの管理」-「プラグインの管理」から
「Jenkins Persona Plugin」をインストール

<ビルド後の処理の設定>
「Associate Persona」を追加し、
Persona:ミクさん
Location:Right-Side(Not background)
を指定する。

これで、ビルド結果画面で、こんな画像が表示される。
Jenkinspersona

★Luaスクリプトの文法チェック
これは特にプラグインは使わずにJenkinsとLuaコンパイラを使う。

「ソースコード管理」の「Subversion」のリポジトリURLを以下のように設定
file:///F:/Visual Studio 2008/SVNrep/trunk/SCENARIO

※Cppcheckと違って、SCENARIOフォルダがチェック対象なのでパスが違う。

「ビルド・トリガ」で「SCMをポーリング」を選択
「スケジュール」はCppcheckの時と同じく「0-59/10 * * * *」

「ビルド」は「Windowsバッチコマンドの実行」を選択
コマンドに以下の内容を記述
F:
cd "F:\Visual Studio 2008\Projects\HatsuneMikuBoukenki\SCENARIO\"
"F:\Visual Studio 2008\Projects\lua5.1\bin\luac5.1.exe" -p *.lua

「ビルド後の処理」では、PersonaとSoundsプラグインの指定を行う

なお、エラー発生時の文法エラーの内容は
ビルドの履歴を選択し、「コンソール出力」を選択すると
F:\Visual Studio 2008\Projects\lua5.1\bin\luac5.1.exe: SearchBase.lua:1: '=' expected near '
といったエラーの内容を確認できる。

※基本的にSVNにはテストしたものしかコミットしないので
 文法エラーが残っていることはないのだが
 複数の修正をしていてコミット漏れを見つけた時に
 勢いで未テストのLuaをコミットしてしまった時に
 早期に問題を見つけるための保険みたいなもの

★StepCounter Pluginの追加
*.cpp, *.h, *.luaの拡張子のファイルのステップ数を数える。

<事前準備>
https://github.com/jenkinsci/stepcounter-plugin/tree/57da29cfa10a2f0f4cd62c544353044e343391d7
の右側にある「Download.zip」ボタンをクリックして
プラグインファイルをダウンロード。

ダウンロードしたファイルを展開しておく。

<プラグインのインストール>
「Jenkinsの管理」-「プラグインの管理」から「高度な設定」タブを開く

プラグインのアップロードにある「ファイルを選択」ボタンで
展開後フォルダのtargetにあるstepcounter.hpiを選択し、アップロードする。

<ビルド後の処理の設定>
CppcheckのビルドだとLuaのフォルダも含めてSVNのリポジトリを見るので
Cppcheckのビルドに組み込む。

「Step Counter」を選択する(拡張子ごとに設定が必要なので3回やる)
カウント対象のファイルパターンリスト:CPP(2つ目の設定:H、3つ目の設定:Lua)
解析するファイルパターンを指定:*.cpp(2つ目の設定:*.h、3つ目の設定:*.lua)
解析するファイルのエンコーディングを指定:MS932

これでCppcheckのビルドの都度、実行行数合計、コメント行数合計、空行数合計、総計を確認できる。
各拡張子ごとのタブで指定した拡張子のファイル一覧よりソース1本ごとの値も確認できるので便利。

★Trac Publisher Pluginの追加
Traclightningからは、Jenkinsに来るリンクがあるのに
JenkinsからTracに戻るリンクがないのが使いづらかったので追加

<プラグインのインストール>
「Jenkinsの管理」-「プラグインの管理」から
「Trac Publisher Plugin」をインストール

<各ビルドのTrac Websiteの設定>
初音ミク冒険記TracのURLを入力する

これでJenkinsの各ビルドの左側に表示されるメニューにTracが増えてクリックすると
Tracへ飛ぶことができる。


★最終的にどうなったの?
ということで、これで、いろいろと便利になったと思う。
SVNのコミットをトリガーとして10分以内に
CppheckやLuaの文法チェック、さらにステップ数集計も自動実行し
ステップ数は表にまとめてくれる。

成功と失敗は音でも分かるし、後からでもビルドを確認すると
ミクの絵により、成功失敗が分かる。

TracからJenkinsへ飛んで
ビルドの手動実行してからTracに戻ることもできる。

本当の意味でJenkinsを使いこなすには
テストの自動化やカバレッジ率の取得が必要だが
正直、DXライブラリを使った開発で
テストの自動実行がどこまで出来るものかもわからないので
現時点では、これでも結構良いんじゃないだろうか?

まぁ、C#で作る開発ツール辺りだと、自動実行することがあるかもしれないけどね。

面白かったら押すべし。→ へぇ~
ランキング [] [] [] [] [] [↑50] [かげさんの111から始まるHistory内]

|

このエントリーへのリンク

このエントリーのリンクを入れるHTML:

トラックバァ~ック!


★アディダスやニューバランス関連のトラックバックスパムが多すぎて★
★超迷惑なので、トラックバックは承認制としました。★
★このため、トラックバックが記事に表示されるまで
★時間がかかることがあります★

この記事にトラバ~る為のURL:

この記事へのトラックバックの一覧です: Jenkinsの設定をいろいろと変更してみた、が、あと一歩が分かんない:

コメント

このブログの新着コメントをRSSリーダに登録する為のxml




←名前とメールアドレスは必須です。URLも記入すれば、URLのみが公開されます。メールアドレスのみですと、メールアドレスが公開されてしまいますので、御注意ください。

メールアドレスは書きたくないって人は、掲示板に書き込むって方法もあります。掲示板はメールアドレスなしでもOKです!

↓コメント本文では、「a href」「b」「i」「br/」「p」「strong」「em」「ul」「ol」「li」「blockquote」「pre」のタグが使えます。絵文字をクリックすると、本文にタグを挿入できます。


絵文字を挿入