待望のJenkins 2.0がリリース
近年のソフトウェア開発の現場では、「迅速に」「正確に」開発が行われることが必要とされています。そのためには、手作業でのビルドによる手戻りやミスの排除、特定の端末でしかビルドできないという属人性の排除といったことが必要です。こうした背景から、効率的な開発を行うために有用な「継続的インテグレーション(CI)」に取り組む人が増えています。
Jenkinsは、今やソフトウェア開発自動化に欠かすことのできないCIツールです。ビルド、テスト、デプロイなどを自動化し、継続的にビルドを実行する機能を備えています。前身となったHudsonの登場から数えると、10年以上親しまれているソフトウェアです。
そして2016年の4月、初めてのメジャーアップデートバージョンとなる「Jenkins 2.0」が満を持してリリースされました。Jenkins 1系と完全な互換性を保つように設計されているため、旧来のユーザーもかんたんにアップデートすることができます。120万以上のユーザー数を誇り、1,000以上のプラグインが公開されていることから、新しく継続的インテグレーションをはじめたい人が使うツールの候補としても高い需要があるでしょう。
ソフトウェア開発の自動化へのニーズが高まる中、継続的デリバリーやDevOpsへの取り組みを支えてくれるJenkinsも進化を遂げ、より一層効率的な開発が期待できるようになりました。
Jenkins Pipeline
では、そのJenkins 2の注目機能を1つご紹介しましょう。
「Jenkins Pipeline」は、Jenkinsのジョブの定義をスクリプトで記述できる機能です。これまでのJenkinsはGUIで管理していましたが、Pipelineにより「誰がどこをどのように」変更したかの履歴を残すことができるようになりました。さらに、Pipelineで作成したジョブは、Jenkinsが途中で終了しても、再起動すればジョブを継続するころができるなど、再利用がかんたんです。これまでの問題点を解決することができます。
Pipelineは、Jenkinsのインストール時にプラグインとしてデフォルトで利用可能な状態になっています。「新規ジョブ作成」で「Pipeline」を選択し、任意のジョブ名を入力すれば、ジョブの設定画面が開きます。DSL形式でワークフローを記述したら、ビルドを実行します。
ワークフローやステータスは、Stage Viewで視覚的に確認できます。もちろん、一般的に使用される「フリースタイル・プロジェクトのビルド」同様、ビルド結果の推移を表示することも可能です。
スクリプトの記述方法を処理内容ごとに覚えるのは大変です。そこで、「Snippet Generator」を利用することで、一部の処理に関してはPipelineスクリプトを自動的に生成してくれるようになります。なお、生成できるスクリプトの種類は、プラグインをインストールすることで拡張が可能です。
進化したJenkinsを使いこなすには
そのほか、似たようなジョブを複数作成する際、ジョブ実行ごとに変更したい項目をパラメータとして定義する「パラメータビルド」を設定することができるようになりました。また、「Blue Ocean」というJenkinsのUIをモダンなものにするプラグインも導入されるなど、機能面ではもちろん、デザインの面でも変化が生まれています。
本書『[改訂第3版]Jenkins実践入門』では、Jenkins 2系に対応させ、近年の開発環境に合わせて情報を最新化しました。もちろん、はじめてJenkinsを導入される方のために、継続的インテグレーションやインストール方法といった基本から、導入後の活用ポイントなどもまとめています。2016年5月に始まった「Jenkins認定試験」の情報も解説。チームの一員として上手に迎えるためのポイントが満載です。
本書を片手に、新しくなったJenkinsでの快適な開発ライフを過ごしてみてはいかがでしょうか?