速攻で Jenkins を練習する環境を用意する
目的は Jenkins を試すことのみ。
それも構築/設定をメインに試すので、なるだけ最短ルートを通る。
Jenkins インストール
今回は Jenkins のセットアップ手順を知るために、Linux にガチで入れます。
Docker コンテナもあるにはあるのですが、今回そっちには逃げません。
とはいえ、Ubuntu のインストールは今回の目的ではないので、こっちは Docker でやってしまいます。
$ docker run --name jenkins-example -it -p 8080:8080 -p 8000:80 ubuntu
Ubuntu にログインしたら
$ apt update -y $ apt upgrade -y $ apt install wget git gnupg openjdk-8-jdk -y $ wget -q -O - https://pkg.jenkins.io/debian/jenkins-ci.org.key | apt-key add - $ sh -c 'echo deb http://pkg.jenkins.io/debian-stable binary/ > /etc/apt/sources.list.d/jenkins.list' $ apt update $ apt install jenkins -y $ /etc/init.d/jenkins start
そこそこ長い…
ここまで来たら、 http://localhost:8080/ を開くと
ヒャッホイ。
画面の指示にしたがってサジェストプラグインをとりあえず入れてしまう。
管理者アカウントも作成して
起動しました
ビルドプロジェクトの作成
「新規ジョブの作成」から、「フリースタイルジョブ」で適当な名前で作成します。
設定が始まりますが、上の方は表示とかメタ情報の類です。
入れたければお好みで
重要なのはリポジトリ設定以降です。
git を指定して、以下の URL を突っ込みます
https://github.com/Sunao-Yoshii/spring-boot-web-example.git
その後の設定ですが
- ビルドトリガ
定期的に git リポジトリを調べて、新しかったら自動実行…とかできます。 - ビルド環境
選択肢の通りでしょう。今回は放置します
「ビルド」の欄で、どんどん手順を追加していきます。最悪のケースでも shell を直接設定できるので、Linux の手順はだいたい設定できます。
まずは gradle コマンドを追加してしまいます「Invoke gradle script」を選択して
「test」とだけ打ってみましょうか。
そしたらプロジェクト名を別タブで開きます
サイドメニューから「ビルドを実行」とすると、リポジトリからのチェックアウト、テストが実行されます。
ちなみに「ワークスペース」を開くと、ビルド後のプロジェクトディレクトリの中身がみれます。
そしたらプロジェクトの設定に戻り、「ビルド後の処理の追加」から「JUnit 結果の集計」あたりを選びましょう。
これは JUnit の結果 XML を集計するので、フォーマットが一緒なら他の Unit 系でも使えます。
入力するディレクトリは「build/test-results/test/*.xml」で設定します。
build
ディレクトリは gradle 標準のアウトプットディレクトリで、test-resulkts/test
も言わずもがなですね…
再度実行して成功すると「テスト結果」の項目が出てきます。
ここでエラーになる場合は、gradle コマンドを以下の2行にして再実行してみてください。
clean test
設定をみてみれば分かりますが、エラー時にメール通知など色々できるようになっています。
最終的にこのプロジェクトではこんな設定を行いました。
チェックスタイルの追加と、ビルド結果の保存です。
Spring の jar はそのまま実行するとサーバになるので、それでもいいですが、頑張って war にするなら、Tomcat へデプロイとか、Azure AppService へのデプロイとか色々やりようがありますね。