(7)-2.Gitlab repository 위치 변경

[Gitlab repository path 변경]

테스트 환경: Gitlab 9.5.5, CentOS 7

0. root 권한으로 전환

- $ sudo -s


1. Gitlab 서비스 중지

- $ gitlab-ctl stop

 

2. Repository 위치 변경(기존 repo복사)

- $ rsync -av /var/opt/gitlab/git-data/repositories /mnt/git-data
- rsync를 통해 변경하려는 위치(/mnt/git-data)로 repo를 복사, 이 때 옮길 폴더의 권한을 git 사용자 권한으로 설정 ($ chown git:git /mnt/git-data)

 

3. Gitlab 설정 변경

- vi /etc/gitlab/gitlab.rb
- line: 285 부터 나오는 git_data_dirs 변수 설정
- 295 git_data_dirs({
  296 "default" => {
  297 "path" => "/mnt/git-data",
  298 "failure_count_threshold" => 10,
  299 "failure_wait_time" => 30,
  300 "failure_reset_time" => 1800,
  301 "storage_timeout" => 30
  302 }
  303 })

 

4. Gitlab 재설정

- $ gitlab-ctl upgrade
- $ gitlab-ctl reconfigure

(실행 시 옮기는 폴더에 대해 처리가 되었는지 output message에서 확인)

정상 진행 시: 

Recipe: gitlab::gitlab-shell
* ruby_block[directory resource: /mnt/git-data] action run (skipped due to not_if)
* ruby_block[directory resource: /mnt/git-data/repositories] action run (skipped due to not_if)

실패 시:

Recipe: gitlab::gitlab-shell
* ruby_block[directory resource: /home/admin/test_repo/git-data] action run
================================================================================
Error executing action `run` on resource 'ruby_block[directory resource: /home/admin/test_repo/git-data]'
================================================================================

 

5. Gitlab 재시작

- $ gitlab-ctl restart