{"repo":"MrBE4R/gitlab-ldap-sync","free":true,"listed":false,"github":"https://github.com/MrBE4R/gitlab-ldap-sync","clone":"git clone https://github.com/MrBE4R/gitlab-ldap-sync.git","description":"Python project to sync LDAP/Active Directory Groups into GitLab","language":"Python","stars":34,"topics":["gitlab","ldap","active-directory","python","synchronization","python3","automation"],"license":"MIT","category":"workflow-automation","readme_excerpt":"gitlab-ldap-sync Python project to sync LDAP/Active Directory Groups into GitLab. The script will create the missing LDAP groups into gitlab and sync membership of all LDAP groups. Getting Started These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system. Prerequisites This project has been tested on CentOS 7.6 with GitLab 11.5. and OpenLDAP and Active Directory. Installing You could either install requirements system wide or use virtual environment / conda, choose your poison. To get this up and running you just need to do the following : Clone the repo Install requirements Edit config.json with you values Start the script and enjoy your sync users and groups being synced You should get something like this : You could add the script in a cron to run it periodically. Deployment How to configure config.json You should use or but not both. Check the gitlab documentation for how to generate the personal access token. If set to true, the script will create the users in gitlab and add them in the corresponding groups. Be aware that gitlab will send a mail to every new users created. TODO - [ ] Use async search to avoid errors with large LDAP - [ ] Maybe implement sync interval directly in the script to avoid using cron or systemd - [x] Use a true logging solution (no more silly print statements) - [x] Implement and to allow the selection of ","default_branch":null,"files":null,"tree":[],"storefront":"/r/MrBE4R","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/MrBE4R/gitlab-ldap-sync/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}