GitLab sidekiq测试失败

时间:2013-02-06 17:17:23

标签: gem rake gitlab

我按照这里的说明进行操作:

https://github.com/gitlabhq/gitlabhq/blob/4-1-stable/doc/install/databases.md

当我尝试运行测试时:

sudo -u gitlab -H bundle exec rake gitlab:env:info RAILS_ENV=production
sudo -u gitlab -H bundle exec rake gitlab:check RAILS_ENV=production

第一个测试返回橙色标题,第二个测试显示Sidekiq错误:

Checking Sidekiq ...    

Running? ... no
  Try fixing it:
  sudo -u gitlab -H bundle exec rake sidekiq:start
  For more information see:
  doc/install/installation.md in section "Install Init Script"
  see log/sidekiq.log for possible errors
  Please fix the error above and rerun the checks.
Checking Sidekiq ... Finished

当我运行sudo -u gitlab -H bundle exec rake sidekiq:start时,我收到以下错误:

rake aborted!
cannot load such file -- rb-inotify
/home/gitlab/gitlab/config/application.rb:9:in `<top (required)>'
/home/gitlab/gitlab/Rakefile:5:in `require'
/home/gitlab/gitlab/Rakefile:5:in `<top (required)>'
(See full trace by running task with --trace)

当我运行跟踪时,我得到以下输出:

rake aborted!
cannot load such file -- rb-inotify
/usr/local/lib/ruby/gems/1.9.1/gems/bundler-1.2.3/lib/bundler/runtime.rb:68:in `require'
/usr/local/lib/ruby/gems/1.9.1/gems/bundler-1.2.3/lib/bundler/runtime.rb:68:in `block (2     levels) in require'
/usr/local/lib/ruby/gems/1.9.1/gems/bundler-1.2.3/lib/bundler/runtime.rb:66:in `each'
/usr/local/lib/ruby/gems/1.9.1/gems/bundler-1.2.3/lib/bundler/runtime.rb:66:in `block in require'
/usr/local/lib/ruby/gems/1.9.1/gems/bundler-1.2.3/lib/bundler/runtime.rb:55:in `each'
/usr/local/lib/ruby/gems/1.9.1/gems/bundler-1.2.3/lib/bundler/runtime.rb:55:in `require'
/usr/local/lib/ruby/gems/1.9.1/gems/bundler-1.2.3/lib/bundler.rb:128:in `require'
/home/gitlab/gitlab/config/application.rb:9:in `<top (required)>'
/home/gitlab/gitlab/Rakefile:5:in `require'
/home/gitlab/gitlab/Rakefile:5:in `<top (required)>'
/home/gitlab/gitlab/vendor/bundle/ruby/1.9.1/gems/rake-10.0.3/lib/rake/rake_module.rb:25:in `load'
/home/gitlab/gitlab/vendor/bundle/ruby/1.9.1/gems/rake-10.0.3/lib/rake/rake_module.rb:25:in `load_rakefile'
/home/gitlab/gitlab/vendor/bundle/ruby/1.9.1/gems/rake-10.0.3/lib/rake/application.rb:583:in `raw_load_rakefile'
/home/gitlab/gitlab/vendor/bundle/ruby/1.9.1/gems/rake-10.0.3/lib/rake/application.rb:89:in `block in load_rakefile'
/home/gitlab/gitlab/vendor/bundle/ruby/1.9.1/gems/rake-10.0.3/lib/rake/application.rb:160:in `standard_exception_handling'
/home/gitlab/gitlab/vendor/bundle/ruby/1.9.1/gems/rake-10.0.3/lib/rake/application.rb:88:in `load_rakefile'
/home/gitlab/gitlab/vendor/bundle/ruby/1.9.1/gems/rake-10.0.3/lib/rake/application.rb:72:in `block in run'
/home/gitlab/gitlab/vendor/bundle/ruby/1.9.1/gems/rake-10.0.3/lib/rake/application.rb:160:in `standard_exception_handling'
/home/gitlab/gitlab/vendor/bundle/ruby/1.9.1/gems/rake-10.0.3/lib/rake/application.rb:70:in `run'
/home/gitlab/gitlab/vendor/bundle/ruby/1.9.1/gems/rake-10.0.3/bin/rake:33:in `<top (required)>'
/home/gitlab/gitlab/vendor/bundle/ruby/1.9.1/bin/rake:23:in `load'
/home/gitlab/gitlab/vendor/bundle/ruby/1.9.1/bin/rake:23:in `<main>'

我已尝试手动安装rb-inotify来解决问题:

sudo gem install rb-inotify

它说这是成功的,但测试仍然不起作用!请指教!感谢

2 个答案:

答案 0 :(得分:7)

那种命令:

 sudo -u gitlab -H bundle exec rake sidekiq:start

不仅需要在gitlab克隆的repo中运行,还需要RAILS_ENV=production才能正常运行:

 sudo -u gitlab -H bundle exec rake sidekiq:start RAILS_ENV=production

请参阅 troubleshooting page

  
      [li> Error no such file to load -- rb-inotify运行rake时(如#1752所示)   
  • Problem :任务在错误的环境中运行
  •   
  • Solution :将RAILS_ENV=production添加到命令的末尾
  •   

答案 1 :(得分:2)

显然我是以错误的方式运行它。以这种方式运行解决了它:

sudo -u gitlab -H bundle exec rake gitlab:check RAILS_ENV=production

教程需要更新