Univention Bugzilla – Bug 23114
UDM-Update-Skript für LDAP-Schemaerweiterungen
Last modified: 2011-12-13 15:50:25 CET
Für die Schemaerweiterungen in Bug# 23111 sollte für das Update ein Skript vorbereitet werden, dass für alle entsprechenden UDM-Objekte ihren UDM-Objekttyp in das LDAP einträgt.
univention-directory-manager-modules (7.0.39-1) unstable; urgency=low * add univention-object-type-migrate (Bug #23114)
Changelog angepasst
Das Skript funktioniert. root@master:/etc/ldap/schema# /usr/share/univention-directory-manager-tools/univention-object-type-migrate -v -n -> wird ein Fehler gefunden steigt das Skript mit einem Traceback aus. Ich denke hier sollte nur eine Fehlermeldung angezeigt werden und der Rest des LDAP-Verzeichnissen ebenfalls geprüft werden. Zusätzlich gab es auf meinem Testsystem den Fall, dass "irgendwie" an cn=univention der objectType container/cn geschrieben wurde anstelle von settings/cn. Das werde ich noch prüfen. Laut der verify-Funktion weiss das Skript, dass settings/cn richtig ist.
univention-directory-manager-modules (7.0.52-1) unstable; urgency=low * univention-object-type-migrate: improve -v (Bug #23114) Es wird jetzt nicht mehr beim -v beim ersten Fehler abgebrochen, sondern alle Fehler ausgegeben. Zusätzlich wird mit 1 beendet, wenn es Fehler beim -v gab.
-v funktioniert jetzt wunderbar und wurde auch verwendet um die identify-Funktionen der UDM-Module zu testen. Sobald Bug #23111 verifiziert ist kann dieser auch auf VERIFIED
Durch Bug #22436 gibt es auf einem aktualisiertem UCS 3.0 beim Aufruf von univention-object-type-migrate (mit oder ohne "-v") einen Traceback, das Skript steigt dort dann aus. -> /usr/share/univention-directory-manager-tools/univention-object-type-migrate -a -v ... Traceback (most recent call last): File "/usr/share/univention-directory-manager-tools/univention-object-type-migrate", line 116, in <module> if not main(options): File "/usr/share/univention-directory-manager-tools/univention-object-type-migrate", line 103, in main uldap.modify(dn, changes) File "/usr/lib/pymodules/python2.6/univention/uldap.py", line 474, in modify self.lo.modify_s(dn, ml) File "/usr/lib/python2.6/dist-packages/ldap/ldapobject.py", line 322, in modify_s return self.result(msgid,all=1,timeout=self.timeout) File "/usr/lib/python2.6/dist-packages/ldap/ldapobject.py", line 422, in result res_type,res_data,res_msgid = self.result2(msgid,all,timeout) File "/usr/lib/python2.6/dist-packages/ldap/ldapobject.py", line 426, in result2 res_type, res_data, res_msgid, srv_ctrls = self.result3(msgid,all,timeout) File "/usr/lib/python2.6/dist-packages/ldap/ldapobject.py", line 432, in result3 ldap_result = self._ldap_call(self._l.result3,msgid,all,timeout) File "/usr/lib/python2.6/dist-packages/ldap/ldapobject.py", line 96, in _ldap_call result = func(*args,**kwargs) ldap.OBJECT_CLASS_VIOLATION: {'info': "attribute 'kolabHomeServer' not allowed", 'desc': 'Object class violation'} Bitte nochmal klären, wie hier das gewünschte Verhalten ist, soll das Skript trotzdem weitermachen, oder Zumindest eine hübschere Fehlermeldung anzeigen ... ?
(In reply to comment #6) > Durch Bug #22436 gibt es auf einem aktualisiertem UCS 3.0 beim Aufruf von > univention-object-type-migrate (mit oder ohne "-v") einen Traceback, das Skript > steigt dort dann aus. > > Bitte nochmal klären, wie hier das gewünschte Verhalten ist, soll das Skript > trotzdem weitermachen, oder Zumindest eine hübschere Fehlermeldung anzeigen ... Hierbei handelt es sich um ein kaputtes LDAP - inkonsistenter Datenbestand im Vergleich zum Schema - darum kann das Skript hier nicht fortführen. Weil dies ein UCS-interer-Bug ist, ist ein Traceback in solchen Fällen sinnvoll.
(In reply to comment #7) > Hierbei handelt es sich um ein kaputtes LDAP - inkonsistenter Datenbestand im > Vergleich zum Schema - darum kann das Skript hier nicht fortführen. > Weil dies ein UCS-interer-Bug ist, ist ein Traceback in solchen Fällen > sinnvoll. Finde ich korrekt so
UCS 3.0-0 wurde veröffentlicht. Sollte der hier beschriebene Bug mit einer neueren Version von UCS erneut auftreten, so sollte dieser Bug dupliziert werden: "Clone This Bug"