Hi, Dan.
Glad to know it helped, you're welcome.
>(I can log the question separately if you prefer)
If you feel that may become a separate - and sizeable - project, that would be better, indeed. If you just would like to clarify a couple of things, we could continue here, no problem.
>I'm not familiar with ldap management and these tools (ldapsearch, modify add etc...). Are they the recommended tools to use to migrate client configuration from environment to environment (i.e. from dev -> test -> prod) or is there a different accepted workflow to achieve this?
I wouldn't say "recommended", as it sounds too restrictive, let's say it's probably the easiest, "pre-packaged" method of dumping some items from Gluu's LDAP server, and re-importing them back to it, or some other server. LDAP is established and well-defined protocol, so, if need will arise, you can use any other tool which meets your requirement. Like, you could produce a Python script which could automate such imports to a lot of servers at once. For quick and easy edits I also like to use **Jxplorer** GUI tool, though it doesn't scale well, and for batch jobs console tools are suited better. So, anything that can communicate with Gluu via LDAP is fine. Using some other ways (non-LDAP ways) is what probably not recommended (like, any kinds of direct edits to database files etc).
Another solid option would be, of course, simply using web UI to re-create client registration with the same properties at the other server, though it doesn't scale at all and may be frustrating if you have to do this often :) Writing some kind of script (python, bash etc) that automates it would be more practical in such case. Specifically for case of OIDC clients you may also consider [Dynamic client registration flow](https://openid.net/specs/openid-connect-registration-1_0.html)
You just need to be aware, that unless you specifically designed all said servers to be exactly the same in terms of LDAP server's contents, you can't just dump some configuration item from one Gluu instance, and import it to another. As you've already perhaps noted when doing searches and edits before, there is a lot of uniqueness in different attributes of those entries. Each server is assigned a couple of unique tokens upon its initialization, which then end up in its DNs and attributes' values. You'll need to pre-process dumped items so they would become compatible with another server's directory tree, in such case.