Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

deploy with capistrano failing

I have a capistrano taks like this

require "bundler/capistrano"

set :application, "cloudoc"
set :repository,  "[email protected]:luizkowalski/cloudoc.git"

set :scm, :git

role :web, "xx.xx.xx.xxx" 
role :app, "xx.xx.xx.xxx" 
role :db,  "xx.xx.xx.xxx", :primary => true

default_run_options[:pty] = true
ssh_options[:forward_agent] = true

after "deploy:restart", "deploy:cleanup"

set :user, "deploy"
set :use_sudo, true

set :deploy_to, "/home/deploy"
set :deploy_via, :remote_cache

role :web, "xx.xx.xx.xxx"
role :app, "xx.xx.xx.xxx"
role :db, "xx.xx.xx.xxx", :primary => true

after the cap deploy this is the output.
for some reason, he fails and I don't know why. I've tried with use_sudo false and with root, same thing happen.

    [xx.xx.xx.xxx] executing command
    command finished in 4714ms
    copying the cached version to /home/deploy/releases/20120809223144
  * executing "cp -RPp /home/deploy/shared/cached-copy /home/deploy/releases/20120809223144 && (echo 61eeff328c40e104962f96bf6ffc5150bd1162e4 > /home/deploy/releases/20120809223144/REVISION)"
    servers: ["xx.xx.xx.xxx"]
    [xx.xx.xx.xxx] executing command
    command finished in 604ms
  * executing `deploy:finalize_update'
    triggering before callbacks for `deploy:finalize_update'
  * executing `deploy:assets:symlink'
  * executing "rm -rf /home/deploy/releases/20120809223144/public/assets &&\\\n        mkdir -p /home/deploy/releases/20120809223144/public &&\\\n        mkdir -p /home/deploy/shared/assets &&\\\n        ln -s /home/deploy/shared/assets /home/deploy/releases/20120809223144/public/assets"
    servers: ["xx.xx.xx.xxx"]
    [xx.xx.xx.xxx] executing command
    command finished in 544ms
  * executing `bundle:install'
  * executing "cd /home/deploy/releases/20120809223144 && bundle install --gemfile /home/deploy/releases/20120809223144/Gemfile --path /home/deploy/shared/bundle --deployment --quiet --without development test"
    servers: ["xx.xx.xx.xxx"]
    [xx.xx.xx.xxx] executing command
    command finished in 1990ms
  * executing "chmod -R g+w /home/deploy/releases/20120809223144"
    servers: ["xx.xx.xx.xxx"]
    [xx.xx.xx.xxx] executing command
    command finished in 1042ms
  * executing "rm -rf /home/deploy/releases/20120809223144/log /home/deploy/releases/20120809223144/public/system /home/deploy/releases/20120809223144/tmp/pids &&\\\n      mkdir -p /home/deploy/releases/20120809223144/public &&\\\n      mkdir -p /home/deploy/releases/20120809223144/tmp"
    servers: ["xx.xx.xx.xxx"]
    [xx.xx.xx.xxx] executing command
    command finished in 534ms
  * executing "ln -s /home/deploy/shared/system /home/deploy/releases/20120809223144/public/system"
    servers: ["xx.xx.xx.xxx"]
    [xx.xx.xx.xxx] executing command
    command finished in 517ms
  * executing "ln -s /home/deploy/shared/log /home/deploy/releases/20120809223144/log"
    servers: ["xx.xx.xx.xxx"]
    [xx.xx.xx.xxx] executing command
    command finished in 519ms
  * executing "ln -s /home/deploy/shared/pids /home/deploy/releases/20120809223144/tmp/pids"
    servers: ["xx.xx.xx.xxx"]
    [xx.xx.xx.xxx] executing command
    command finished in 521ms
    triggering after callbacks for `deploy:update_code'
  * executing `deploy:assets:precompile'
  * executing "cd /home/deploy/releases/20120809223144 && bundle exec rake RAILS_ENV=production RAILS_GROUPS=assets assets:precompile"
    servers: ["xx.xx.xx.xxx"]
    [xx.xx.xx.xxx] executing command
 ** [out :: xx.xx.xx.xxx] Compiled jquery.js  (2ms)  (pid 1075)
 ** [out :: xx.xx.xx.xxx] Compiled jquery_ujs.js  (0ms)  (pid 1075)
 ** [out :: xx.xx.xx.xxx] Compiled twitter/bootstrap/bootstrap-transition.js  (0ms)  (pid 1075)
 ** [out :: xx.xx.xx.xxx] Compiled twitter/bootstrap/bootstrap-alert.js  (0ms)  (pid 1075)
 ** [out :: xx.xx.xx.xxx] Compiled twitter/bootstrap/bootstrap-modal.js  (0ms)  (pid 1075)
 ** [out :: xx.xx.xx.xxx] Compiled twitter/bootstrap/bootstrap-dropdown.js  (0ms)  (pid 1075)
 ** [out :: xx.xx.xx.xxx] Compiled twitter/bootstrap/bootstrap-scrollspy.js  (0ms)  (pid 1075)
 ** [out :: xx.xx.xx.xxx] Compiled twitter/bootstrap/bootstrap-tab.js  (0ms)  (pid 1075)
 ** [out :: xx.xx.xx.xxx] Compiled twitter/bootstrap/bootstrap-tooltip.js  (0ms)  (pid 1075)
 ** [out :: xx.xx.xx.xxx] Compiled twitter/bootstrap/bootstrap-popover.js  (0ms)  (pid 1075)
 ** [out :: xx.xx.xx.xxx] Compiled twitter/bootstrap/bootstrap-button.js  (0ms)  (pid 1075)
 ** [out :: xx.xx.xx.xxx] Compiled twitter/bootstrap/bootstrap-collapse.js  (0ms)  (pid 1075)
 ** [out :: xx.xx.xx.xxx] Compiled twitter/bootstrap/bootstrap-carousel.js  (0ms)  (pid 1075)
 ** [out :: xx.xx.xx.xxx] Compiled twitter/bootstrap/bootstrap-typeahead.js  (0ms)  (pid 1075)
 ** [out :: xx.xx.xx.xxx] Compiled twitter/bootstrap.js  (247ms)  (pid 1075)
 ** [out :: xx.xx.xx.xxx] Compiled ios-checkboxes/ios-checkboxes.js  (20642ms)  (pid 1075)
 ** [out :: xx.xx.xx.xxx] Compiled ios-checkboxes.js  (22403ms)  (pid 1075)
 ** [out :: xx.xx.xx.xxx] Compiled rails.validations.js  (418ms)  (pid 1075)
 ** [out :: xx.xx.xx.xxx] Compiled best_in_place.js  (327ms)  (pid 1075)
 ** [out :: xx.xx.xx.xxx] Compiled autosize.js  (76ms)  (pid 1075)
 ** [out :: xx.xx.xx.xxx] Compiled bootstrap.js  (5870ms)  (pid 1075)
 ** [out :: xx.xx.xx.xxx] Compiled dashboard.js  (1388ms)  (pid 1075)
 ** [out :: xx.xx.xx.xxx] Compiled documents.js  (896ms)  (pid 1075)
 ** [out :: xx.xx.xx.xxx] Compiled home.js  (377ms)  (pid 1075)
 ** [out :: xx.xx.xx.xxx] Compiled sessions.js  (563ms)  (pid 1075)
 ** [out :: xx.xx.xx.xxx] Compiled application.js  (51370ms)  (pid 1075)
 ** [out :: xx.xx.xx.xxx] Killed
    command finished in 68972ms
