This is an adapter that allows Griddler to be used with Mandrill's Inbound Email Processing.
Add this line to your application's Gemfile:
gem 'griddler'
gem 'griddler-mandrill'
Please note that ONLY email received with SPF headers that are 'pass' or 'neutral' will be processed. Emails without SPF or with failing SPF will be silently swallowed and will not be set to your email processor.
thoughtbot has a blog post on how to use Griddler over on their blog: Giant Robots.
When adding a webhook in their administration panel, Mandrill will issue a HEAD request to check if the webhook is valid (see Adding Routes). If the HEAD request fails, Mandrill will not allow you to add the webhook. Since Griddler is only configured to handle POST requests, you will not be able to add the webhook as-is. To solve this, add a temporary route to your application that can handle the HEAD request:
# config/routes.rb
get "/email_processor", to: proc { [200, {}, ["OK"]] }, as: "mandrill_head_test_request"
Once you have correctly configured Mandrill, you can go ahead and delete this code.
Sometimes, due to circumstances outside our control, a domain may not have SPF set up. In those cases, you can set the adapter to pass results to your email processor.
Griddler::Mandrill::Adapter.allow_spf_none = true
Griddler::Mandrill was extracted from Griddler by Stafford Brunk.
Griddler was written by Caleb Thompson and Joel Oliveira.