Edited at

wercker導入手順②

More than 1 year has passed since last update.

wercker導入手順①

前回はwerckerの登録とアプリケーションの作成まで行いましたので、今回はymlというwerckerの設

定ファイルの作成から配備までを行います。

ここまでで一旦最低限の導入は完了となります。


ymlって?

YAMLという表現記法の拡張子です。YAMLとは何か?というと構造化したデータを記述するための表現記法で、Rubyやフレームワーク、ツールの設定ファイルなどでよく使います。

詳しくはこちらの記事で分かりやすくまとめられています。

WerckerではこのYAMLを使ってビルドやデプロイの手順を記載していきます。


wercker.ymlの設定

作成したアプリケーションを選択し、「runs」タブから使用言語を選択。

(ここではrubyを選択)

yml.jpg

ymlの内容をコピーし、ファイル名を"wercker.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をリポジトリのルートディレクトリにコミット。

ymlpush.jpg


起動確認

すると、werckerでymlに記載されたステップが実行されます。

run.jpg

しばらく待つと・・・

完了しました!

result.jpg

今回は導入手順の説明なのでビルドのみ行いましたがHeroku等へのデプロイも自動で行えます。


まとめ

・導入さえしてしまえばあとはコミットをトリガーにビルド・テスト・デプロイまで自動化してくれるので非常に楽。

・あまりメジャーではないのかエラー時に調べても解決法がなかなか出てこない・・・

・boxやstepを自作すればもっとカスタマイズが可能なのでやりたいことを柔軟に実現できそう。