summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xqabox/fedpkg-autobuilder9
-rw-r--r--qabox/supybot/Fedpkg/plugin.py10
2 files changed, 14 insertions, 5 deletions
diff --git a/qabox/fedpkg-autobuilder b/qabox/fedpkg-autobuilder
index 1a87ba2..ab50179 100755
--- a/qabox/fedpkg-autobuilder
+++ b/qabox/fedpkg-autobuilder
@@ -113,7 +113,10 @@ class Autobuilder(dbus.service.Object):
break
self.StateChanged(self._state, self._statedata)
- def initiate_build(self):
+
+ @dbus.service.method(dbus_interface='org.fedoraproject.FedpkgAutoBuilder',
+ in_signature='', out_signature='')
+ def Build(self):
if self._pullbuild_pid is not None:
logging.info("Can't initiate build, one is in progress")
return
@@ -153,7 +156,7 @@ class Autobuilder(dbus.service.Object):
self.StatusChanged(self._status)
def start(self):
- self.initiate_build()
+ self.Build()
def main():
try:
@@ -187,7 +190,7 @@ def main():
builder = Autobuilder(parser)
builder.initiate_build()
- glib.timeout_add(build_time * 1000, lambda: builder.initiate_build() or True)
+ glib.timeout_add(build_time * 1000, lambda: builder.Build() or True)
loop.run()
diff --git a/qabox/supybot/Fedpkg/plugin.py b/qabox/supybot/Fedpkg/plugin.py
index 3cf09fa..fdc7343 100644
--- a/qabox/supybot/Fedpkg/plugin.py
+++ b/qabox/supybot/Fedpkg/plugin.py
@@ -58,11 +58,17 @@ class Fedpkg(callbacks.Plugin):
return
status = self._autobuild_proxy.GetStatus()
(state, statedata) = self._autobuild_proxy.GetState()
- irc.reply("[%s] build of %s is currently %s (%r)" % (status, self._modules[-1], state, statedata))
+ irc.reply("[%s] build of %s is currently %s (%r)" % (status, self._modules[-1], state, dict(statedata)))
+
+ def build(self, irc, msg, args):
+ if self._autobuild_proxy is None:
+ irc.reply(AUTOBUILD_SERVICE + ' is not running')
+ return
+ self._autobuild_proxy.Build(reply_handler=lambda *args: True, error_handler=lambda *args: True)
def __on_builder_state_changed(self, state, statedata):
for channel in self.__irc.state.channels:
- self.__irc.reply("build of %s has changed state to %s (%r)", self._modules[1], state, statedata)
+ self.__irc.reply("build of %s has changed state to %s (%r)", self._modules[1], state, dict(statedata))
Class = Fedpkg