Bug 50381 - ImportError tracebacks in updater.log in daily Jenkins tests
ImportError tracebacks in updater.log in daily Jenkins tests
Status: NEW
Product: UCS
Classification: Unclassified
Component: App Center
UCS 4.4
Other Linux
: P5 normal (vote)
: ---
Assigned To: UMC maintainers
UMC maintainers
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2019-10-17 10:32 CEST by Florian Best
Modified: 2020-11-10 09:24 CET (History)
1 user (show)

See Also:
What kind of report is it?: ---
What type of bug is this?: ---
Who will be affected by this bug?: ---
How will those affected feel about the bug?: ---
User Pain:
Enterprise Customer affected?:
School Customer affected?:
ISV affected?:
Waiting Support:
Flags outvoted (downgraded) after PO Review:
Ticket number:
Bug group (optional):
Max CVSS v3 score:


Attachments
updater.log (29.04 KB, text/x-log)
2019-10-17 10:32 CEST, Florian Best
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Florian Best univentionstaff 2019-10-17 10:32:56 CEST
Created attachment 10208 [details]
updater.log

The updater.log in our daily upgrade jenkins tests contain the following tracebacks.
We should investigate if they break anything.

2019-10-17/S4Connector-update-master-s4connector-updater.log contains 4 tracebacks:
2 times:
Traceback (most recent call last):
  File "/usr/bin/univention-app", line 91, in <module>
    main()
  File "/usr/bin/univention-app", line 72, in main
    for action_name, action in all_actions():
  File "/usr/lib/python2.7/dist-packages/univention/appcenter/actions/__init__.py", line 294, in all_actions
    _import()
  File "/usr/lib/python2.7/dist-packages/univention/appcenter/actions/__init__.py", line 304, in _import
    __import__('univention.appcenter.actions.%s' % pymodule_name)
  File "/usr/lib/python2.7/dist-packages/univention/appcenter/actions/register.py", line 44, in <module>
    from univention.lib.ldap_extension import UniventionLDAPSchema
  File "/usr/lib/python2.7/dist-packages/univention/lib/ldap_extension.py", line 57, in <module>
    from univention.admin import uldap as udm_uldap
  File "/usr/lib/pymodules/python2.7/univention/admin/__init__.py", line 630, in <module>
    from univention.admin import modules, objects, syntax, hook, mapping  # noqa
  File "/usr/lib/pymodules/python2.7/univention/admin/modules.py", line 47, in <module>
    import univention.admin.syntax
  File "/usr/lib/pymodules/python2.7/univention/admin/syntax.py", line 60, in <module>
    import univention.admin.types
 ImportError: No module named types
 
1 times:
Traceback (most recent call last):
  File "/usr/bin/univention-app", line 91, in <module>
    main()
  File "/usr/bin/univention-app", line 78, in main
    ret = args.func(args)
  File "/usr/lib/python2.7/dist-packages/univention/appcenter/actions/__init__.py", line 226, in call_with_namespace
    result = self.main(namespace)
  File "/usr/lib/python2.7/dist-packages/univention/appcenter/actions/register.py", line 86, in main
    self._register_app_for_apps(apps, args)
  File "/usr/lib/python2.7/dist-packages/univention/appcenter/actions/register.py", line 416, in _register_app_for_apps
    updates.update(self._unregister_app(app, args, lo, pos, delay=True))
  File "/usr/lib/python2.7/dist-packages/univention/appcenter/actions/register.py", line 640, in _unregister_app
    ldap_object = get_app_ldap_object(app, lo, pos)
  File "/usr/lib/python2.7/dist-packages/univention/appcenter/udm.py", line 280, in get_app_ldap_object
    return ApplicationLDAPObject(app, lo, pos, or_create)
  File "/usr/lib/python2.7/dist-packages/univention/appcenter/udm.py", line 180, in __init__
    self._reload(app, create_if_not_exists)
  File "/usr/lib/python2.7/dist-packages/univention/appcenter/udm.py", line 191, in _reload
    self._udm_obj = init_object('appcenter/app', self._lo, self._pos, self.dn)
  File "/usr/lib/python2.7/dist-packages/univention/appcenter/udm.py", line 75, in init_object
    module = _get_module(module, lo, pos)
  File "/usr/lib/python2.7/dist-packages/univention/appcenter/udm.py", line 66, in _get_module
    _update_modules()
  File "/usr/lib/python2.7/dist-packages/univention/appcenter/udm.py", line 62, in _update_modules
    udm_modules.update()
  File "/usr/lib/pymodules/python2.7/univention/admin/modules.py", line 121, in update
    os.path.walk(dir, _walk, p)
  File "/usr/lib/python2.7/posixpath.py", line 239, in walk
    walk(name, func, arg)
  File "/usr/lib/python2.7/posixpath.py", line 231, in walk
    func(arg, top, names)
  File "/usr/lib/pymodules/python2.7/univention/admin/modules.py", line 106, in _walk
    m = __import__(mod, globals(), locals(), name)
  File "/usr/lib/pymodules/python2.7/univention/admin/handlers/users/self.py", line 37, in <module>
    import univention.admin.handlers.users.user as udm_user
  File "/usr/lib/pymodules/python2.7/univention/admin/handlers/users/user.py", line 62, in <module>
    from univention.lib.s4 import rids_for_well_known_security_identifiers
 ImportError: No module named s4
 
