検索
連載

HubotとJenkins、GitBucketを連携してCIをチャット上で効率化するにはチャットボットでチーム開発効率化入門(3)(2/3 ページ)

GitHub社が開発しているbotフレームワークHubotを使ってチャットアプリ上でチーム開発をいかに効率化していくかを解説していきます。今回は、JenkinsとGitBucketをインストールしHubotと連携してチャットからJenkinsのジョブを実行する方法などを紹介します。

PC用表示 関連情報
Share
Tweet
LINE
Hatena

GitBucketにサンプルアプリをプッシュ

 次に、GitBucketにリポジトリを作成し、取得した状態のサンプルアプリケーションをプッシュしましょう。GitHubとほぼ同様のUIでリポジトリを作成できます。

 取得したサンプルアプリを解凍し、以下のコマンドを実行します。remoteに追加するURLは環境に合わせて設定してください。

$ git init
$ git add .
$ git commit -m "first commit"
$ git remote add origin http://YOUR_GITBUCKET_HOST:8080/gitbucket/git/YOUR_ACOUNT/spark-sample.git
$ git push -u origin master

 リモートにプッシュできたでしょうか。

 このサンプルアプリケーションに修正を加え、開発の流れを追いながらHubotと各ツールとの連携を紹介していきます。

サンプルアプリケーションに機能追加する

 では、サンプルアプリケーションを修正していきましょう。とは言っても、「Hello 名前!」と返すルーティングをinit()メソッドに1行追加するだけです。

package sample;
import spark.servlet.SparkApplication;
import static spark.Spark.get;
public class HelloWorld implements SparkApplication {
    public static void main(String[] args) {
        HelloWorld helloWorld = new HelloWorld();
        helloWorld.init();
    }
    public void init() {
        get("/hello", (request, response) -> "Hello World!");
+       get("/hello/:name", (request, response) -> "Hello " + request.params(":name") + "!");
    }
}
HelloWorld.java(diff)

 修正したソースコードをGitBucketにプッシュする前に、GitBucketとJenkinsの連携、JenkinsとHubotの連携の設定をしておきます。

GitBucketとJenkinsの連携

Jenkinsの設定

 GitBucketにプッシュした際にJenkinsでビルド、デプロイを行うように設定します。

 まずは、Jenkinsに「GitBucket Plugin」「Git Plugin」をインストールします。

 Jenkinsの[管理]→[プラグインの管理]→[利用可能]タブのプラグインの一覧から、GitBucket PluginとGit Pluginにチェックを入れインストールしてください。

 次にJenkinsのジョブの設定で、GitBucketのURLを設定します。

 作成したGitリポジトリへのURLを設定します。

 「ビルド・トリガ」を設定します。

 最後に、ビルド後にデプロイを行う設定をします。「maven-war-plugin」を使い、ビルド時にwarファイルを作成するようにしておき、Jenkinsのビルド後の処理で作成したwarファイルをTomcatにデプロイするように設定します。

GitBucketの設定

 GitBucket側では、リポジトリの「Settings」から「Service Hooks」に遷移し、WebHook URLを追加します。WebHook URLを設定すると、リポジトリへのプッシュを契機に設定したURLにPOSTリクエストを送信します。

Copyright © ITmedia, Inc. All Rights Reserved.

ページトップに戻る