Es posible mantener una rama separada sólo para el despliegue, pero se necesita mucha disciplina para mantener correctamente:
- Añadir un comprometerse a una rama de producción que añade el archivo de configuración (
git add -f
a bybass sus excluye)
- para actualizar su rama de producción, fusionar otras ramas (por ejemplo master) en ella.
Sin embargo, debe entonces Nunca fusionar su rama de producción en cualquier otra cosa, o iniciar ramas en función de cualquier “producción cometer” (uno cuya ascendencia incluye su “agregar las claves” commit).
Una ruta más fácil es adoptar la costumbre de Heroku de usar variables de entorno para comunicar sus valores secretos a sus instancias. Consulte la documentación de Configuration and Config Vars:
heroku config:add KEY1=foobar KEY2=frobozz
luego acceder a los valores a través ENV['KEY1']
y ENV['KEY2']
en el código de inicialización o donde los necesite. Para admitir las implementaciones que no son de Heroku, puede definir las mismas variables de entorno o volver a leer los archivos de configuración existentes si las variables de entorno no existen.
gracias, el heroku envvars es el camino a seguir :) – skazhy
Junto con las variables de entorno es posible que necesite "https://devcenter.heroku.com/articles/labs-user-env-compile", si sus variables son necesarios para acceder durante la compilación de slug. –