deploy via circleci
TRANSCRIPT
![Page 1: Deploy via CircleCI](https://reader036.vdocuments.net/reader036/viewer/2022062316/58ee5d161a28ab5a6d8b4643/html5/thumbnails/1.jpg)
Deploy via CircleCI
Yuki MatsukuraMetaps Inc.
shinjuku.rb #32@metaps
![Page 2: Deploy via CircleCI](https://reader036.vdocuments.net/reader036/viewer/2022062316/58ee5d161a28ab5a6d8b4643/html5/thumbnails/2.jpg)
• Metaps Inc. (2014 - ) – SPIKE Engineer
• @matsubokkuri• http://github.com/matsubo• http://matsu.teraren.com/blog/
Yuki Matsukura
![Page 3: Deploy via CircleCI](https://reader036.vdocuments.net/reader036/viewer/2022062316/58ee5d161a28ab5a6d8b4643/html5/thumbnails/3.jpg)
SERVICE INTRODUCTION
![Page 4: Deploy via CircleCI](https://reader036.vdocuments.net/reader036/viewer/2022062316/58ee5d161a28ab5a6d8b4643/html5/thumbnails/4.jpg)
![Page 5: Deploy via CircleCI](https://reader036.vdocuments.net/reader036/viewer/2022062316/58ee5d161a28ab5a6d8b4643/html5/thumbnails/5.jpg)
Middleware
• Ruby 2.2.3• Rails 4.2.5
• Rescue• Devise• Turbolink
![Page 6: Deploy via CircleCI](https://reader036.vdocuments.net/reader036/viewer/2022062316/58ee5d161a28ab5a6d8b4643/html5/thumbnails/6.jpg)
![Page 7: Deploy via CircleCI](https://reader036.vdocuments.net/reader036/viewer/2022062316/58ee5d161a28ab5a6d8b4643/html5/thumbnails/7.jpg)
![Page 8: Deploy via CircleCI](https://reader036.vdocuments.net/reader036/viewer/2022062316/58ee5d161a28ab5a6d8b4643/html5/thumbnails/8.jpg)
SideCI
![Page 9: Deploy via CircleCI](https://reader036.vdocuments.net/reader036/viewer/2022062316/58ee5d161a28ab5a6d8b4643/html5/thumbnails/9.jpg)
SimpleCov 0.11.0
• Adds option to track uncovered source files– https://github.com/colszowka/simplecov/pull/422– Nov 30 2015
![Page 10: Deploy via CircleCI](https://reader036.vdocuments.net/reader036/viewer/2022062316/58ee5d161a28ab5a6d8b4643/html5/thumbnails/10.jpg)
DEPLOY
![Page 12: Deploy via CircleCI](https://reader036.vdocuments.net/reader036/viewer/2022062316/58ee5d161a28ab5a6d8b4643/html5/thumbnails/12.jpg)
Deploy Flow
• Circle CI– SimpleCov– https://circleci.com/gh/matsubo/xxxxxxxx
• SHELL– Capistrano
• Slack
![Page 13: Deploy via CircleCI](https://reader036.vdocuments.net/reader036/viewer/2022062316/58ee5d161a28ab5a6d8b4643/html5/thumbnails/13.jpg)
circle.yml
deployment: production: branch: develop commands: - ./script/deploy-development.sh
![Page 14: Deploy via CircleCI](https://reader036.vdocuments.net/reader036/viewer/2022062316/58ee5d161a28ab5a6d8b4643/html5/thumbnails/14.jpg)
script/deploy-development.sh
set -e
renice -n 19 $$
bundle exec cap development deploy
![Page 15: Deploy via CircleCI](https://reader036.vdocuments.net/reader036/viewer/2022062316/58ee5d161a28ab5a6d8b4643/html5/thumbnails/15.jpg)
config.deploy.rb
after 'deploy:publishing', 'deploy:restart'namespace :deploy do task :restart do # invoke 'unicorn:restart' invoke 'unicorn:stop' invoke 'unicorn:start' endend