2013-10-30 49 views
1

我正在運行rake,但沒有看到爲什麼它失敗的任何線索。我錯過了什麼?如何調試這個失敗的rake任務?

undefined method `[]' for nil:NilClass 
/Users/ianseabock/.rvm/gems/ruby-1.9.2-p320/gems/activerecord-3.2.13/lib/active_record/railties/databases.rake:525:in `block (3 levels) in <top (required)>' 
/Users/ianseabock/.rvm/gems/ruby-1.9.2-p320/gems/rake-10.0.4/lib/rake/task.rb:246:in `call' 
/Users/ianseabock/.rvm/gems/ruby-1.9.2-p320/gems/rake-10.0.4/lib/rake/task.rb:246:in `block in execute' 
/Users/ianseabock/.rvm/gems/ruby-1.9.2-p320/gems/rake-10.0.4/lib/rake/task.rb:241:in `each' 
/Users/ianseabock/.rvm/gems/ruby-1.9.2-p320/gems/rake-10.0.4/lib/rake/task.rb:241:in `execute' 
/Users/ianseabock/.rvm/gems/ruby-1.9.2-p320/gems/rake-10.0.4/lib/rake/task.rb:184:in `block in invoke_with_call_chain' 
/Users/ianseabock/.rvm/rubies/ruby-1.9.2-p320/lib/ruby/1.9.1/monitor.rb:201:in `mon_synchronize' 
/Users/ianseabock/.rvm/gems/ruby-1.9.2-p320/gems/rake-10.0.4/lib/rake/task.rb:177:in `invoke_with_call_chain' 
/Users/ianseabock/.rvm/gems/ruby-1.9.2-p320/gems/rake-10.0.4/lib/rake/task.rb:205:in `block in invoke_prerequisites' 
/Users/ianseabock/.rvm/gems/ruby-1.9.2-p320/gems/rake-10.0.4/lib/rake/task.rb:203:in `each' 
/Users/ianseabock/.rvm/gems/ruby-1.9.2-p320/gems/rake-10.0.4/lib/rake/task.rb:203:in `invoke_prerequisites' 
/Users/ianseabock/.rvm/gems/ruby-1.9.2-p320/gems/rake-10.0.4/lib/rake/task.rb:183:in `block in invoke_with_call_chain' 
/Users/ianseabock/.rvm/rubies/ruby-1.9.2-p320/lib/ruby/1.9.1/monitor.rb:201:in `mon_synchronize' 
/Users/ianseabock/.rvm/gems/ruby-1.9.2-p320/gems/rake-10.0.4/lib/rake/task.rb:177:in `invoke_with_call_chain' 
/Users/ianseabock/.rvm/gems/ruby-1.9.2-p320/gems/rake-10.0.4/lib/rake/task.rb:170:in `invoke' 
/Users/ianseabock/.rvm/gems/ruby-1.9.2-p320/gems/activerecord-3.2.13/lib/active_record/railties/databases.rake:558:in `block (3 levels) in <top (required)>' 
/Users/ianseabock/.rvm/gems/ruby-1.9.2-p320/gems/rake-10.0.4/lib/rake/task.rb:246:in `call' 
/Users/ianseabock/.rvm/gems/ruby-1.9.2-p320/gems/rake-10.0.4/lib/rake/task.rb:246:in `block in execute' 
/Users/ianseabock/.rvm/gems/ruby-1.9.2-p320/gems/rake-10.0.4/lib/rake/task.rb:241:in `each' 
/Users/ianseabock/.rvm/gems/ruby-1.9.2-p320/gems/rake-10.0.4/lib/rake/task.rb:241:in `execute' 
/Users/ianseabock/.rvm/gems/ruby-1.9.2-p320/gems/rake-10.0.4/lib/rake/task.rb:184:in `block in invoke_with_call_chain' 
/Users/ianseabock/.rvm/rubies/ruby-1.9.2-p320/lib/ruby/1.9.1/monitor.rb:201:in `mon_synchronize' 
/Users/ianseabock/.rvm/gems/ruby-1.9.2-p320/gems/rake-10.0.4/lib/rake/task.rb:177:in `invoke_with_call_chain' 
/Users/ianseabock/.rvm/gems/ruby-1.9.2-p320/gems/rake-10.0.4/lib/rake/task.rb:205:in `block in invoke_prerequisites' 
/Users/ianseabock/.rvm/gems/ruby-1.9.2-p320/gems/rake-10.0.4/lib/rake/task.rb:203:in `each' 
/Users/ianseabock/.rvm/gems/ruby-1.9.2-p320/gems/rake-10.0.4/lib/rake/task.rb:203:in `invoke_prerequisites' 
/Users/ianseabock/.rvm/gems/ruby-1.9.2-p320/gems/rake-10.0.4/lib/rake/task.rb:183:in `block in invoke_with_call_chain' 
/Users/ianseabock/.rvm/rubies/ruby-1.9.2-p320/lib/ruby/1.9.1/monitor.rb:201:in `mon_synchronize' 
/Users/ianseabock/.rvm/gems/ruby-1.9.2-p320/gems/rake-10.0.4/lib/rake/task.rb:177:in `invoke_with_call_chain' 
/Users/ianseabock/.rvm/gems/ruby-1.9.2-p320/gems/rake-10.0.4/lib/rake/task.rb:205:in `block in invoke_prerequisites' 
/Users/ianseabock/.rvm/gems/ruby-1.9.2-p320/gems/rake-10.0.4/lib/rake/task.rb:203:in `each' 
/Users/ianseabock/.rvm/gems/ruby-1.9.2-p320/gems/rake-10.0.4/lib/rake/task.rb:203:in `invoke_prerequisites' 
/Users/ianseabock/.rvm/gems/ruby-1.9.2-p320/gems/rake-10.0.4/lib/rake/task.rb:183:in `block in invoke_with_call_chain' 
/Users/ianseabock/.rvm/rubies/ruby-1.9.2-p320/lib/ruby/1.9.1/monitor.rb:201:in `mon_synchronize' 
/Users/ianseabock/.rvm/gems/ruby-1.9.2-p320/gems/rake-10.0.4/lib/rake/task.rb:177:in `invoke_with_call_chain' 
/Users/ianseabock/.rvm/gems/ruby-1.9.2-p320/gems/rake-10.0.4/lib/rake/task.rb:205:in `block in invoke_prerequisites' 
/Users/ianseabock/.rvm/gems/ruby-1.9.2-p320/gems/rake-10.0.4/lib/rake/task.rb:203:in `each' 
/Users/ianseabock/.rvm/gems/ruby-1.9.2-p320/gems/rake-10.0.4/lib/rake/task.rb:203:in `invoke_prerequisites' 
/Users/ianseabock/.rvm/gems/ruby-1.9.2-p320/gems/rake-10.0.4/lib/rake/task.rb:183:in `block in invoke_with_call_chain' 
/Users/ianseabock/.rvm/rubies/ruby-1.9.2-p320/lib/ruby/1.9.1/monitor.rb:201:in `mon_synchronize' 
/Users/ianseabock/.rvm/gems/ruby-1.9.2-p320/gems/rake-10.0.4/lib/rake/task.rb:177:in `invoke_with_call_chain' 
/Users/ianseabock/.rvm/gems/ruby-1.9.2-p320/gems/rake-10.0.4/lib/rake/task.rb:170:in `invoke' 
/Users/ianseabock/.rvm/gems/ruby-1.9.2-p320/gems/rake-10.0.4/lib/rake/application.rb:143:in `invoke_task' 
/Users/ianseabock/.rvm/gems/ruby-1.9.2-p320/gems/rake-10.0.4/lib/rake/application.rb:101:in `block (2 levels) in top_level' 
/Users/ianseabock/.rvm/gems/ruby-1.9.2-p320/gems/rake-10.0.4/lib/rake/application.rb:101:in `each' 
/Users/ianseabock/.rvm/gems/ruby-1.9.2-p320/gems/rake-10.0.4/lib/rake/application.rb:101:in `block in top_level' 
/Users/ianseabock/.rvm/gems/ruby-1.9.2-p320/gems/rake-10.0.4/lib/rake/application.rb:110:in `run_with_threads' 
/Users/ianseabock/.rvm/gems/ruby-1.9.2-p320/gems/rake-10.0.4/lib/rake/application.rb:95:in `top_level' 
/Users/ianseabock/.rvm/gems/ruby-1.9.2-p320/gems/rake-10.0.4/lib/rake/application.rb:73:in `block in run' 
/Users/ianseabock/.rvm/gems/ruby-1.9.2-p320/gems/rake-10.0.4/lib/rake/application.rb:160:in `standard_exception_handling' 
/Users/ianseabock/.rvm/gems/ruby-1.9.2-p320/gems/rake-10.0.4/lib/rake/application.rb:70:in `run' 
/Users/ianseabock/.rvm/gems/ruby-1.9.2-p320/gems/rake-10.0.4/bin/rake:33:in `<top (required)>' 
/Users/ianseabock/.rvm/gems/ruby-1.9.2-p320/bin/rake:23:in `load' 
/Users/ianseabock/.rvm/gems/ruby-1.9.2-p320/bin/rake:23:in `<main>' 
/Users/ianseabock/.rvm/gems/ruby-1.9.2-p320/bin/ruby_executable_hooks:15:in `eval' 
/Users/ianseabock/.rvm/gems/ruby-1.9.2-p320/bin/ruby_executable_hooks:15:in `<main>' 
Tasks: TOP => db:test:load => db:test:purge 


class AddSha2PasswordToAdminUsers < ActiveRecord::Migration 
    def up 
    add_column :admin_users, :md5_password, :string 
    add_column :admin_users, :password_salt, :string 

    Rake::Task['tmp:sessions:clear'].invoke 

    AdminUser.update_all("md5_password=encrypted_password") 
    AdminUser.update_all("encrypted_password=null") 
    end 

    def down 
    remove_column :admin_users, :md5_password, :password_salt 
    end 

end 
+0

你能發佈實際的任務嗎? –

+0

對不起,我只是試圖運行耙 – isea

+0

這是在任務的數據庫準備部分炸燬。你有沒有改變最近相關的數據庫配置?這有沒有工作?您是否嘗試過使用'bundle exec rake'? –

回答

0

更正我的config/database.yml中的錯誤爲我解決了這個問題。

+0

是的 - 對我來說,它的關鍵是測試:'不'測試:' - 不是一個很好的錯誤信息:D – timruffles