diff --git a/buildbot_nix/gitea_projects.py b/buildbot_nix/gitea_projects.py index 995f30f..03bae40 100644 --- a/buildbot_nix/gitea_projects.py +++ b/buildbot_nix/gitea_projects.py @@ -181,6 +181,9 @@ class GiteaBackend(GitBackend): def create_change_hook(self) -> dict[str, Any]: return { "secret": self.webhook_secret, + # The "mergable" field is a bit buggy, + # we already do the merge locally anyway. + "onlyMergeablePullRequest": False, } def create_avatar_method(self) -> AvatarBase | None: diff --git a/buildbot_nix/github_projects.py b/buildbot_nix/github_projects.py index cec9741..6f40319 100644 --- a/buildbot_nix/github_projects.py +++ b/buildbot_nix/github_projects.py @@ -17,14 +17,17 @@ from buildbot.www.auth import AuthBase from buildbot.www.avatar import AvatarBase, AvatarGitHub from buildbot.www.oauth2 import GitHubAuth from twisted.internet import defer, threads -from twisted.internet.defer import ensureDeferred from twisted.python import log from twisted.python.failure import Failure if TYPE_CHECKING: from buildbot.process.log import StreamLog -from .common import http_request, paginated_github_request, slugify_project_name +from .common import ( + http_request, + paginated_github_request, + slugify_project_name, +) from .projects import GitBackend, GitProject from .secrets import read_secret_file @@ -78,15 +81,6 @@ class GithubConfig: return read_secret_file(self.token_secret_name) -class AsyncGitHubStatusPush(GitHubStatusPush): - @defer.inlineCallbacks - def sendMessage( # noqa: N802 - self, reports: list[dict[str, Any]] - ) -> Generator[Any, object, Any]: - # Don't block the CI on the GitHub status updates - yield ensureDeferred(super().sendMessage(reports)) - - @dataclass class GithubBackend(GitBackend): config: GithubConfig @@ -109,7 +103,7 @@ class GithubBackend(GitBackend): ) def create_reporter(self) -> ReporterBase: - return AsyncGitHubStatusPush( + return GitHubStatusPush( token=self.config.token(), # Since we dynamically create build steps, # we use `virtual_builder_name` in the webinterface