Just some quick notes on Gitlab upgrade I did today. Some serious issues arose, due to me not being careful. Somehow part of the users managed to enter SSH keys while upgrade was taking place. Still don’t understand how, but some of the keys ended up having invalid content in /home/git/.ssh/authorized_keys and in /home/git/.gitolite/keys/[name of the invalid key]. This manifested in a very strange manner:
- a part of the users had no issues using Gitlab
- and others couldn’t clone or push to projects they have been given access to in Gitlab web
After loosing myself for quite a bit, finally this Gitlab issue led me in the right direction. After comparing keys in database and in above two locations, I found the differences and deleted the surplus keys and also invalid ones. I seems that Gitlab or Gitolite probably “loop” through keys somewhere and this loop breaks for users below the invalid keys, or works OK for those above.
And a short recommendation for future reference: backup everything !!!
https://github.com/gitlabhq/gitlabhq/blob/stable/doc/install/installation.md (latest setup instructions)
http://sitaramc.github.com/gitolite/install.html#migr (migrating Gitolite)