运行上限部署错误:冷

时间:2013-03-07 14:10:55

标签: ruby-on-rails capistrano rubber

当我在部署到amazon ec2时使用橡胶运行cap [deploy:cold]时,我在控制台上无休止地打印出以下内容:
请帮助提出想法。我在这里跟踪了railscast链接http://railscasts.com/episodes/347-rubber-and-amazon-ec2

servers: ["app01.foo.com"]
  [app01.foo.com] executing command
** [out :: app01.foo.com] .
** [out :: app01.foo.com] .
** [out :: app01.foo.com] .
** [out :: app01.foo.com] .
** [out :: app01.foo.com] .
** [out :: app01.foo.com] .
** [out :: app01.foo.com] .

1 个答案:

答案 0 :(得分:0)

这是一个设置问题。开箱即用橡胶对我们不起作用。你必须做一些修改。您遇到的问题的主要修复是在mysql配置中:config / rubber / deploy_mysql.rb

@@ -40,7 +40,7 @@
             pass = "identified by '#{env.db_pass}'" if env.db_pass
             rubber.sudo_script "create_master_db", <<-ENDSCRIPT
             mysql -u root -e "create database #{env.db_name};"
-              mysql -u root -e "delete from mysql.user where user='' and host='localhost';"
+              mysql -u root -e "delete from mysql.user where user='';"
           mysql -u root -e "grant all on *.* to '#{env.db_user}'@'%' #{pass};"
           mysql -u root -e "grant select on *.* to '#{env.db_slave_user}'@'%' #{pass};"
           mysql -u root -e "grant replication slave on *.* to '#{env.db_replicator_user}'@'%' #{pass};"

还有:将资产角色设置为:app,它让我们长时间坚持下去。这发生在deploy.rb中,并且符合上面的railscast。

相关问题