はじめに
先日ちょっぴりエンジニア界隈をにぎわせたGitlabさんですが、私物で使ってるGitlabさんでちょっぴりおかしなことになって、その対処をしたメモ。
たぶん世の中のまっとうなエンジニアの方はこんなことしないだろうけど、ググってもこの答えはでなかったのでインターネットの海にしょーもない豆知識を一つ放流ぐらいのキモチで。
やりたかったこと
自前のGitlabのデータディレクトリを、外部ディスクに移したい。
まぁ単体で移動させるのもめんどうなので、まとめてGitlabを別ディスクに持っていきたかった。
やるべきだったこと
やったこと
上の読むのめんどうだったので(コラ!)とりあえずヤマカンで適当にやってみる。
※今回実施したのはあくまで私物でぶっこわれても自分以外誰も困らないGitlabです。
で、
[root@moritest0002 opt]# pwd
/var/opt
[root@moritest0002 opt]# ll
total 4
drwxr-xr-x 13 root root 4096 Feb 7 21:07 gitlab
↑コレを、↓こうしてみた
[root@moritest0002 opt]# ll
total 0
lrwxrwxrwx 1 root root 21 Feb 8 21:48 gitlab -> /extDISK2/gitlab
まぁ、ものはためしにね。ぐらいのキモチで。
/var/opt/gitlabを/extDISK2(外部ディスク)にmvして、そこにシムリンク張っただけ。※/extDISK2は権限777
作業前にgitlab-ctl stopして、作業後に念のため、gitlab-ctl reconfigureしてから(とまってるからポスグレとかが変な出力するけど)、
再度gitlab-ctl startしたら、ちゃんと動いたので、お、これこのままいけんじゃね?といった感じでした。
で、一応それっぽく起動。ブラウザGUIでログイン、既存のプロジェクト、リポジトリもちゃんと見えてる状態だったのでやったー楽にできたーと思っていた矢先。
cliからてきとうにgit pushを試みたところ、以下のようなエラーが
remote: GitLab: The project you were looking for could not be found.
To http://hoge/gitlab/myproject/test.git
! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'http://hoge/gitlab/myproject/test.git'
お? could not be found?いやあるけど?
なんと、pullやcloneはできるのに、同じリポジトリに向かってpushはできないという事態に。
ちなみに、ブラウザGUIからファイルを作成してみようとすると、こちらもこんな感じに。
ちょっと字が小さくて見にくいカモですが、タイトルのエラーがでてこちらも失敗する状態でした。
じゃあ今みてるこのprojectはなんなんだwっていうのはおいておいて。
結論
ちゃんと公式ドキュメント読みましょう。
参考
環境
OS:CentOS Linux release 7.2.1511 (Core)
Gitlab:gitlab-ce-8.16.4-ce.0.el7.x86_64
このエラー文字列でぐぐると
issue#1716
issue#26710
issue#638
ここらへんが過去あったみたいですが、今回の自分のケースはどれとも異なる(というかこんなことするやついないだろ・・・)ってことで、ここにメモしておきます。