Jenkinsのインストールと設定(2)
Jenkinsへのライブラリの追加
WebSphere Deployer Pluginには一部追加でのライブラリが必要となっています。
ライブラリについてはWebSphere Application Server「Liberty Core」に含まれています。
以下のファイルを「%JENKINS_HOME%¥plugins¥websphere-deployer¥WEB-INF¥lib」にコピーします。
- %LIBERTY_HOME%¥dev¥api¥ibm¥com.ibm.websphere.appserver.api.basics_*.jar
- %LIBERTY_HOME%¥dev¥api¥ibm¥com.ibm.websphere.appserver.api.endpoint_*.jar
- %LIBERTY_HOME%¥dev¥api¥ibm¥com.ibm.websphere.appserver.api.restConnector_*.jar
- %LIBERTY_HOME%¥clients¥restConnector.jar
ファイルをコピーしたらJenkinsを起動します。jenkins.batを実行してください。
これでWebSphere Deployer Pluginのインストールが完了しました。
ジョブの作成
さて、ここから自動ビルド、自動デプロイの設定を行っていきます。左のメニューから「新規ジョブ作成」を選択してください。
ジョブ名にliberty-exampleを入力して、Maven2/3プロジェクトのビルドを選択し、「OK」を押します。
ソースコード管理から「Subversion」を選択し、リポジトリURLに「https://github.com/megascus/Liberty-Jenkins/trunk@HEAD」を入力します。
ビルドトリガから定期的に実行を選択し、スケジュールとして「H 0 * * *」を入力します。
これは設定例だと毎日0時にビルドが行われます。cronに似た書式で自動でのビルド、デプロイ感覚を自由に変更することができます。
ビルド後の処理の追加からDeploy To IBM WebSphere Liberty Profileを選択します。
入力欄に以下のとおり入力していきます。
項目 | 値 |
---|---|
WebSphere Liberty IP/DNS | WebSphereが動作しているPC名(今回はlocalhost) |
Port | server.xmlのhttpEndpointタグで指定したhttpsのポート番号 |
UserName | server.xmlのquickStartSecurityタグで指定したユーザー名 |
Password | server.xmlのquickStartSecurityタグで指定したパスワード |
Client Truststore File Path | WebSphereで生成したSSL証明書(key.jksファイル)のパス |
Client Truststore Password | SSL証明書作成時に入力したパスワード |
入力し終わった後に「Test Connection」をクリックすると、Connection Successful!と表示されます。
保存をクリックすれば、設定完了です。
ジョブを起動してみる
毎晩0時に起動するように設定しましたが、0時までは待てませんので、今すぐ起動させます。メニューからビルド実行をクリックしてください。即座にジョブが実行されます。
ビルドが終わると、下のビルド履歴にジョブの結果が表示されます。ジョブが成功すると青い丸、ジョブが失敗すると赤い丸が表示されます。
ビルド履歴をクリックすることで、そのジョブの詳細を確認することができます。「Console Output」をクリックすれば、ビルド中に標準出力に出力された内容を確認できます。
これでJenkinsによる自動ビルドができるようになりました。
まとめ
Jenkinsを使用した自動ビルドおよびWebSphereへの自動デプロイはいかがだったでしょうか。今回は紹介を見送りましたが、テストの自動実行や、FindBugsやPMDを利用した静的解析やレポートの作成を自動で行うこともできます。Jenkinsは日々の決まったタスクを自動的に実行してくれる便利屋さんです。今回の記事の範囲だけではもったいないので、ぜひJenkinsの効率的な使用方法を考えて実践してください。
本稿で紹介した「Liberty Core」は、開発用途や必要最低限の構成での運用に適した、軽量かつ高速なランタイムですが、そのような場合にApache Tomcatを利用している開発者の方も少なくないと思います。
Liberty CoreとTomcatでは、機能や管理のしやすさ、パフォーマンスの面で、具体的にどのような違いがあるのか。本資料では24ページに渡り、開発者の視点でそれらを検証した結果を詳しく解説しています(※「Liverty Core」は「Libertyプロファイル」の単体製品版です)。
ぜひ詳細をご確認ください。