development > Ruby On Rails > CodeshipでRailsアプリの継続CIとHerokuへのデプロイを実現する
Ruby On Rails

CodeshipでRailsアプリの継続CIとHerokuへのデプロイを実現する

Large?1464707866

以前、RailsアプリをCircle CIでHerokuへ継続デプロイという記事を書きましたが、それのCodeship版です。

Circle CIを便利だなーと使っていたのですが、Circle CIにはHeroku APIを1つしか登録できません。なので複数のアカウントの環境にデプロイする際にはちょっとしたスクリプトを書く必要があるのですが、そこで「だったら別サービス使えばいいじゃん」となったわけです。

Codeshipとは

Circle CIと同様、クラウド上でテストを回してくれて、設定によってはそのままデプロイまでしてくれるツールです。GitHubやBitBucketと連携させることで、対象のリポジトリのmasterにpushされたりpull requestがマージされた場合をトリガーに、勝手にテストを実行してくれます。

Codeshipは以前はプライベートリポジトリが使える無料プランがなかったのですが、最近できた無料プランでは月に100buildsまではプライベートリポジトリでも無料で使えるようになりました。それ以上の頻度で使う場合にはmonthlyプランを$49/月で契約することになります。

ちなみに巷では「Codeshipの方がCircle CIより早い」と言われてたりするみたいですが、自身の環境だと違いはさほど感じないですね。Codeshipの方が早いこともあれば、その逆もあったり。

Codeshipアカウントを作成

Circle CIにはGitHubアカウントでサインイン出来ます。これにより、GitHub上にあるリポジトリがCircle CIに自動的に読み込まれるようになります。

プロジェクトを作成する

ログインしたら「Create a new project」を選択しましょう。すると

こんな画面が現れるので、GitHubかBitBucketか選び、Codeshipで対象にしたいリポジトリを選びます。

次に、デプロイスクリプトのテンプレートが表示されます。今回はRailsアプリなので、

こんな感じで次に進めましょう。これでGitHubにPushされるたびに自動でテストが実行されるようになります。

Herokuで自動デプロイ出来るようにする

作成したプロジェクトの画面の右上に「Project Settings」というリンクが有ると思います。こちらをクリックして、「Deployment」を選びましょう。

この様な感じでデプロイ対象ブランチを聞かれるので、今回はmasterにします。

次にデプロイ先を聞かれるので、

Herokuを選びます。

最後にHerokuへのデプロイ用に、Herokuでのアプリ名とAPI Keyを入力します。

これで設定は終了。あとはテストがOKであればHerokuにも勝手にデプロイされていくはずです。

また、この際に「more options」をクリックすると、デプロイ後にrake db:migrateを実行するか、など便利なオプションも設定できます。

+
Small?1464707866

この記事が気に入ったらいいね!して
9bar の最新記事を受け取りましょう

Thumb?1464707866

9bar の最新記事をお届けします!

新着記事