Impedir a instalação de gemas no Heroku

Precisa evitar que o Heroku instale algumas joias que NÃO estão nos ambientes de teste ou desenvolvimento? Por exemplo, usamos o memcachedgem que não compila no Heroku, mas ainda precisa rodar em alguns ambientes de produção não-Heroku.

Se você quiser fazer o mesmo, primeiro defina uma HEROKUvariável de ambiente:

heroku config:add HEROKU=true

Em seguida, adicione um código como este em Gemfile:

# Don't install these gems on Heroku
group ENV['HEROKU'] ? :test : :default do
gem
'memcached', '1.3.2'
end

Agora, as variáveis ​​de ambiente não são normalmente habilitadas durante a compilação do slug (quando ele instala as gemas), mas você pode habilitar isso!

Apenas faça:

heroku labs:enable user-env-compile

Para mais informações: https://devcenter.heroku.com/articles/labs-user-env-compile