summaryrefslogtreecommitdiffstats
path: root/bitbake/lib/toaster/orm/models.py
diff options
context:
space:
mode:
authorAlexandru DAMIAN <alexandru.damian@intel.com>2014-11-25 10:12:46 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2014-11-28 14:02:58 +0000
commitaf1f9fda8b295d277a6967453b2d03e43474ab68 (patch)
tree0e6f9ab6194767449872e6bc0e4011026e4cc042 /bitbake/lib/toaster/orm/models.py
parent707a960ffa20d6093ff787084e0b0f50a7b8305e (diff)
downloadpoky-af1f9fda8b295d277a6967453b2d03e43474ab68.tar.gz
bitbake: toaster: display Toaster exceptions and other fixes
Changing ToasterUI to log toaster exceptions on a different level than build errors. Updating the build dashboard to show Toaster exceptions. We add extra logging to console for exceptions. Fixed a problem where packages database entries were created instead of being looked up in the database, conficting with entries created to satisfy dependency information. Toaster now checks for invalid states at startup and performs needed cleanups. Removed loading reference to jquery-ui.min.css as we do not have this file. (Bitbake rev: 2378812bc24d433125fb940f110154f0ce638448) Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake/lib/toaster/orm/models.py')
-rw-r--r--bitbake/lib/toaster/orm/models.py9
1 files changed, 8 insertions, 1 deletions
diff --git a/bitbake/lib/toaster/orm/models.py b/bitbake/lib/toaster/orm/models.py
index 364b215814..34d37542e1 100644
--- a/bitbake/lib/toaster/orm/models.py
+++ b/bitbake/lib/toaster/orm/models.py
@@ -178,6 +178,11 @@ class Build(models.Model):
178 tgts = Target.objects.filter(build_id = self.id).order_by( 'target' ); 178 tgts = Target.objects.filter(build_id = self.id).order_by( 'target' );
179 return( tgts ); 179 return( tgts );
180 180
181 @property
182 def toaster_exceptions(self):
183 return self.logmessage_set.filter(level=LogMessage.EXCEPTION)
184
185
181class ProjectTarget(models.Model): 186class ProjectTarget(models.Model):
182 project = models.ForeignKey(Project) 187 project = models.ForeignKey(Project)
183 target = models.CharField(max_length=100) 188 target = models.CharField(max_length=100)
@@ -966,13 +971,15 @@ class HelpText(models.Model):
966 text = models.TextField() 971 text = models.TextField()
967 972
968class LogMessage(models.Model): 973class LogMessage(models.Model):
974 EXCEPTION = -1 # used to signal self-toaster-exceptions
969 INFO = 0 975 INFO = 0
970 WARNING = 1 976 WARNING = 1
971 ERROR = 2 977 ERROR = 2
972 978
973 LOG_LEVEL = ( (INFO, "info"), 979 LOG_LEVEL = ( (INFO, "info"),
974 (WARNING, "warn"), 980 (WARNING, "warn"),
975 (ERROR, "error") ) 981 (ERROR, "error"),
982 (EXCEPTION, "toaster exception"))
976 983
977 build = models.ForeignKey(Build) 984 build = models.ForeignKey(Build)
978 task = models.ForeignKey(Task, blank = True, null=True) 985 task = models.ForeignKey(Task, blank = True, null=True)