Magnum CI で Rails をテストした方法


Magnum CI は 無料で使える CI 環境で、 きっと愛用している人も多いと思います。 本記事では、 Bitbucket で管理している Rails のコードを、 Magnum CI でテストした時のメモを書いておきます。

Bitbucket のコードを Magnum CI と連携させるのは、 Magnum CI が用意している説明を見ればできます。

Magnum 環境の追加

Magnum CI を使うために、 Magnum 環境 を作ります。 test 環境 で実行する場合は特に必要ありません。

  • config/environments の中に magnum.rb を作ります。 ラベルは magnum とします。
  • config/secrets.ymlmagnum環境でのシークレットキーを追加します。
  • config/database.ymlmagnum環境でのデータベース設定を追加します。 私は次のように設定しました。 Magnum CI のドキュメントを参考にしてください。
  • その他環境に応じて変えるべきものがあれば magnum環境用の設定を追加します。

これでRails側の変更は完了です。 スクリプトを書いて Railsコード内でビルドの実行を制御することもできますが、 そういった設定は Magnum CI の設定画面で行いました。

Build Configuration

Magnum CI への登録はできるとして、 追加したプロジェクトの Build Configuration の設定を説明します。 私が参加していたプロジェクトでの設定例を書いておきます。

Runtime Version

Ruby のバージョンを設定します。 私がやったときは Magnum CI がサポートしているバージョンで最新のものは Ruby 2.0.0 でした。 開発中の Rails プロジェクトは Ruby 2.2.2 だったので、 Runtime Version で設定することはできませんが、 別の方法で対応可能です。 Build Steps のところで説明します。

Resources

必要なデータベースやキャッシュを追加します。

Environment Variables

RAILS_ENV を設定します。

Build Step
Before installation

ここで Ruby, Rails のバージョンを変更します。

Before test execution

DB を作っておきます。

Test suit commands

テストを実行します。