WIP: Support a specific group for LDAP group sync
Fixes https://gitlab.com/gitlab-org/gitlab-ee/issues/399
What does this MR do?
Allow LDAP Group Sync to accept a single or set of Group IDs to sync.
This also replaces the exclusive lease with a state machine.
Are there points in the code the reviewer needs to double check?
All of it
Why was this MR needed?
This paves the way for further group sync improvements such as https://gitlab.com/gitlab-org/gitlab-ee/issues/400. The exclusive lease change was necessary to facilitate https://gitlab.com/gitlab-org/gitlab-ee/issues/400 and because exclusive lease made debugging LDAP problems nearly impossible.
Does this MR meet the acceptance criteria?
-
CHANGELOG entry added -
Documentation created/updated -
API support added - Tests
-
Added for this feature/bug -
All builds are passing
-
-
Conform by the style guides -
Branch has no merge conflicts with master
(if you do - rebase it please) -
Squashed related commits together