Skip to content

Instantly share code, notes, and snippets.

@desheikh
desheikh / heroku-autoscale.rb
Last active February 25, 2024 01:50
Heroku Autoscale middleware for Rails
# Based ON https://github.com/ddollar/heroku-autoscale/blob/master/lib/heroku/autoscale.rb
# This middleware implements a simple dyno scaler for heroku + rails. Requires Redis.
# in Gemfile
# gem 'redlock'
# in an initializer
REDLOCK = Redlock::Client.new([ENV['REDIS_URL']], { retry_count: 0 })
REDIS = RedisClient.new(url: ENV['REDIS_URL'])
@desheikh
desheikh / amazon_signature.rb
Last active June 14, 2018 14:59
Froala S3 Image upload using aws-sdk-ruby
# aws sdk signing doesn't allow for arbitrary form headers, issue #1399
module Aws
module S3
class PresignedPost
define_field(:requested_with, 'x-requested-with', starts_with: true)
end
end
end
class AmazonSignature
@desheikh
desheikh / devise.en.yml
Created September 28, 2016 11:55
Simple devise token authentication strategy using email + token
# config/locales/devise.en.yml
en:
devise:
failure:
invalid_token: "Invalid authentication token."
@desheikh
desheikh / redirect invalid asset paths
Created December 9, 2014 23:10
redirect missing rails digested asset paths in nginx to a non digested version
location ~* ^\/assets\/(?:.*\/)?([\w-]+)-[0-9a-f]+\.(ico|css|js|gif|jpe?g|png)$ {
try_files $uri @missing_image;
}
location @missing_image {
rewrite ^\/assets(.*)-[0-9a-f]+(\.\w+)$ /assets$1$2 permanent;
}