buildmaster: fix Twisted dependency hell by using twisted==22.10.0 v11
authorPetr Štetiar <ynezz@true.cz>
Fri, 22 Dec 2023 10:35:23 +0000 (10:35 +0000)
committerPetr Štetiar <ynezz@true.cz>
Fri, 22 Dec 2023 10:58:33 +0000 (11:58 +0100)
Force twisted==22.10.0 which fixes following buildbot master startup
issue:

Unhandled error in Deferred:

Traceback (most recent call last):
  File "/.../site-packages/buildbot/scripts/create_master.py", line 84, in createDB
    master = BuildMaster(config['basedir'])
  File "/.../site-packages/buildbot/master.py", line 102, in __init__
    self._services_d = self.create_child_services()
  File "/.../site-packages/twisted/internet/defer.py", line 2245, in unwindGenerator
    return _cancellableInlineCallbacks(gen)
  File "/.../site-packages/twisted/internet/defer.py", line 2157, in _cancellableInlineCallbacks
    _inlineCallbacks(None, gen, status, _copy_context())
--- <exception caught here> ---
  File "/.../site-packages/twisted/internet/defer.py", line 1997, in _inlineCallbacks
    result = context.run(gen.send, result)
  File "/.../site-packages/buildbot/master.py", line 188, in create_child_services
    self.www = wwwservice.WWWService()
  File "/.../site-packages/buildbot/www/service.py", line 196, in __init__
    self.apps = get_plugins('www', None, load_now=True)
  File "/.../site-packages/buildbot/plugins/db.py", line 356, in get_plugins
    return _DB.add_namespace(namespace, interface, check_extras, load_now)
  File "/.../site-packages/buildbot/plugins/db.py", line 306, in add_namespace
    tempo.load()
  File "/.../site-packages/buildbot/plugins/db.py", line 242, in load
    self._tree.load()
  File "/.../site-packages/buildbot/plugins/db.py", line 112, in load
    child.load()
  File "/.../site-packages/buildbot/plugins/db.py", line 45, in load
    self._value = self._loader(self._entry)
  File "/.../site-packages/buildbot/plugins/db.py", line 214, in _load_entry
    raise PluginDBError('Requirements are not satisfied '
buildbot.errors.PluginDBError: Requirements are not satisfied for buildbot.www:base:
The 'zope-interface>=5' distribution was not found and is required by Twisted

This commit should be reverted once we bump to buildbot >= 3.10 which
has this workaround integrated.

References: https://github.com/buildbot/buildbot/commit/94e2d59c23472f3fe640437630309bea518c5b9e
Signed-off-by: Petr Štetiar <ynezz@true.cz>
docker/buildmaster/Dockerfile

index 8d21245eaeb0ce6bcc14d6cddda9baf6ea1b6ef8..7be345ca50a60e6ec22b904ae0a279109d99c3df 100644 (file)
@@ -36,6 +36,7 @@ RUN \
                "buildbot-console-view==$BUILDBOT_VERSION" \
                "buildbot-grid-view==$BUILDBOT_VERSION" \
                "buildbot-worker==$BUILDBOT_VERSION" \
+               "twisted==22.10.0" \
                pyOpenSSL \
                service_identity
 RUN \