世の中、なんでも自動化がトレンドのようです。AIの話も究極的には、そういう自動化の範疇に入るようなものではないかと思います。まだ人間がAIに仕事を奪われるような時代になるまではもう少し時間がいるのでは、と思いますがね。
そういう意味で、Jenkinsについて調べました。もちろん、まだ何が何だかわからないひよっ子みたいな自分に「今回はJenkinsで面倒なことは全部自動化して手間を減らそう」みたいな考えがあったわけではなく、あくまで仕事で使われているから、というシンプルな理由です。
それで、Jenkinsとは?
そもそもJenkinsがどんなものか知りたい。仕事で使うということは、なんらかの理由があるはずです。また、この業界で使われるミドルウェアは、結局何か便利(手間を省ける)な面があるから使われるのでしょうね。ならJenkinsは何が便利で使いたくなるのか?という観点から調べてみました。
継続的インテグレーション
と言われましても…な気がしました。つまりビルドからテスト、検証などをしてくれるツールらしいです。最初はGitに連動して使うと言われましたので、もうバージョン管理をGitでしているのに、また何かツールを連携して使うメリットがあるのか?と思いましたが、この「継続的インテグレーション」という行動が自動化できるからいいということです。
GitやSubversionでのバージョン管理をしても、誰がいつPushしたのか、ログを見るまではわからない。また、Pushしたことをわかったら人の手でテストをしてまたMergeするしかない。これがなんとJenkinsで解決できるということです。例えば誰かがPushしたらJenkinsに通知が送られ(これには別作業が要るらしいですが)、Pull・ビルド・JUnitでのテストまでしてくれて、結果を通知してくれるとか。また設定次第ではテストが無事終わったらデプロイ1もしてくれるすごいツールらしいです。
でも使ってみないとわからない
それでは早速Jenkinsのすごい自動化を経験するために、インストールから始めます。仕事で使う環境はLinux。すぐyumでインストールできるのではないかなと思いましたが、どうもそうではないようです。
Jenkinsのホームページに接続してみると、Linuxでのインストールの手順がありました。幸い、仕事で使うLinuxはAWSなのですが、RedHat Linux2と同じ手順でインストールできました。
それではインストールしましょう
まず、Jenkinsのリポジトリを持ってきます。
sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
ここでwget -Oはフォルダを読み、ファイルとして出力するオプションらしいですね。ここでも勉強になります。
sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key
rpmはパッケージをインストールする時使うコマンドなのですが、ここでは–importオプションでキーを持って検証を行いますね。
ここまで終わったら、普通のパッケージと同じくyumでインストールできます。
yum install jenkins
これでインストールは終わり。問題なければ、ポートの設定をやって起動するまでです。
(続きます)