1 times:
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/univention/appcenter/actions/__init__.py", line 226, in call_with_namespace
    result = self.main(namespace)
  File "/usr/lib/python2.7/dist-packages/univention/appcenter/actions/register.py", line 86, in main
    self._register_app_for_apps(apps, args)
  File "/usr/lib/python2.7/dist-packages/univention/appcenter/actions/register.py", line 416, in _register_app_for_apps
    updates.update(self._unregister_app(app, args, lo, pos, delay=True))
  File "/usr/lib/python2.7/dist-packages/univention/appcenter/actions/register.py", line 640, in _unregister_app
    ldap_object = get_app_ldap_object(app, lo, pos)
  File "/usr/lib/python2.7/dist-packages/univention/appcenter/udm.py", line 280, in get_app_ldap_object
    return ApplicationLDAPObject(app, lo, pos, or_create)
  File "/usr/lib/python2.7/dist-packages/univention/appcenter/udm.py", line 180, in __init__
    self._reload(app, create_if_not_exists)
  File "/usr/lib/python2.7/dist-packages/univention/appcenter/udm.py", line 191, in _reload
    self._udm_obj = init_object('appcenter/app', self._lo, self._pos, self.dn)
  File "/usr/lib/python2.7/dist-packages/univention/appcenter/udm.py", line 75, in init_object
    module = _get_module(module, lo, pos)
  File "/usr/lib/python2.7/dist-packages/univention/appcenter/udm.py", line 66, in _get_module
    _update_modules()
  File "/usr/lib/python2.7/dist-packages/univention/appcenter/udm.py", line 62, in _update_modules
    udm_modules.update()
  File "/usr/lib/pymodules/python2.7/univention/admin/modules.py", line 121, in update
    os.path.walk(dir, _walk, p)
  File "/usr/lib/python2.7/posixpath.py", line 239, in walk
    walk(name, func, arg)
  File "/usr/lib/python2.7/posixpath.py", line 231, in walk
    func(arg, top, names)
  File "/usr/lib/pymodules/python2.7/univention/admin/modules.py", line 106, in _walk
    m = __import__(mod, globals(), locals(), name)
  File "/usr/lib/pymodules/python2.7/univention/admin/handlers/users/self.py", line 37, in <module>
    import univention.admin.handlers.users.user as udm_user
  File "/usr/lib/pymodules/python2.7/univention/admin/handlers/users/user.py", line 62, in <module>
    from univention.lib.s4 import rids_for_well_known_security_identifiers
 ImportError: No module named s4
Comment 1 Dirk Wiesenthal univentionstaff 2019-10-17 11:08:28 CEST
I have reassigned to UDM maintainers. Change back if you think this is inappropriate.

The App Center imports UDM which fails. My thoughts from a quick look into the tracebacks:

univention.admin.types is not known
  This is a new file? Did we link it in preinst as we have to with all new files as long as we use python_support?

univention.lib.s4 is not known
  The users module needs to handle this gracefully or depend on our s4 lib.



