-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] |Role Strategy Plugin|★★★|権限管理ができる| |Build Pipeline Plugin|★|上流、下流の関係が一目瞭然| |SSH Plugin|★★★|SSH操作実行| |Git Plugin|★|Gitと連携する場合に必要| |Categorized View Plugin|★|JOBビューの階層化| |Configuration Slicing Plugin|★|設定のコピー。ただ一部のみ対応の感じがあるが・・| |Copy Artifact Plugin|成果物をコピーするPlugin| |Copy To Slave Plugin|| |Join Plugin|複数のJOB到着を待って、後続JOBを流せるプラグイン| |Matrix Authorization Strategy Plugin|マトリックスベースの認証制限を実現する| |Parameterized Trigger Plugin|★★★|上流ジョブから下流ジョブへパラメータ引き継ぎができる| |Role Based Plugin|ロールによる認証制御を可能にする| |Timestamper Plugin|★★|コンソールに時間経過を出力する| |Extended Choice Parameter Plugin|選択肢リストを各ジョブで共有できる| Role Based Pluginの説明(有効にするには設定画面変更必要) http://techracho.bpsinc.jp/morimorihoge/2013_09_12/13642 -以下はおまけ系 |Emotional Jenkins Plugin|ビルド失敗でアイコンが変化| *設定ファイル(config.xml)を直接変更 [#ycd3a86b] たくさんのjobを扱う場合ブラウザ経由で操作するとめんどくさい。イレギュラーではあるが設定ファイルやディレクトリを直接変更した場合の反映方法をまとめた **JOBコピー [#n0f07afa] 初期状態ではユーザホームディレクトリに.hudsonというディレクトリができる。ここのjobsディレクトリにjob毎にディレクトリができているのでこいつをコピーする。 **設定変更 [#da7c08bb] 各ジョブのディレクトリに入りconfig.xmlを変更する。 **設定反映 [#z3d4b8c5] そのままではhudsonのメモリ上にあるものが使われてしまう。故に強制的にファイルシステムから再読み込みさせる。これはメニューに用意されている。 [hudsonの管理]から[設定の再読み込み]を実行する。 **デバッグテクニックなど [#u7862c42] |環境変数の表示|シェルの実行でenv| *トラブルシューティング [#pfb294e1] **ピン止めされたプラグイン [#kec8d927] このバージョンのJenkinsでは、プラグインマネージャーでピンが設定されている次のプラグインがインストールされています。ピンが設定されているプラグインを、少なくともJenkinsにバンドルされているバージョンにアップデートすることを推奨します。 Jenkins標準のプラグインはJenkins本体をアップデートしたときに合わせてアップデートされるが、バージョンを固定したい時がある。その場合に上記メッセージが出る。 #counter