13
Jenkins 勉勉勉 in 勉勉 勉勉勉 id:cactusman

Jenkins勉強会 in 札幌 第二部

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: Jenkins勉強会 in 札幌 第二部

Jenkins 勉強会 in 札幌

第二部id:cactusman

Page 2: Jenkins勉強会 in 札幌 第二部

アジェンダ• Jenkins のビルド• Jenkins Plugin の作り方

Page 3: Jenkins勉強会 in 札幌 第二部

その前に• Plugin や core のハックをする前に考える

こと• それってそこまでする必要があるのか?– スクリプトなどでファイルを成形するだけで

いい場合とか• テスト結果を Junit 形式にしたり

– 今ある機能の組み合わせでなんとかならなか• Job のチェーンなど

– やるにしては Plugin でいいのでは• 拡張ポイントを見る

Page 4: Jenkins勉強会 in 札幌 第二部

Jenkins のビルド(1)• なぜビルド?– 改造したい– バグフィックス– 勉強したい

• 必要なもの– jdk6– Maven2– Git

Page 5: Jenkins勉強会 in 札幌 第二部

Jenkins のビルド(2)• ビルド

1. git clone https://github.com/jenkinsci/jenkins.git2. cd Jenkins3. mvn install -Dskip-test-harness詳しくは Wiki (

http://wiki.Jenkins-ci.org/display/Jenkins/Building+Jenkins )

Page 6: Jenkins勉強会 in 札幌 第二部

Jenkins のビルド(3)• IDE での開発– NetBeans(6.7+) :特に設定いらず– Eclipse• m2eclipse などの Plugin をインストール• mvn -DdownloadSources=true eclipse:eclipse

– IDEA• Plugin を使用?• mvn -DdownloadSources=true idea:idea

Page 7: Jenkins勉強会 in 札幌 第二部

Jenkins のビルド(3)• URL マッピングは Stapler– http://stapler.java.net/

• View は Apache Jelly によって記述– https://wiki.jenkins-ci.org/display/JENKINS/

Basic+guide+to+Jelly+usage+in+Jenkins– Groovy や JRuby ( haml )が使用可能• 人柱募集中

Page 8: Jenkins勉強会 in 札幌 第二部

Stapler

Page 9: Jenkins勉強会 in 札幌 第二部

これでいつでも Jenkinsコミッターになれますね!

Page 10: Jenkins勉強会 in 札幌 第二部

Jenkins Plugin の作り方(1)• エクステンションポイントを継承– Notifier– ListViewColumn– Builder– ・・・

• http://wiki.Jenkins-ci.org/display/Jenkins/Extension+points

Page 11: Jenkins勉強会 in 札幌 第二部

Jenkins Plugin の作り方(2)• ~/.m2/settings.xml におまじないを追加• mvn -cpu hpi:create– Wizard 形式

• cd newly-created-directory • mvn package• http://wiki.Jenkins-ci.org/display/Jenkins/

Plugin+tutorial

Page 12: Jenkins勉強会 in 札幌 第二部

Jenkins Plugin の作り方(3)• Jenkins の公式 Plugin が参考になる– 似ているもの– よくメンテされているもの– 川口さんがコミット– 日本人がコミット• わかんなければ Twitter とかで聞いちゃえ

Page 13: Jenkins勉強会 in 札幌 第二部

これでいつでも Jenkinsコミッターになれますね!