1

我按照指南从 Gitlab 7.0 升级到 7.5.3 。

一切顺利,但剩下的一个问题是 sidekiq 与 gitlab-shell authorized_keys 文件的自动同步不再起作用。既不添加也不删除。

日志文件没有说明任何内容,例如添加一个密钥后,我只看到 GitlabShellWorker 成功执行:sidekiq.log:

2015-01-06T08:31:26Z 3292 TID-kjwek GitlabShellWorker JID-3b65f0ad00be156f30a22a62 INFO: start
2015-01-06T08:31:27Z 3292 TID-kjwek GitlabShellWorker JID-3b65f0ad00be156f30a22a62 INFO: done: 0.589 sec
2015-01-06T08:35:00Z 3292 TID-kjwek Sidekiq::Extensions::DelayedMailer JID-9c4837cd0acb34cb78cf5148 INFO: start
2015-01-06T08:35:28Z 3292 TID-kjwek Sidekiq::Extensions::DelayedMailer JID-9c4837cd0acb34cb78cf5148 INFO: done: 27.98 sec

其他日志中没有错误或提示。

系统信息:

git@aux-git:~/gitlab> sudo -u git -H bundle exec rake gitlab:check RAILS_ENV=production SANITIZE=true
WARNING: Nokogiri was built against LibXML version 2.8.0, but has dynamically loaded 2.9.1
Checking Environment ...

Git configured for git user? ... yes

Checking Environment ... Finished

Checking GitLab Shell ...

GitLab Shell version >= 2.2.0 ? ... OK (2.2.0)
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
hooks directories in repos are links: ...
2/30 ... ok
2/47 ... ok
5/51 ... ok
2/53 ... ok
5/55 ... ok
2/56 ... ok
5/57 ... ok
2/58 ... ok
10/60 ... ok
32/61 ... ok
6/62 ... ok
9/64 ... ok
6/65 ... ok
2/66 ... ok
2/67 ... ok
2/68 ... ok
2/69 ... ok
2/70 ... ok
41/72 ... ok
2/74 ... ok
2/76 ... ok
Running /home/git/gitlab-shell/bin/check
Check GitLab API access: OK
Check directories and files:
        /var/git/repositories: OK
        /home/git/.ssh/authorized_keys: OK
Test redis-cli executable: redis-cli 2.8.6
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 users with access to your GitLab server (only showing the first 100 results)
Server: ldapmain
[..]
Checking LDAP ... Finished

Checking GitLab ...

Database config exists? ... yes
Database is SQLite ... no
All migrations up? ... yes
Database contains orphaned GroupMembers? ... 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: ...
2/30 ... yes
2/47 ... yes
5/51 ... yes
2/53 ... yes
5/55 ... yes
2/56 ... yes
5/57 ... yes
2/58 ... yes
10/60 ... yes
32/61 ... yes
6/62 ... yes
9/64 ... yes
6/65 ... yes
2/66 ... yes
2/67 ... yes
2/68 ... yes
2/69 ... yes
2/70 ... yes
41/72 ... yes
2/74 ... yes
2/76 ... yes
Projects have satellites? ...
2/30 ... yes
2/47 ... yes
5/51 ... yes
2/53 ... yes
5/55 ... yes
2/56 ... yes
5/57 ... yes
2/58 ... yes
10/60 ... yes
32/61 ... yes
6/62 ... yes
9/64 ... yes
6/65 ... yes
2/66 ... yes
2/67 ... yes
2/68 ... yes
2/69 ... yes
2/70 ... yes
41/72 ... yes
2/74 ... yes
2/76 ... yes
Redis version >= 2.0.0? ... yes
Ruby version >= 2.0.0 ? ... yes (2.0.0)
Your git bin path is "/usr/bin/git"
Git version >= 1.7.10 ? ... yes (1.8.4)

Checking GitLab ... Finished

git@aux-git:~/gitlab> sudo -u git -H bundle exec rake gitlab:env:info RAILS_ENV=production
WARNING: Nokogiri was built against LibXML version 2.8.0, but has dynamically loaded 2.9.1

System information
System:         openSUSE project 13.1
Current User:   git
Using RVM:      no
Ruby Version:   2.0.0p247
Gem Version:    2.0.3
Bundler Version:1.6.2
Rake Version:   10.3.2
Sidekiq Version:2.17.0

GitLab information
Version:        7.5.3
Revision:       b656b85
Directory:      /home/git/gitlab
DB Adapter:     mysql2
URL:            http://aux-git
HTTP Clone URL: http://aux-git/some-project.git
SSH Clone URL:  git@aux-git:some-project.git
Using LDAP:     yes
Using Omniauth: no

GitLab Shell
Version:        2.2.0
Repositories:   /var/git/repositories/
Hooks:          /home/git/gitlab-shell/hooks/
Git:            /usr/bin/git

有任何想法吗?它是一个 Gitlab 错误吗?我看到了shell.rb自 7.0 以来的一些变化。

谢谢克里斯蒂安

4

1 回答 1

1

因此,sidekiq 从 2.17.1 更新到了 2.17.2,并且更新日志提到了一个 bug 修复,它改变了 sidekiq 的调用方式。

您的 GitLab 安装可能仍在使用旧样式调用 sidekiq,如下所示。

sidekiq -q post_receive,mailer,system_hook,project_web_hook,gitlab_shell,common,default -e production

这不再有效。如果是这种情况,您需要修复启动脚本以调用 sidekiq,如下所示。

sidekiq -q post_receive -q mailer -q system_hook -q project_web_hook -q gitlab_shell -q common -q default -e production
于 2015-03-06T16:01:44.693 回答