Configuring CapGun
October 10th, 2009
I’ve long been a fan of Capistrano, the Ruby deployment tool that is typically used for deploying Rails applications. And I’ve also been impressed by the work of Glenn Vanderburg and his colleagues at Relevance. So I took notice when I recently read about CapGun, which is useful for sending email notifications whenever a project is deployed.
The point of this post is that very recently I had the opportunity to install and configure CapGun for a client. The blurb on github told me how to install and configure CapGun. Under the heading of Usage I was encouraged to read the first paragraph:
Good news: it just works.
Well, almost. CapGun does “just work” once you’ve configured it correctly. Included in the config sample to be added to deploy.rb was:
# define the options for the actual emails that go out -- :recipients is the only required option set :cap_gun_email_envelope, { :recipients => %w[joe@example.com, jane@example.com] }
Unfortunately this was not quite complete enough for CapGun to work. Instead it died deep in the bowels of net/smtp.rb:
/usr/local/lib/ruby/1.8/net/smtp.rb:930:in `check_response': 555 5.5.2 Syntax error. 7sm1592402qwb.55 (Net::SMTPFatalError) from /usr/local/lib/ruby/1.8/net/smtp.rb:899:in `getok' from /usr/local/lib/ruby/1.8/net/smtp.rb:828:in `mailfrom' from /usr/local/lib/ruby/1.8/net/smtp.rb:653:in `sendmail' from /usr/local/lib/ruby/gems/1.8/gems/actionmailer-2.3.4/lib/action_mailer/base.rb:684:in `perform_delivery_smtp' from /usr/local/lib/ruby/1.8/net/smtp.rb:526:in `start' from /usr/local/lib/ruby/gems/1.8/gems/actionmailer-2.3.4/lib/action_mailer/base.rb:682:in `perform_delivery_smtp' from /usr/local/lib/ruby/gems/1.8/gems/actionmailer-2.3.4/lib/action_mailer/base.rb:523:in `__send__' from /usr/local/lib/ruby/gems/1.8/gems/actionmailer-2.3.4/lib/action_mailer/base.rb:523:in `deliver!' from /usr/local/lib/ruby/gems/1.8/gems/actionmailer-2.3.4/lib/action_mailer/base.rb:395:in `method_missing' from ./vendor/plugins/cap_gun/lib/cap_gun.rb:70
The lesson was that the :cap_gun_email_envelope needed to be configured with :from as well as :recipients. And the good news is that the people at Relevance have just accepted my documentation patch.
And the even better news is that now CapGun does “just work”. It’s a very handy tool for keeping everyone in a team informed about deployments in an automated and timely manner.
Navigation
Latest Blog Posts
- 24 Jun 2011: Rails Camp 9
- 13 May 2011: Committed Stand-Ups
- 27 Apr 2011: On Agile
- 5 Apr 2011: Maintaining a Legacy Rails App
- 4 Mar 2011: Reflections on YOW 2010 Conference
Syndication
Tags
agile bundler capgun capistrano community conference consulting css deployment dsl estimation jaoo javascript legacy apps osdc pdf planning prawn rails railscamp reflections rorosyd ruby ruby tracker rubygems rvm standups syntax highlighting testing unconference wds08 xml yow