GitLab 7.10.1 LDAP not working

Hello,

I have install GitLab 7.10.1 as explained over here: Download and install GitLab | GitLab

This worked fine and I am able to login with the “root” user account. Next I want to link GitLab with LDAP. I searched in the GitLab documentation here: http://doc.gitlab.com/ce/integration/ldap.html

Note I make use of OpenLDAP

I have set my settings as follows:

gitlab_rails['ldap_enabled'] = true
gitlab_rails['ldap_servers'] = YAML.load <<-'EOS'
main: 
    label: 'My LDAP'
    host: '192.168.1.93'
    port: 389
    uid: 'uid'
    method: 'plain' # "tls" or "ssl" or "plain"
    bind_dn: ''
    password: ''
    active_directory: false
    allow_username_or_email_login: true
    block_auto_created_users: false
    base: 'dc=name,dc=local'
    user_filter: ''
    group_base: ''
    admin_group: ''
    sync_ssh_keys: false
EOS

The IP Address is the IP Address of the machine where LDAP is hosted. In other words I can access phpldapadmin using the following url: http://192.168.1.93/phpldapadmin (from my LAN). The machine where GitLab is installed and LDAP in installed are on the same LAN.

That said when I go to login screen I do not even get an LDAP tab as I used to on previous versions of Gitlab. When I login with “root” account and I go to Admin Area, LDAP is still marked as switched off.

Does anyone know what the problem might be?

Ok, I found the problem; it seems the documentation is wrong. The script to be edited is in /var/opt/gitlab/gitlab-rails/etc/gitlab.yml

Please note that I installed using the steps here (i.e. - not from source):

Since you referred to https://about.gitlab.com/downloads/, I believe that means you are referring the Omnibus install.

I am still a beginning gitlab user myself, but my understanding is the only file you need to edit should be /etc/gitlab/gitlab.rb, although the issue should have been fixed you maybe experiencing an issue similar to https://gitlab.com/gitlab-org/omnibus-gitlab/issues/540#note_1179354. See if editing /etc/gitlab/gitlab.rb and removing rm -rf /opt/gitlab/embedded/nodes and running gitlab-ctl reconfigure allows to make the changes in /etc/gitlab/gitlab.rb, because I think you will find that yml file you referred to is/should be overwritten when gitlab-ctl reconfigure is run.

Thanks mojibakeumd for your reply and not letting me go astray with this :smile:
I will follow your advice and report back how it goes.

Hello mojibakeumd, it worked.

I updated /etc/gitlab/gitlab.rb
I ran command; rm -rf /opt/gitlab/embedded/nodes
I ran command; gitlab-ctl reconfigure

When everything was done it worked. Is this a bug or that is how it should work? i.e. - I always have to run those commands for the changes to take effect?

EDIT:
I believe the command “gitlab-ctl reconfigure” should always be called when doing changes to /etc/gitlab/gitlab.rb as in the following link it always asks to run that command after changes to this file:

Maybe all that is needed is to have the document at the following link updated with this information:
http://doc.gitlab.com/ce/integration/ldap.html

I do not know how that can be done though.

yes the gitlab-ctl reconfigure needs to be run anytime you make a change to /etc/gitlab/gitlab.rb.
There was a bug about when making changes to /etc/gitlab/gitlab.rb and the changes not being reflected when gitlab-ctl reconfigure was run, but that should have been fixed with Omnibus 7.10.1. You should only need to run gitlab-ctl reconfigure. The rm -rf /opt/gitlab/embedded/nodes was only a work around for the bug (but also fixed your issue)
But maybe you discovered a new bug.