2015年11月18日水曜日

werckerを使って、さくらサーバに自動デプロイできました

werckerはCIサービスのひとつでGitHub(BitBucket)へのコードのPush(Merge)を検知してアプリケーションのデプロイを行うことができる。

werckerの仕組み


今回は簡単なwebサイトをさくらサーバにデプロイしました。


werckerを使ってみよう


1. Sign up


以下のサイトでユーザー登録してください。



2. applicationを作成


werckerでは一つのリポジトリに対する作業の単位をapplicationと言います。

















下の画面に移動します。






①使用するGitホスティングサービスを選択する(GitHubかBitBucketのみ。今回はBitBucketを選択)
②ターゲット(自動デプロイするリモートリポジトリ)を選択する
③Werckerがターゲットからソースコードを取得するためのアクセス方法を設定します。デフォルトでいいです
④リポジトリに配置するwercker.yml(ビルド、デプロイの設定を記述したファイル)のテンプレートコードが表示されます。リポジトリにwercker.ymlを作成しコピペするといい感じです
⑤公開しない場合はチェックを入れずに「Finish」


③で「Add the deploy key to the selected repository for me」を選択した場合、BitBucketへ自動的にキーが登録されます。
















3.SSHキーの作成


werckerからデプロイ先にsshで接続するためのsshキーを作成します。

werckerの「application settings」から「SSH keys」を選択。
出てきた画面の「Generate new key pair」をクリック後、適当な名前を入力し「Generate」する。



















下の画面が出てくるので、生成されたキーをデプロイ先に登録する。(今回はさくらサーバの~/.ssh/authorized_keysにコピペしました)
















4.Targetsの作成













「Application settings」から「Targets」を選択。
「Add deploy target」から「custom deploy」を選択。

























①「Deploy target name」に適当な名前を入力。「auto deploy ...」にチェックを入れ、その下にターゲットのブランチを入力し「Save」する。「Add new variable」をクリックすると②の画面が出てきます。
②「SSH Key pair」を選択し、3.の手順で生成したSSHキーを選択。「Environment variable」に適当な名前を入力し「OK」をクリックし、再度「Save」する。(「Environment variable」の値は後に編集するwercker.ymlに記載することになります)




5.wercker.ymlの編集


自動デプロイするリポジトリの直下にwercker.ymlを作成します。
中身はこんな感じ。



wercker.ymlの書き方はいろいろあるので、調べてみてください。


最後にTargetで指定したリポジトリでpushすれば自動でデプロイされます。
  • この記事をシェアする

  • このエントリーをはてなブックマークに追加
  • このブログの更新をチェックする

  • follow us in feedly