2012-06-26 4 views
0

J'ai une question simple. Mon application au déploiement ne commence pas rake db:migrate à la production env. Je n'ai pas créé deploy.rb Je l'ai déjà préparé. deploy.rb fonctionne, mais la commande 'deploy:migrate' ne fonctionne pas. Je ne sais pas, comment correctement poser cette question. Mais je pense que ce problème avec :role. Peut-être rake db:migrate besoin de décrire? Comme ceci:Pas de migration au déploiement

namespace :db do 

    desc "Rake migration" 
    task :migrate, :roles => :db do 
     run "cd #{current_path} && #{rake} RAILS_ENV=production db:migrate" 
    end 
    end 

end 

Répondre

1

Je ne sais pas si je l'ai bien compris votre question ...

Il existe déjà une tâche deploy:migrate définie dans le cadre de Capistrano, que vous venez d'ajouter un crochet pour dans votre deploy.rb et il va fonctionner. Voir this answer for details en faisant cela.

Vous ne devriez pas avoir besoin du code que vous avez défini ci-dessus, mais si vous remarquez que vous ne définissez pas deploy:migrate, vous définissez db:migrate.

Questions connexes