Especially the first error may be WONTFIX. Even if we release an errata update this will not fix the very first invocation of univention-app of the already released images. We may want to wait until dh_python2 is used.
Comment 2 Florian Best univentionstaff 2019-10-17 16:36:23 CEST
(In reply to Dirk Wiesenthal from comment #1)
> I have reassigned to UDM maintainers. Change back if you think this is
> inappropriate.
I don't think this is right. Maybe updater-maintainers instead?
It is a generic problem affecting updates.

> The App Center imports UDM which fails. My thoughts from a quick look into
> the tracebacks:
> 
> univention.admin.types is not known
>   This is a new file? Did we link it in preinst as we have to with all new
> files as long as we use python_support?
No, the file is not linked in preinst because that link is removed again. But I fixed the update-python-modules call in the postinst.

> univention.lib.s4 is not known
>   The users module needs to handle this gracefully or depend on our s4 lib.
# dpkg -S '/usr/lib/python2.7/dist-packages/univention/lib/s4.py'
python-univention-lib: /usr/lib/python2.7/dist-packages/univention/lib/s4.py

~/git2/ucs/management/univention-directory-manager-modules/debian/control:
 12 Package: python-univention-directory-manager
 14 Depends: ${misc:Depends}, ${python:Depends},
 25  python-univention-lib (>= 7.0.0-14),

A dependency exists. What else could this be? Race condition during unpacking?

> Especially the first error may be WONTFIX. Even if we release an errata
> update this will not fix the very first invocation of univention-app of the
> already released images. We may want to wait until dh_python2 is used.

I hope and think dh_python2 fixes all those errors.
Comment 3 Florian Best univentionstaff 2020-08-11 21:50:18 CEST
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/univention/appcenter/actions/__init__.py", line 226, in call_with_namespace
    result = self.main(namespace)
  File "/usr/lib/python2.7/dist-packages/univention/appcenter/actions/register.py", line 86, in main
    self._register_app_for_apps(apps, args)
  File "/usr/lib/python2.7/dist-packages/univention/appcenter/actions/register.py", line 416, in _register_app_for_apps
    updates.update(self._unregister_app(app, args, lo, pos, delay=True))
  File "/usr/lib/python2.7/dist-packages/univention/appcenter/actions/register.py", line 640, in _unregister_app
    ldap_object = get_app_ldap_object(app, lo, pos)
  File "/usr/lib/python2.7/dist-packages/univention/appcenter/udm.py", line 280, in get_app_ldap_object
    return ApplicationLDAPObject(app, lo, pos, or_create)
  File "/usr/lib/python2.7/dist-packages/univention/appcenter/udm.py", line 180, in __init__
    self._reload(app, create_if_not_exists)
  File "/usr/lib/python2.7/dist-packages/univention/appcenter/udm.py", line 191, in _reload
    self._udm_obj = init_object('appcenter/app', self._lo, self._pos, self.dn)
  File "/usr/lib/python2.7/dist-packages/univention/appcenter/udm.py", line 75, in init_object
    module = _get_module(module, lo, pos)
  File "/usr/lib/python2.7/dist-packages/univention/appcenter/udm.py", line 66, in _get_module
    _update_modules()
  File "/usr/lib/python2.7/dist-packages/univention/appcenter/udm.py", line 62, in _update_modules
    udm_modules.update()
  File "/usr/lib/pymodules/python2.7/univention/admin/modules.py", line 121, in update
    os.path.walk(dir, _walk, p)
  File "/usr/lib/python2.7/posixpath.py", line 239, in walk
    walk(name, func, arg)
  File "/usr/lib/python2.7/posixpath.py", line 231, in walk
    func(arg, top, names)
  File "/usr/lib/pymodules/python2.7/univention/admin/modules.py", line 106, in _walk
    m = __import__(mod, globals(), locals(), name)
  File "/usr/lib/pymodules/python2.7/univention/admin/handlers/computers/__init__.py", line 46, in <module>
    os.path.walk(path, __walk, path)
  File "/usr/lib/python2.7/posixpath.py", line 231, in walk
    func(arg, top, names)
  File "/usr/lib/pymodules/python2.7/univention/admin/handlers/computers/__init__.py", line 42, in __walk
    computers.append(__import__(file_[: -3], globals(), locals(), ['']))
  File "/usr/lib/pymodules/python2.7/univention/admin/handlers/computers/domaincontroller_master.py", line 38, in <module>
    from univention.admin.handlers.computers.__base import ComputerObject
ImportError: No module named __base
Comment 4 Florian Best univentionstaff 2020-08-12 08:23:20 CEST
Setting up libwbclient0:amd64 (2:4.10.1-1A~4.4.0.201912031949) ...
__init__() got an unexpected keyword argument 'help_text'
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/univention/appcenter/actions/__init__.py", line 226, in call_with_namespace
    result = self.main(namespace)
  File "/usr/lib/python2.7/dist-packages/univention/appcenter/actions/register.py", line 86, in main
    self._register_app_for_apps(apps, args)
  File "/usr/lib/python2.7/dist-packages/univention/appcenter/actions/register.py", line 418, in _register_app_for_apps
    updates.update(self._unregister_app(app, args, lo, pos, delay=True))
  File "/usr/lib/python2.7/dist-packages/univention/appcenter/actions/register.py", line 642, in _unregister_app
    ldap_object = get_app_ldap_object(app, lo, pos)
  File "/usr/lib/python2.7/dist-packages/univention/appcenter/udm.py", line 280, in get_app_ldap_object
    return ApplicationLDAPObject(app, lo, pos, or_create)
  File "/usr/lib/python2.7/dist-packages/univention/appcenter/udm.py", line 180, in __init__
    self._reload(app, create_if_not_exists)
  File "/usr/lib/python2.7/dist-packages/univention/appcenter/udm.py", line 191, in _reload
    self._udm_obj = init_object('appcenter/app', self._lo, self._pos, self.dn)
  File "/usr/lib/python2.7/dist-packages/univention/appcenter/udm.py", line 75, in init_object
    module = _get_module(module, lo, pos)
  File "/usr/lib/python2.7/dist-packages/univention/appcenter/udm.py", line 66, in _get_module
    _update_modules()
  File "/usr/lib/python2.7/dist-packages/univention/appcenter/udm.py", line 62, in _update_modules
    udm_modules.update()
  File "/usr/lib/pymodules/python2.7/univention/admin/modules.py", line 123, in update
  File "/usr/lib/python2.7/posixpath.py", line 239, in walk
    walk(name, func, arg)
  File "/usr/lib/python2.7/posixpath.py", line 231, in walk
    func(arg, top, names)
  File "/usr/lib/pymodules/python2.7/univention/admin/modules.py", line 108, in _walk
  File "/usr/lib/python2.7/dist-packages/univention/admin/handlers/shares/print.py", line 37, in <module>
    import univention.admin.handlers.shares.printer
  File "/usr/lib/python2.7/dist-packages/univention/admin/handlers/shares/printer.py", line 177, in <module>
    ], help_text=_('For information about how to manage Windows printer drivers and troubleshooting, see <a href="https://help.univention.com/t/overview-windows-printer-driver-distribution-known-issues-and-workarounds/13387" target="_blank" rel="noreferrer noopener">here</a>.')),