*** [deploy:update_code] rolling back
  * executing "rm -rf /home/deploy/releases/20120809223144; true"
    servers: ["xx.xx.xx.xxx"]
    [xx.xx.xx.xxx] executing command
    command finished in 612ms
failed: "sh -c 'cd /home/deploy/releases/20120809223144 && bundle exec rake RAILS_ENV=production RAILS_GROUPS=assets assets:precompile'" on xx.xx.xx.xxx

any ideas?
if someone needs more info, please let me know
Thanks in advance

like image 205
Luiz E. Avatar asked Aug 09 '12 22:08

Luiz E.


2 Answers

The kernel actively kills processes when RAM is short and processes use to much RAM. You can use dmesg to look if the process got killed by the kernel. Messages like this will appear:

[ 3380.091822] Out of memory: Kill process 1075 (ruby1.9.1) score 382 or sacrifice child

You can activate swap space or shut down other processes. If you are running on a VPS, please make sure you have enough RAM available. The simplest solution - if the problems is really a shortage of free RAM - is just buy more RAM.

like image 158
iblue Avatar answered Nov 10 '22 23:11

iblue


I'm running my rails app on Digital Ocean. Creating a 2gb swap seems to solve the problem.

like image 9
Vignesh Avatar answered Nov 10 '22 23:11

Vignesh