jenkins plugin のインストール数ランキング作ってみた
URL
http://yasuhiroki.github.io/jenking/
仕組み
世に出ている jenkins plugin のインストール数は json 形式でネット上に保存さている。
その json をかき集めて、ただ表にまとめただけ。
json は月一でしか更新されないので、私が手元のPCで集計したものを github に Upしている。
なのでJenkins公式HPに負荷が掛かるわけではないので、怒られないはず。たぶん。
今後
そもそも、こういうものはいずれ作る予定、ってどこかの資料に書いてあった気がするので、そんなに作りこむ予定はないです。
raspberry pi に tracをインストールしてみた
Raspberry piにtracをインストールしてみた
基本、土日しか開発作業しないので、先週何やったっけをまとめるために、tracをインストールしてみた。
redmineでも良かったのだが、
- redmineは業務で使っている → 同じもの使っても面白くない!
- Pythonで動くので、Raspberry pi と相性良さそう
- redmineより軽い(というより早く使える?)
- 設定がコマンドラインベース(RedmineはWebページで完結する)
という印象を持ったので(つまり根拠なし)、試しに使いたくなった。
○ とりあえずインストール
先駆者が居たが(↓URL)、apt-get できるならこっちの方が手軽かと思った。
http://technicaldoc.blogspot.jp/2013/02/setup-trac-on-raspberry-pi-as-wiki-and.html
versionは0.12で、現状の最新(1.0)に比べると古い。LTSはまだ0.12のようだから、まあ良いだろう。
apt-get install trac
apt-get install trac-ja-resource
apt-get install git
○ 初期設定の前に
1) piユーザや、rootユーザでレポジトリ作るのはどうかと思ったので、tracユーザを作ってみる
adduser trac
○ 初期設定
参考 → http://qiita.com/tukiyo/items/bf10125e55ffdfa499de
1) プロジェクト作成
cd /home/trac
mkdir tracDir
cd tracDir
trac-admin . initenv
すると、何やら入力を要求される。
シェルかな、と思ってつい"ls"コマンドしたら、「lsってDB作ったよ!」と言われた。
初めだし別に良いかと思ってそのまま進める。
2) 日本語化
cd conf
下記の部分を変更(templateディレクトリを変更)
[inherit]
plugins_dir =
templates_dir =
[inherit]
plugins_dir =
templates_dir = /user/share/trac-ja-resource/trac/templates
cd ../
trac-admin . wiki load /usr/share/trac-ja-resource/trac/wiki/default-pages/
○ サーバーの起動
apacheと連携させようかと思ったが、個人的に使うだけだし、
ホームネットワークで完結させるし別に良いかと思い、素のtracを起動する。
cd
tracd -p 18080 tracDir
http://{raspberry pi の IP Address}:18080 にアクセス
"ls"プロジェクトが表示されました。
4) ちょっと触ってみて
まあ、やっぱり重いです。
jenkinsのデバッグをやってみた
基本的には、wikiを踏襲
https://wiki.jenkins-ci.org/display/JA/Building+Jenkins
こっちも参考に
http://www.slideshare.net/wadatka/jekins
ただし最新の情報は基本的にこっち
https://wiki.jenkins-ci.org/display/JENKINS/Plugin+tutorial
流れとしては、
1)jenkins を git clone
2)コンパイル
mvn package
3)プラグインの生成
4)Eclipse用プロジェクトファイル生成
5)Eclipseにインポート
6)環境変数の設定
export MAVEN_OPTS="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,address=8000,suspend=n"
7)生成したプラグインのディレクトリへ行ってjenkinsの起動
tomcatと被るのでポートを10080に変更
mvn hpi:run -Djetty.port=10080
8)eclipseのDebug設定
9)起動したjenkinsに移動
localhost+10080/jenkins
試行錯誤しなからやったので、抜けている項目があるかも。
jenkinsプラグインを作る
jenkinsのプラグインを作ろうとしたが、
mvn hpi:create で作ると、作られるスケルトンのパッケージ名に問題があり、mvn packag時にエラーが出る。
具体的には、パッケージ名に「null」が含まれてしまう。
ググったら同じ症状の人が居て、回答もあったのでメモ。
http://jenkins-ci.361315.n4.nabble.com/mvn-hpi-create-adding-null-to-package-name-td4650475.html
【解決方法】
mvn hpi:create
↓
mvn org.jenkins-ci.tools:maven-hpi-plugin:1.96:create
まあ、あくまでスケルトンなので、後で自分でうまく修正しなさいよ、ってことかもしれない。
外部ファイルとパラメータ
環境によって処理が変わる場合、
その分岐として使用するパラメータを、
外部ファイル(xmlなど)にして、使用する環境別に置き換えるようにするべきか、
同じく外部ファイルにして、内部に環境ごとのパラメータを持たせるべきか。
外部ファイルにすると、ファイルを差し替えるだけで別環境への対応が簡単にできる。
ただし、環境ごとにファイルが必要になるし、差し替える、という別プロセスの動作が必要になる。
内部に持たせると、一ヶ所で管理でき、同じプロセス内で対応が完結する。
ただし、特定の環境パラメータを解析する、という処理の実装が必要になる。
この両方の良いとこどりをした考え方はないものか。
jenkinsをgithubから取ってきてmavenでコンパイルした時のメモ
深夜のテンションで深く考えずやってたら、思いの外手間取ったのでメモ。
1).m2/settings.xml を忘れずに(忘れてたわー
# wikiのプラグインチュートリアルページ参照
mavenのセントラルリポジトリにないjarを取ってくるために必要
2)java7じゃないとだめ
素のUbuntuに入ってたjava-6-openjdk-i386を使っていたら、maven install できなんだ
# どういうエラーだったか控えてない...
apt-get install openjdk-6-jdk をすればうまくい...かない
# コンパイルエラー発生
apt-get install openjdk-7-jdk でようやく解決