changeset 458:c9ac97df8a5e

Fix build listener invocation.
author cmlenz
date Wed, 19 Sep 2007 09:32:18 +0000
parents b267ad4b93e9
children 6537f01b4730
files bitten/master.py bitten/tests/admin.py bitten/tests/master.py bitten/tests/web_ui.py
diffstat 4 files changed, 13 insertions(+), 6 deletions(-) [+]
line wrap: on
line diff
--- a/bitten/master.py
+++ b/bitten/master.py
@@ -144,6 +144,9 @@
         build.update(db=db)
         db.commit()
 
+        for listener in BuildSystem(self.env).listeners:
+            listener.build_aborted(build)
+
         req.send_response(204)
         req.write('')
         raise RequestDone
@@ -154,6 +157,9 @@
         build.started = int(time.time())
         build.update()
 
+        for listener in BuildSystem(self.env).listeners:
+            listener.build_started(build)
+
         xml = xmlio.parse(config.recipe)
         xml.attr['path'] = config.path
         xml.attr['revision'] = build.rev
@@ -256,7 +262,8 @@
 
         db.commit()
 
-        if last_step:
+        if last_step or step.status == BuildStep.FAILURE and \
+                current_step.onerror == 'fail':
             for listener in BuildSystem(self.env).listeners:
                 listener.build_completed(build)
 
--- a/bitten/tests/admin.py
+++ b/bitten/tests/admin.py
@@ -26,7 +26,7 @@
 class BuildMasterAdminPageProviderTestCase(unittest.TestCase):
 
     def setUp(self):
-        self.env = EnvironmentStub()
+        self.env = EnvironmentStub(enable=['trac.*', 'bitten.*'])
         self.env.path = tempfile.mkdtemp()
 
         # Create tables
@@ -110,7 +110,7 @@
 class BuildConfigurationsAdminPageProviderTestCase(unittest.TestCase):
 
     def setUp(self):
-        self.env = EnvironmentStub()
+        self.env = EnvironmentStub(enable=['trac.*', 'bitten.*'])
         self.env.path = tempfile.mkdtemp()
 
         # Create tables
--- a/bitten/tests/master.py
+++ b/bitten/tests/master.py
@@ -29,7 +29,7 @@
 class BuildMasterTestCase(unittest.TestCase):
 
     def setUp(self):
-        self.env = EnvironmentStub()
+        self.env = EnvironmentStub(enable=['trac.*', 'bitten.*'])
         self.env.path = tempfile.mkdtemp()
 
         PermissionSystem(self.env).grant_permission('hal', 'BUILD_EXEC')
--- a/bitten/tests/web_ui.py
+++ b/bitten/tests/web_ui.py
@@ -27,7 +27,7 @@
 class BuildConfigControllerTestCase(unittest.TestCase):
 
     def setUp(self):
-        self.env = EnvironmentStub()
+        self.env = EnvironmentStub(enable=['trac.*', 'bitten.*'])
         self.env.path = tempfile.mkdtemp()
 
         # Create tables
@@ -127,7 +127,7 @@
 class SourceFileLinkFormatterTestCase(unittest.TestCase):
 
     def setUp(self):
-        self.env = EnvironmentStub()
+        self.env = EnvironmentStub(enable=['trac.*', 'bitten.*'])
 
         # Create tables
         db = self.env.get_db_cnx()
Copyright (C) 2012-2017 Edgewall Software