Mercurial > bitten > bitten-test
comparison bitten/notify.py @ 875:a68027e2245d
Add 'Platform' name to build report for web display and notifications. Fixes #541 and #633.
author | osimons |
---|---|
date | Thu, 21 Oct 2010 08:41:16 +0000 |
parents | a4676056c8d3 |
children |
comparison
equal
deleted
inserted
replaced
874:e695efec5b28 | 875:a68027e2245d |
---|---|
10 from trac.core import Component, implements | 10 from trac.core import Component, implements |
11 from trac.web.chrome import ITemplateProvider, Chrome | 11 from trac.web.chrome import ITemplateProvider, Chrome |
12 from trac.config import BoolOption | 12 from trac.config import BoolOption |
13 from trac.notification import NotifyEmail | 13 from trac.notification import NotifyEmail |
14 from bitten.api import IBuildListener | 14 from bitten.api import IBuildListener |
15 from bitten.model import Build, BuildStep, BuildLog | 15 from bitten.model import Build, BuildStep, BuildLog, TargetPlatform |
16 | 16 |
17 | 17 |
18 class BittenNotify(Component): | 18 class BittenNotify(Component): |
19 """Sends notifications on build status by mail.""" | 19 """Sends notifications on build status by mail.""" |
20 implements(IBuildListener, ITemplateProvider) | 20 implements(IBuildListener, ITemplateProvider) |
121 return self.env.abs_href.build(self.build.config, self.build.id) | 121 return self.env.abs_href.build(self.build.config, self.build.id) |
122 | 122 |
123 def template_data(self): | 123 def template_data(self): |
124 failed_steps = BuildStep.select(self.env, build=self.build.id, | 124 failed_steps = BuildStep.select(self.env, build=self.build.id, |
125 status=BuildStep.FAILURE) | 125 status=BuildStep.FAILURE) |
126 platform = TargetPlatform.fetch(self.env, id=self.build.platform) | |
126 change = self.get_changeset() | 127 change = self.get_changeset() |
127 return { | 128 return { |
128 'build': { | 129 'build': { |
129 'id': self.build.id, | 130 'id': self.build.id, |
130 'status': self.readable_states[self.build.status], | 131 'status': self.readable_states[self.build.status], |
131 'link': self.build_link(), | 132 'link': self.build_link(), |
132 'config': self.build.config, | 133 'config': self.build.config, |
134 'platform': getattr(platform, 'name', 'unknown'), | |
133 'slave': self.build.slave, | 135 'slave': self.build.slave, |
134 'failed_steps': [{ | 136 'failed_steps': [{ |
135 'name': step.name, | 137 'name': step.name, |
136 'description': step.description, | 138 'description': step.description, |
137 'errors': step.errors, | 139 'errors': step.errors, |