Update: After some digging on the forums I found [this post](https://support.gluu.org/upgrade/7068/upgrade-from-312-to-316-issue/#at48437) which said that migrations from OpenLDAP weren't supported and linked to the OpenDJ migration page. I followed this on my 3.1.2 migration (new clean server with import of backup3031 from the original 3.1.2 production server) but ran into errors on the very last step.
oxIDPAuthentication does exist in the original ou=appliances,o=gluu LDAP entry.
```
root@id:/install/community-edition-setup# python openldap2opendj.py -p
Traceback (most recent call last):
File "openldap2opendj.py", line 1497, in <module>
post_ldap_update(installObject.ldap_binddn, installObject.ldapPass)
File "openldap2opendj.py", line 95, in post_ldap_update
result = conn.search_s('ou=appliances,o=gluu',ldap.SCOPE_SUBTREE,'(oxIDPAuthentication=*)',['oxIDPAuthentication'])
File "/usr/lib/python2.7/dist-packages/ldap/ldapobject.py", line 597, in search_s
return self.search_ext_s(base,scope,filterstr,attrlist,attrsonly,None,None,timeout=self.timeout)
File "/usr/lib/python2.7/dist-packages/ldap/ldapobject.py", line 591, in search_ext_s
return self.result(msgid,all=1,timeout=timeout)[1]
File "/usr/lib/python2.7/dist-packages/ldap/ldapobject.py", line 503, in result
resp_type, resp_data, resp_msgid = self.result2(msgid,all,timeout)
File "/usr/lib/python2.7/dist-packages/ldap/ldapobject.py", line 507, in result2
resp_type, resp_data, resp_msgid, resp_ctrls = self.result3(msgid,all,timeout)
File "/usr/lib/python2.7/dist-packages/ldap/ldapobject.py", line 514, in result3
resp_ctrl_classes=resp_ctrl_classes
File "/usr/lib/python2.7/dist-packages/ldap/ldapobject.py", line 521, in result4
ldap_result = self._ldap_call(self._l.result4,msgid,all,timeout,add_ctrls,add_intermediates,add_extop)
File "/usr/lib/python2.7/dist-packages/ldap/ldapobject.py", line 106, in _ldap_call
result = func(*args,**kwargs)
ldap.NO_SUCH_OBJECT: {'info': 'The entry ou=appliances,o=gluu specified as the search base does not exist in the Directory Server', 'desc': 'No such object'}
```
[Full output here](https://gist.githubusercontent.com/thatguyyoulove/35838c25740ab94d8dcd7c6167bb889f/raw/6cc52bed2afbe669cc2660e5451cd63217ce0844/opendjmigration.log)