¿Dónde poner sus app-config-archivos al desplegar los carriles con Capistrano y SVN
-
22-08-2019 - |
Pregunta
Tengo dos archivos config-
/app/config/database.yml
y
/app/config/userconfig.yml
no quiero poner las credenciales de base de datos y userconfig en el repositorio SVN-, así que tengo database.yml.dist y userconfig.yml.dist registramos.
¿Cuál es la mejor manera de conseguir copys de los dist-archivos en el directorio compartido al desplegar la aplicación por primera vez?
Para más adelante despliega voy enlace a ellos desde / app / corriente / config
Solución
Usted debe colocar los archivos de configuración en
/path/to/deployed_app/shared
A continuación, en una tarea de Capistrano, sym enlace a esos archivos:
namespace :deploy do
task :symlink_shared do
run "ln -s #{shared_path}/database.yml #{release_path}/config/"
end
end
before "deploy:restart", "deploy:symlink_shared"
Otros consejos
En Capistrano v3, puede utilizar una tarea llamada deploy:symlink:shared
.
Proporcionar una lista de archivos que se colocan en el directorio compartido, por lo Capistrano sabe qué archivos para enlazar simbólicamente cuando se ejecuta la tarea. Esto normalmente se realiza en deploy.rb
:
set :linked_files, %w{
app/config/database.yml
app/config/userconfig.yml
}