1

我在加密我database.yml的 for Travis CI 时遇到问题。根据他们的文档,您似乎使用 travis encrypt-file 命令加密文件。我在 Ruby-2.2.2 上运行,它给了我一些非常神秘的错误消息。

travis encrypt-file config/database.yml --add

我得到这个错误:

private method `load' called for Psych:Module
for a full error report, run travis report

这是我运行时的回溯travis report

$ travis report 

/Users/William.Jeffries/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/travis-1.7.7/lib/travis/cli/api_command.rb:150:in `default_endpoint': undefined method `[]' for nil:NilClass (NoMethodError)
        from /Users/William.Jeffries/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/travis-1.7.7/lib/travis/cli/api_command.rb:154:in `detected_endpoint'
        from /Users/William.Jeffries/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/travis-1.7.7/lib/travis/cli/api_command.rb:70:in `detected_endpoint?'
        from /Users/William.Jeffries/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/travis-1.7.7/lib/travis/cli/api_command.rb:158:in `endpoint_option'
        from /Users/William.Jeffries/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/travis-1.7.7/lib/travis/cli/command.rb:213:in `rescue in execute'
        from /Users/William.Jeffries/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/travis-1.7.7/lib/travis/cli/command.rb:191:in `execute'
        from /Users/William.Jeffries/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/travis-1.7.7/lib/travis/cli.rb:64:in `run'
        from /Users/William.Jeffries/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/travis-1.7.7/bin/travis:18:in `<top (required)>'
        from /Users/William.Jeffries/.rbenv/versions/2.2.2/bin/travis:23:in `load'
        from /Users/William.Jeffries/.rbenv/versions/2.2.2/bin/travis:23:in `<main>'
4

2 回答 2

0

解决方案是卸载Psych版本2.0.13并仅2.0.5在我的机器上。我两者都有2.0.52.0.13而且似乎它们相互冲突。我在这个论坛帖子上找到了信息。

于 2015-06-30T02:42:52.223 回答
0
gem update --system

在 Ubuntu 14.04 + RVM + Ruby 2.1.1p76 上为我解决了这个问题,如下所述:https ://github.com/bbatsov/rubocop/issues/1510#issuecomment-102645627

于 2015-10-14T08:00:24.267 回答