500 Error when viewing "Services" in Project Settings
Created by: danzy
Summary: When accessing "Services" in the per-project "Settings" section, I receive 500 errors.
Steps to Reproduce:
- Log into GitLab (as an administrator or a project owner)
- Access any Project/Repo (that you have admin rights of)
- Click "Settings"
- Click "Services"
Expected Behaviour: Services Page loads successfully Observed Behaviour: 500 Error
Checking the server logs (production.log) shows:
Started GET "/<group>/<project>/services" for 203.206.XXX.YYY at 2014-05-13 23:08:37 +0000
Processing by Projects::ServicesController#index as HTML
Parameters: {"project_id"=>"<group>/<project>"}
Completed 500 Internal Server Error in 239ms
NameError (uninitialized constant Project::GemnasiumService):
app/models/project.rb:313:in `block in build_missing_services'
app/models/project.rb:308:in `each'
app/models/project.rb:308:in `build_missing_services'
app/controllers/projects/services_controller.rb:11:in `index'
app/controllers/application_controller.rb:59:in `set_current_user_for_thread'
Running:
sudo -u git -H bundle exec rake gitlab:check RAILS_ENV=production
Gives the following output:
Checking Environment ...
Git configured for git user? ... yes
Checking Environment ... Finished
Checking GitLab Shell ...
GitLab Shell version >= 1.9.3 ? ... OK (1.9.3)
Repo base directory exists? ... yes
Repo base directory is a symlink? ... no
Repo base owned by git:git? ... yes
Repo base access is drwxrws---? ... yes
Satellites access is drwxr-x---? ... yes
update hook up-to-date? ... yes
update hooks in repos are links: ...
[[ This contains a list of projects/repos, all say "ok", but I'd like to keep these hidden as they contain confidential information ]]
Running /opt/gitlab_root/gitlab-shell/bin/check
Check GitLab API access: OK
Check directories and files:
/opt/gitlab_root/repositories: OK
/opt/gitlab_root/.ssh/authorized_keys: OK
Test redis-cli executable: redis-cli 2.4.10
Send ping to redis server: PONG
gitlab-shell self-check successful
Checking GitLab Shell ... Finished
Checking Sidekiq ...
Running? ... yes
Number of Sidekiq processes ... 1
Checking Sidekiq ... Finished
Checking LDAP ...
LDAP is disabled in config/gitlab.yml
Checking LDAP ... Finished
Checking GitLab ...
Database config exists? ... yes
Database is SQLite ... no
All migrations up? ... yes
Database contains orphaned UsersGroups? ... no
GitLab config exists? ... yes
GitLab config outdated? ... no
Log directory writable? ... yes
Tmp directory writable? ... yes
Init script exists? ... yes
Init script up-to-date? ... yes
projects have namespace: ...
[[ Same as above, really. A list of projects/repos that all pass (say "yes"), but I'd like to keep this list hidden ]]
Projects have satellites? ...
[[ Same as above, really. A list of projects/repos that all pass (say "yes"), but I'd like to keep this list hidden ]]
Redis version >= 2.0.0? ... yes
Your git bin path is "/usr/bin/git"
Git version >= 1.7.10 ? ... yes (1.8.3)
Checking GitLab ... Finished
For the record, I'm running the following versions (taken from gitlab:env:info):
Ruby Version: 2.0.0p247
Gem Version: 2.1.10
Bundler Version:1.3.5
Rake Version: 10.3.1
Sidekiq Version:2.17.0
GitLab Version: 6.8.1-ee
GitLab Shell Version: 1.9.3
Any help would be greatly appreciated.
Thanks!