Problems with custom Omniauth providers on Omnibus install
When trying to follow the omniauth documentation to add a custom omniauth provider, I've hit a few issues.
- Editing the Gemfile - I added my gem (which is on an internal gem server, and therefore I added it as part of a
source
block), and run bundlle install but it wouldn't install because of syntax problems.- The packaged bundler is at version 1.5.x. I had to upgrade bundler to handle source blocks.
- Then, due to permissions, the
git
user wasn't able to write into any of the gem cache locations. So I had to change the permissions in a few places and copy files around. It seems like when bundler downloaded the file it put it into/var/opt/gitlab/.gem/...
and then wanted to install into the bundler config defined location of/opt/gitlab/embedded/service/gem/...
. Thegit
user did not have write permissions to either location.
- The restart command probably needs to be changed to a command which uses
gitlab-ctl
instead ofservice
. - Enabling OmniAuth for an existing user - All of this documentation seems to need updating. The profile button is in a different location, and the account tab doesn't have anything marked as 'Social Accounts'.
New users are able to log in via the button on the sign-in page without issue.
I'm somewhat concerned that on the next update of gitlab my changes are going to be wiped away. I would really have preferred to put everything into the /etc/gitlab/gitlab.rb
file (or something along those lines). I'm hoping the issues here are mostly documentation related!