OpenShiftでjenkinsとredmineをホスティングする

Posted by joeartsea on 2013-05-25

最近「継続的インテグレーション(CI)」が叫ばれています。ソロで開発する場合であってもバージョン管理やデプロイ、テストの自動化は効率化、エビデンスの観点からも当たり前になりました。ただ個人で開発している場合はオープンソースソフトウェアを利用してコストをかけずにCI環境を整えたいものです。

今回はすべて無料でCI環境を構築するためにOpenShiftでjenkinsとredmineをホスティングしてみます。OpenShift(Online)とはRed Hat社がクラウド上で提供しているPaaS環境でjenkinsやredmineあるいはRuby on RailsやCakePHPといった既存アプリケーション環境を即座に準備(プロビジョニング)できる便利なサービスです。

それでは構築手順を見ていきましょう。

手順1: OpenSfhit CLI環境構築

まずはOpenShift Onlineのアカウントを取得してrhcコマンドツールを使えるように設定します。Get Startedに各OS別の手順が載っています(curlとgemが使える環境であれば数分で終わります)

手順2: アプリケーション環境構築

アプリケーション環境構築手順は2通りあって、まず1つ目がOpenShift Onlineの管理画面の「Create Application」から目的のアプリケーションを検索して設定する方法です。jenkinsやRailsとかCakePHPなどメジャーなものは検索にヒットし、そのまま画面ウィザードに従うだけで構築可能です。HerokuのGUIでのアドオン追加みたいな感じです。

もうひとつが検索でヒットしなかったアプリケーションの配置方法です(たとえばredmineの配置などはこれにあたります)その場合はgithubにあるかもしれません。試しにredmineを見てください。readme.mdにrhcコマンドでの配置方法が記載されてます。この通りコマンドを打つだけです(ちなみに今回のredmineの配置ではRuby1.9でうまくいきました)

こんな感じで簡単に既存アプリケーションの配置が可能です。開発してるとサクッと既存アプリケーションを配置したい時があります。そんな時は他のPaaSで無理矢理やるより、AWSでもっと下のレイヤーで頑張るより、OpenShift Onlineでサクッと構築しちゃうのはアリだと思いました。

ちなみにOpenShift Onlineの無料版の制限事項はこちら。jenkinsとredmineだけ使うなら今のところ問題なく動作しています。