TypeError: __init__() got an unexpected keyword argument 'help_text'
Setting up libsmbclient:amd64 (2:4.10.1-1A~4.4.0.201912031949) ...
Comment 5 Florian Best univentionstaff 2020-08-18 09:29:00 CEST
Preparing to unpack .../45-univention-management-console-module-apps_8.0.11-88A~4.4.0.201911141422_all.deb ...
Unpacking univention-management-console-module-apps (8.0.11-88A~4.4.0.201911141422) over (8.0.11-69A~4.4.0.201909201702) ...
univention-management-console-server.service is not active, cannot reload.
invoke-rc.d: initscript univention-management-console-server, action "reload" failed.
Preparing to unpack .../46-univention-docker_4.0.1-5A~4.4.0.201910021535_all.deb ...
Unpacking univention-docker (4.0.1-5A~4.4.0.201910021535) over (4.0.0-4A~4.4.0.201904301731) ...
Preparing to unpack .../47-univention-appcenter-docker_8.0.11-88A~4.4.0.201911141422_all.deb ...
Unpacking univention-appcenter-docker (8.0.11-88A~4.4.0.201911141422) over (8.0.11-69A~4.4.0.201909201702) ...
Selecting previously unselected package python-univention-appcenter-docker.
Preparing to unpack .../48-python-univention-appcenter-docker_8.0.11-88A~4.4.0.201911141422_all.deb ...
Unpacking python-univention-appcenter-docker (8.0.11-88A~4.4.0.201911141422) ...
Traceback (most recent call last):
  File "/usr/bin/univention-app", line 91, in <module>
    main()
  File "/usr/bin/univention-app", line 72, in main
    for action_name, action in all_actions():
  File "/usr/lib/python2.7/dist-packages/univention/appcenter/actions/__init__.py", line 294, in all_actions
    _import()
  File "/usr/lib/python2.7/dist-packages/univention/appcenter/actions/__init__.py", line 304, in _import
    __import__('univention.appcenter.actions.%s' % pymodule_name)
