capistrano-log_with_awesome

Awesome callbacks for capistrano logging.

Install the gem:

gem install capistrano-log_with_awesome

Require the gem in your config/deploy.rb or Capfile:

require 'capistrano/log_with_awesome'

Want to upload the full log to a directory after a deploy?

on :exit do
  put full_log, "#{deploy_to}/shared/log/last_deploy.log"
end

Want to halt deploy if a command you’re running generates output you don’t like but returns a status code of 0?

on :log_message do
  raise Exception if message =~ /oh snap/
end

Want to pipe your capistrano log to Campfire?

require 'tinder'
campfire = Tinder::Campfire.new 'yourdomain', :ssl => true
campfire. 'APIKEY', 'X'
set :room, campfire.find_room_by_name('Log')

# Paste the full log to Campfire after a deploy
on :exit do
  room.paste full_log
end

# Log every single cap log line to Campfire, as it happens. Insane.
on :log_message do
  room.speak message
end

Note on Patches/Pull Requests

  • Fork the project.

  • Make your feature addition or bug fix.

  • Add tests for it. This is important so I don’t break it in a future version unintentionally.

  • Commit, do not mess with rakefile, version, or history. (if you want to have your own version, that is fine but bump version in a commit by itself I can ignore when I pull)

  • Send me a pull request. Bonus points for topic branches.

Copyright © 2010 Jesse Newland. See LICENSE for details.