Un grand nombre de recettes exemple Capistrano comprennent un rôle :db
. Par défaut, la tâche de déploiement exporte le code de l'application vers tous les hôtes de tous les rôles. Cela suggère donc que les gens conservent une copie de leur application sur l'hôte de la base de données. En outre, dans distribué deploy.rb
recette de Capistrano, :deploy:migrate
ressemble à ceci:Pourquoi conserver une copie d'une application sur l'hôte DB?
task :migrate, :roles => :db, :only => { :primary => true } do
# ...
end
Ma question est, pourquoi est-il fait comme ça? Ne serait-il pas plus propre de garder le code de l'application hors de l'hôte de la base de données (qui pourrait même ne pas avoir installé Ruby) et d'exécuter les migrations à partir de la boîte de production?
Bien, je ne connaissais pas l'option: no_release. –