ImportError: No module named docker_upgrade
Preparing to unpack .../49-univention-appcenter_8.0.11-88A~4.4.0.201911141422_all.deb ...
Unpacking univention-appcenter (8.0.11-88A~4.4.0.201911141422) over (8.0.11-69A~4.4.0.201909201702) ...
Preparing to unpack .../50-univention-management-console-module-appcenter_8.0.11-88A~4.4.0.201911141422_all.deb ...
Unpacking univention-management-console-module-appcenter (8.0.11-88A~4.4.0.201911141422) over (8.0.11-69A~4.4.0.201909201702) ...
univention-management-console-server.service is not active, cannot reload.
invoke-rc.d: initscript univention-management-console-server, action "reload" failed.
Preparing to unpack .../51-python-univention-appcenter_8.0.11-88A~4.4.0.201911141422_all.deb ...
Unpacking python-univention-appcenter (8.0.11-88A~4.4.0.201911141422) over (8.0.11-69A~4.4.0.201909201702) ...
Comment 6 Florian Best univentionstaff 2020-08-19 09:51:21 CEST
1 times in /var/log/univention/updater.log:
Traceback (most recent call last):
  File "/usr/bin/univention-app", line 91, in <module>
    main()
  File "/usr/bin/univention-app", line 72, in main
    for action_name, action in all_actions():
  File "/usr/lib/python2.7/dist-packages/univention/appcenter/actions/__init__.py", line 294, in all_actions
    _import()
  File "/usr/lib/python2.7/dist-packages/univention/appcenter/actions/__init__.py", line 304, in _import
    __import__('univention.appcenter.actions.%s' % pymodule_name)
  File "/usr/lib/python2.7/dist-packages/univention/appcenter/actions/docker_upgrade.py", line 40, in <module>
  File "/usr/lib/python2.7/dist-packages/univention/appcenter/actions/docker_base.py", line 46, in <module>
ImportError: No module named service
Comment 7 Florian Best univentionstaff 2020-08-24 10:22:43 CEST
1 times in /var/log/univention/updater.log:
Traceback (most recent call last):
  File "<stdin>", line 70, in <module>
  File "<stdin>", line 58, in _get_translations
  File "/usr/lib/python2.7/dist-packages/univention/appcenter/app.py", line 1250, in get_localised
    get = get_action('get')()
  File "/usr/lib/python2.7/dist-packages/univention/appcenter/actions/__init__.py", line 289, in get_action
    _import()
  File "/usr/lib/python2.7/dist-packages/univention/appcenter/actions/__init__.py", line 304, in _import
    __import__('univention.appcenter.actions.%s' % pymodule_name)
  File "/usr/lib/python2.7/dist-packages/univention/appcenter/actions/register.py", line 44, in <module>
    from univention.lib.ldap_extension import UniventionLDAPSchema
ImportError: No module named ldap_extension
Comment 8 Florian Best univentionstaff 2020-11-10 09:24:48 CET
Traceback (most recent call last):
  File "/usr/bin/univention-app", line 91, in <module>
    main()
  File "/usr/bin/univention-app", line 72, in main
    for action_name, action in all_actions():
  File "/usr/lib/python2.7/dist-packages/univention/appcenter/actions/__init__.py", line 294, in all_actions
    _import()
  File "/usr/lib/python2.7/dist-packages/univention/appcenter/actions/__init__.py", line 304, in _import
    __import__('univention.appcenter.actions.%s' % pymodule_name)
  File "/usr/lib/python2.7/dist-packages/univention/appcenter/actions/docker_upgrade.py", line 40, in <module>
ImportError: No module named docker_base