diff --git a/buildbot_gitea/reporter.py b/buildbot_gitea/reporter.py index f5b988a..ae85d28 100644 --- a/buildbot_gitea/reporter.py +++ b/buildbot_gitea/reporter.py @@ -17,23 +17,31 @@ from buildbot.process.results import SUCCESS from buildbot.process.results import WARNINGS from buildbot.reporters import http from buildbot.util import httpclientservice +from buildbot.warnings import warn_deprecated import re class GiteaStatusPush(http.HttpStatusPushBase): name = "GiteaStatusPush" - neededDetails = dict(wantProperties=True) ssh_url_match = re.compile(r"(ssh://)?[\w+\-\_]+@[\w\.\-\_]+:?(\d*/)?(?P[\w_\-\.]+)/(?P[\w_\-\.]+?)(\.git)?$") + def checkConfig(self, baseURL, token, startDescription=None, endDescription=None, + context=None, verbose=False, wantProperties=True, **kwargs): + super().checkConfig(wantProperties=wantProperties, + _has_old_arg_names={ + 'builders': False, + 'wantProperties': wantProperties is not True + }, **kwargs) + @defer.inlineCallbacks def reconfigService(self, baseURL, token, startDescription=None, endDescription=None, - context=None, context_pr=None, verbose=False, + context=None, context_pr=None, verbose=False, wantProperties=True, warningAsSuccess=False, **kwargs): token = yield self.renderSecrets(token) - yield http.HttpStatusPushBase.reconfigService(self, **kwargs) + yield super().reconfigService(wantProperties=wantProperties, **kwargs) self.context = context or Interpolate('buildbot/%(prop:buildername)s') self.context_pr = context_pr or \ @@ -87,6 +95,21 @@ class GiteaStatusPush(http.HttpStatusPushBase): @defer.inlineCallbacks def send(self, build): + # the only case when this function is called is when the user derives this class, overrides + # send() and calls super().send(build) from there. + yield self._send_impl(build) + + @defer.inlineCallbacks + def sendMessage(self, reports): + build = reports[0]['builds'][0] + if self.send.__func__ is not GiteaStatusPush.send: + warn_deprecated('2.9.0', 'send() in reporters has been deprecated. Use sendMessage()') + yield self.send(build) + else: + yield self._send_impl(build) + + @defer.inlineCallbacks + def _send_impl(self, build): props = Properties.fromDict(build['properties']) props.master = self.master diff --git a/setup.py b/setup.py index 6d1d1ae..f3b2f6c 100644 --- a/setup.py +++ b/setup.py @@ -18,7 +18,7 @@ setup(name='buildbot-gitea', long_description_content_type="text/markdown", packages=['buildbot_gitea'], requires=[ - "buildbot (>=2.0.0)" + "buildbot (>=2.9.0)" ], entry_points={ "buildbot.webhooks": [