[llvm-commits] [zorg] r125884 - /zorg/trunk/llvmlab/llvmlab/ci/status.py
Daniel Dunbar
daniel at zuster.org
Fri Feb 18 08:41:53 PST 2011
Author: ddunbar
Date: Fri Feb 18 10:41:53 2011
New Revision: 125884
URL: http://llvm.org/viewvc/llvm-project?rev=125884&view=rev
Log:
llvmlab: Sketch status object for tracking the overall build status.
Added:
zorg/trunk/llvmlab/llvmlab/ci/status.py
Added: zorg/trunk/llvmlab/llvmlab/ci/status.py
URL: http://llvm.org/viewvc/llvm-project/zorg/trunk/llvmlab/llvmlab/ci/status.py?rev=125884&view=auto
==============================================================================
--- zorg/trunk/llvmlab/llvmlab/ci/status.py (added)
+++ zorg/trunk/llvmlab/llvmlab/ci/status.py Fri Feb 18 10:41:53 2011
@@ -0,0 +1,51 @@
+"""
+Status information for the CI infrastructure, for use by the dashboard.
+"""
+
+from llvmlab import util
+
+class BuildStatus(util.simple_repr_mixin):
+ @staticmethod
+ def fromdata(data):
+ version = data['version']
+ if version != 0:
+ raise ValueError, "Unknown version"
+
+ return BuildStatus(data['name'], data['number'], data['source_stamp'],
+ data['result'], data['start_time'], data['end_time'])
+
+ def todata(self):
+ return { 'version' : 0,
+ 'name' : self.name,
+ 'number' : self.number,
+ 'source_stamp' : self.source_stamp,
+ 'result' : self.result,
+ 'start_time' : self.start_time,
+ 'end_time' : self.end_time }
+
+ def __init__(self, name, number, source_stamp,
+ result, start_time, end_time):
+ self.name = name
+ self.number = number
+ self.source_stamp = source_stamp
+ self.result = result
+ self.start_time = start_time
+ self.end_time = end_time
+
+class Status(util.simple_repr_mixin):
+ @staticmethod
+ def fromdata(data):
+ version = data['version']
+ if version != 0:
+ raise ValueError, "Unknown version"
+
+ return Status([BuildStatus.fromdata(item)
+ for item in data['builds']])
+
+ def todata(self):
+ return { 'version' : 0,
+ 'builds' : [item.todata()
+ for item in self.builds] }
+
+ def __init__(self, builds):
+ self.builds = builds
More information about the llvm-commits
mailing list