- 追加された行はこの色です。
- 削除された行はこの色です。
-Javaで作られたCIツール。昔はHudsonといった。
*インストール [#kfe12879]
warを配置するだけ。単体でも動く
**環境変数やJavaプロパティの確認 [#h805cf78]
http://example.com/jenkins/systemInfo
*起動 [#ve7a9da3]
**単体で起動 [#acb8917b]
java -jar jenkins.war
-http://localhost:8080/でアクセスする。そうするとホームディレクトリの.jenkinsに展開される。JENKINS_HOMEを指定するとそこを見るようだ。
**サーブレットコンテナ利用 [#wf88ad83]
-warを置くだけ
**マスター、スレーブ構成 [#qe7d464e]
マスターにだけwarインストールして、スレーブはslave.jarを立ち上げておきSSH接続する。
*ディレクトリ構成 [#k9be9722]
**Jobのホームディレクトリ [#ac337d83]
HUDSON_HOME/jobs/各ジョブの名前_DIR
**Jobsのホームディレクトリ以下の構成 [#e06ba81c]
***ファイル [#def64930]
-config.xml
設定内容
**ソース置き場 [#gb463e43]
-CVSやSVNから取ってきたソースの置き場は各JOB共通のようだ。
***ディレクトリ [#b10e4830]
-workspace
ビルドしたものが配置される。
-
*リモートからJOB実行 [#da7f1b9f]
設定画面でトークンを設定して、指定通りのURLをたたくと外部からJOBを実施できる。
*CUIツール [#c399f9b8]
Hudson 1.302から、HudsonにはCLIが追加。hudson-cli.jarというものを実行する
**CUIツールの入手 [#r85098fe]
起動しているhudsonからダウンロードする。
http://hudsonURL/cli
**実行 [#vf322fc6]
***バージョン情報取得 [#o4dd980e]
java -jar hudson-cli.jar -s http://127.0.0.1:8080/ version
***コピー実行 [#eb020b66]
java -jar hudson-cli.jar -s http://127.0.0.1:8080/ copy-job コピー元 コピー先
*プラグイン [#c4f38323]
|Build Pipeline Plugin|上流、下流の関係を自動で流す?|
|SSH Plugin|SSH操作実行|
|Git Plugin|Gitと連携する場合に必要|
|Categorized View Plugin|JOBビューの階層化|
|Configuration Slicing Plugin|設定のコピー|
|Copy Artifact Plugin|成果物をコピーするPlugin|
|Copy To Slave Plugin||
|Matrix Authorization Strategy Plugin|マトリックスベースの認証制限を実現する|
|Parameterized Trigger Plugin||
|Parameterized Trigger Plugin|上流ジョブから下流ジョブへパラメータ引き継ぎができる|
|Timestamper Plugin|コンソールに時間経過を出力する|
|Extended Choice Parameter Plugin|選択肢リストを各ジョブで共有できる|
-以下はおまけ系
|Emotional Jenkins Plugin|ビルド失敗でアイコンが変化|
*設定ファイル(config.xml)を直接変更 [#ycd3a86b]
たくさんのjobを扱う場合ブラウザ経由で操作するとめんどくさい。イレギュラーではあるが設定ファイルやディレクトリを直接変更した場合の反映方法をまとめた
**JOBコピー [#n0f07afa]
初期状態ではユーザホームディレクトリに.hudsonというディレクトリができる。ここのjobsディレクトリにjob毎にディレクトリができているのでこいつをコピーする。
**設定変更 [#da7c08bb]
各ジョブのディレクトリに入りconfig.xmlを変更する。
**設定反映 [#z3d4b8c5]
そのままではhudsonのメモリ上にあるものが使われてしまう。故に強制的にファイルシステムから再読み込みさせる。これはメニューに用意されている。
[hudsonの管理]から[設定の再読み込み]を実行する。
**デバッグテクニックなど [#u7862c42]
|環境変数の表示|シェルの実行でenv|
#counter