Codeshipを使用した継続的デプロイ

Created by Floor Drees, @floordrees / 翻訳者: @peno022

継続的デプロイとは何でしょうか?

継続的デプロイは、継続的デリバリーという「ムーブメント」の一環です。継続的デリバリーの背後にある考え方は、ソフトウェアのデリバリープロセスをできるだけ自動化しようというものです。

継続的デプロイのチェーンを構築することで、Gitデプロイが強化されます(テストするためには全てがコミットされなければならず、デプロイするためには全てがテストされなければなりません)。これにより共同作業が容易になり、素早くデプロイできるようになります。その結果、あなたはアプリをより良いものにすることに集中できます!

数々の先進的な企業が、継続的デプロイの潮流に乗っています。このガイドにおいては、Codeshipを使用して、GitHubからHerokuへのRuby on Railsアプリの継続的デプロイを設定していきます。

COACH: 継続的デプロイの利点について話してください。

Codeshipにサインアップする

まず、Codeshipアカウントを取得します。GitHubでCodeshipにサインインしてください。Codeshipはセットアップを行うためにあなたのGitHubリポジトリにアクセスする必要があるため、アクセスを許可するようにしてください。

Codeshipに戻り、最初のプロジェクトを作成しましょう。最初のステップは、リポジトリの提供元としてGitHubを選択することです。GitHubリポジトリのリストから設定したいリポジトリを探して選択します。例えば今回なら「railsgirls」といった名前のものです。

リポジトリが接続されると、テストコマンドを設定できるようになります。私たちはRuby on Railsアプリケーションを作成したので、使用するフレームワークとして「Ruby on Rails」を選択します。これにより、セットアップコマンドとテストコマンドが構成されます。ハッシュキー(#)を削除することで、アプリケーションで使用するテストコマンドのコメントアウトを解除できます。今はまだテストを設定していないので、この手順はスキップして後で戻ってくれば大丈夫です。

では、セットアップを完了してダッシュボードに移動しましょう。以下のコマンドを使用してリポジトリに変更をプッシュすることにより、アプリケーションのいわゆる「新しいビルド」をトリガーできます:

git add .  
git commit -m "test Codeship integration"  
git push origin master

右側の矢印をクリックしてビルドの詳細にアクセスできます。ここでは、ビルドがまだ実行中である様子を確認できます。リアリティ番組よりも面白いでしょう、約束しますよ。

そして数秒後……ビルドが成功しました!実行されたすべてのコマンドを見ることができます。いくつかの初期準備コマンドの後、Codeshipは先ほどあなたが指定したコマンドを実行しました。1つ1つのコマンドの出力を、クリックして詳細に確認することができます。

ここまでで、リポジトリにプッシュし、ビルドログを確認し、成功を示す緑色のビルドを取得できました。「click to finish」ボタンをクリックして一番上のアシスタントを終了することができます。

継続的デプロイのセットアップ

次に、Herokuにアプリケーションをデプロイしましょう。Codeshipのプロジェクトのドロップダウンから設定アイコンをクリックしてプロジェクト設定を開き、「Deployment」セクションに移動します。Herokuにデプロイしたい場合は、「Heroku」ボタンをクリックします。

Herokuアプリケーションの名前と、あなたのAPIキーを入力するよう求められます。どこかに書き留めてあるといいのですが! アプリケーションの名前とAPIキーを入力して(Heroku APIキーを取得するには、Herokuアカウントにアクセスして「Show API key」をクリックします)、デプロイ構成を保存してください。

これからは、GitHubリポジトリにプッシュするたびに、CodeshipがHerokuにアプリケーションをデプロイします。素敵ですね!

試してみよう

それでは、何か変更をプッシュして、それがデプロイされるか確認しましょう。最初にアプリケーションに何か変更を加えてから、その変更をコミットしてプッシュします。

git add .  
git commit -m "this changes everything"  
git push

すると、すぐに別のビルドがCodeship上で動き出します。プロジェクトの概要に戻ると、最初のビルドでも見たコマンドが表示されます。さらに、あなたのアプリケーションはHerokuにデプロイされ、1、2分後にはオンライン上で利用可能になっているはずです。