wercker導入手順①
前回はwerckerの登録とアプリケーションの作成まで行いましたので、今回はymlというwerckerの設
定ファイルの作成から配備までを行います。
ここまでで一旦最低限の導入は完了となります。
##ymlって?
YAMLという表現記法の拡張子です。YAMLとは何か?というと構造化したデータを記述するための表現記法で、Rubyやフレームワーク、ツールの設定ファイルなどでよく使います。
詳しくはこちらの記事で分かりやすくまとめられています。
WerckerではこのYAMLを使ってビルドやデプロイの手順を記載していきます。
##wercker.ymlの設定
作成したアプリケーションを選択し、「runs」タブから使用言語を選択。
(ここではrubyを選択)
ymlの内容をコピーし、ファイル名を"wercker.yml"として保存する。
box: ruby:2.4.2
services:
- id: postgres
env:
POSTGRES_PASSWORD: secret_password
build:
steps:
- bundle-install
- rails-database-yml:
service: postgresql-docker
- script:
name: echo ruby information
code: |
echo "ruby version $(ruby --version) running"
echo "from location $(which ruby)"
echo -p "gem list: $(gem list)"
- script:
name: Set up db
code: RAILS_ENV=test bundle exec rake db:schema:load
- script:
name: rspec
code: bundle exec rspec
##Gitリポジトリへ配置
wercker.ymlをリポジトリのルートディレクトリにコミット。
##起動確認
すると、werckerでymlに記載されたステップが実行されます。
しばらく待つと・・・
今回は導入手順の説明なのでビルドのみ行いましたがHeroku等へのデプロイも自動で行えます。
##まとめ
・導入さえしてしまえばあとはコミットをトリガーにビルド・テスト・デプロイまで自動化してくれるので非常に楽。
・あまりメジャーではないのかエラー時に調べても解決法がなかなか出てこない・・・
・boxやstepを自作すればもっとカスタマイズが可能なのでやりたいことを柔軟に実現できそう。