红联Linux门户
Linux帮助

Gitlab不更新Activity的解决方案

发布时间:2017-06-21 10:12:28来源:linux网站作者:天王
Gitlab的数据目录,默认是在/var/opt/gitlab下。
很多时候,Linux系统默认安装的分区,没有大容量用来存代码,因此需要迁移此目录到其他磁盘分区。
迁移的方案可以是建立软连接,在/var下将opt目录移动到/mnt/sdb下,然后建立软连接opt指向/mnt/sdb/opt。
使用sudo gitlab-ctl reconfigure重新配置Gitlab后,就迁移好了。
但是问题是,用软连接迁移后,web页面的Activity就停止更新了。
 
解决办法:
修改/etc/gitlab/gitlab.rb文件,修改如下:
< git_data_dirs({ "default" => { "path" => "/mnt/sdb/opt/gitlab/git-data", 'gitaly_address' => 'unix:/mnt/sdb/opt/gitlab/gitaly/gitaly.socket' } })
---
> # git_data_dirs({ "default" => { "path" => "/var/opt/gitlab/git-data", 'gitaly_address' => 'unix:/var/opt/gitlab/gitaly/gitaly.socket' } })
265c265
< gitlab_rails['shared_path'] = '/mnt/sdb/opt/gitlab/gitlab-rails/shared'
---
> # gitlab_rails['shared_path'] = '/var/opt/gitlab/gitlab-rails/shared'
304c304
< gitlab_rails['dir'] = "/mnt/sdb/opt/gitlab/gitlab-rails"
---
> # gitlab_rails['dir'] = "/var/opt/gitlab/gitlab-rails"
509c509
< # user['home'] = "/mnt/sdb/opt/gitlab"
---
> # user['home'] = "/var/opt/gitlab"
再运行sudo gitlab-ctl reconfigure,重配之后,Activity就正常了。
 
网上还有一种方案是重新生成hook,参考:
Gitlab不更新Activity的解决方案
简单记录一下,未验证:
# cd /opt/git-data/repositories
# cat migrate.sh
#!/bin/bash
find . -name "hooks" -type l -delete
hooks="hooks"
for i in ./*/*.git/; do
ln -s  /opt/gitlab/embedded/service/gitlab-shell/hooks/ $i$hooks
done
 
本文永久更新地址:http://www.linuxdiyf.com/linux/31631.html