We are moving to a new domain for authentication and I am not sure about how to go about migrating.
- Email addresses are staying the name
- All usernames are changing to a new format
- LDAP is changing
We are currently running version 9.0.5 of Gitlab CE, though we will update to latest before migrating. My current guess on how the process should go without messing up a bunch of history, permissions, etc. is:
- Change usernames from current format to new format (we have a list of before/after)
- Change system config to new LDAP settings
- Is there some individual user settings that need to be changed too for LDAP?
- Hope and Pray?
I ended up writing ruby functions that I could call on the 'gitlab-rails console production'
1. First, I had to update the email addresses to the ones that are in the new LDAP system (they set up a proxy to our old email addresses, but mail attribute is set to new one)
2. To get around the reconfirmation issue for email change, I called 'user.skip_reconfirmation!' before I called 'user.save!'
2. Next I changed the system config with the new LDAP settings
3. Reconfigured and restarted Gitlab
4. Then I ran my second ruby function from the console to update all of the usernames to the new format
After this, everyone was able to login with their new usernames and their internal identities updated properly.