Problem
Some groups cannot be synced with the OX Connector.
This is the traceback:
2023-09-04 15:18:23 WARNING Traceback (most recent call last):
2023-09-04 15:18:23 WARNING File "/tmp/univention-ox-connector.listener_trigger", line 341, in run_on_files
2023-09-04 15:18:23 WARNING function(obj)
2023-09-04 15:18:23 WARNING File "/usr/lib/python3.9/site-packages/univention/ox/provisioning/__init__.py", line 103, in run
2023-09-04 15:18:23 WARNING for new_obj in get_group_objs(obj):
2023-09-04 15:18:23 WARNING File "/usr/lib/python3.9/site-packages/univention/ox/provisioning/__init__.py", line 156, in get_group_objs
2023-09-04 15:18:23 WARNING user_obj = univention.ox.provisioning.helpers.get_old_obj(user)
2023-09-04 15:18:23 WARNING File "/tmp/univention-ox-connector.listener_trigger", line 72, in _get_old_object
2023-09-04 15:18:23 WARNING return object_from_path(path_to_old_user)
2023-09-04 15:18:23 WARNING File "/tmp/univention-ox-connector.listener_trigger", line 261, in object_from_path
2023-09-04 15:18:23 WARNING entry_uuid = content["id"]
2023-09-04 15:18:23 WARNING TypeError: 'NoneType' object is not subscriptable
2023-09-04 15:18:23 INFO This is consecutive error #4
Analysis
Some users were missing in the /var/lib/univention-appcenter/apps/ox-connector/data/listener/old/
directory. They have been removed from that directory at some point. Those missing users existed in OX though. You can check if there are missing users in the old directory:
univention-ldapsearch -xLLL univentionObjectType=users/user entryUUID | grep entryUUID | awk '{print $2}' | xargs -I{} stat /var/lib/univention-appcenter/apps/ox-connector/data/listener/old/{}.json 2>&1 > /dev/null
Solution
We re-synchronized those users and the group could be provisioned succesfully.