[SCM] build.samba.org - branch master updated
Jelmer Vernooij
jelmer at samba.org
Sun Nov 14 17:51:25 MST 2010
The branch, master has been updated
via 73afd26 Actually use sqldb.
from 2641334 Add missing extensions for git repositories.
http://gitweb.samba.org/?p=build-farm.git;a=shortlog;h=master
- Log -----------------------------------------------------------------
commit 73afd267aae1ebbdda438fd57d2ffddfbaa7f71c
Author: Jelmer Vernooij <jelmer at samba.org>
Date: Mon Nov 15 01:51:02 2010 +0100
Actually use sqldb.
-----------------------------------------------------------------------
Summary of changes:
buildfarm/data.py | 7 +++++++
buildfarm/filecache.py | 4 ++--
buildfarm/sqldb.py | 9 ++++++++-
3 files changed, 17 insertions(+), 3 deletions(-)
Changeset truncated at 500 lines:
diff --git a/buildfarm/data.py b/buildfarm/data.py
index 5c25aab..36c3424 100644
--- a/buildfarm/data.py
+++ b/buildfarm/data.py
@@ -61,6 +61,13 @@ class BuildStatus(object):
else:
self.other_failures = set()
+ def __serialize__(self):
+ return repr(self)
+
+ @classmethod
+ def __deserialize__(cls, text):
+ return eval(text)
+
def __str__(self):
if self.other_failures:
return ",".join(self.other_failures)
diff --git a/buildfarm/filecache.py b/buildfarm/filecache.py
index d9c4a16..bd15d5f 100644
--- a/buildfarm/filecache.py
+++ b/buildfarm/filecache.py
@@ -100,12 +100,12 @@ class CachingBuild(Build):
st2 = None
if st2 and st1.st_ctime <= st2.st_mtime:
- return eval(util.FileLoad(cachefile))
+ return BuildStatus.__deserialize__(util.FileLoad(cachefile))
ret = super(CachingBuild, self).status()
if not self._store.readonly:
- util.FileSave(cachefile, repr(ret))
+ util.FileSave(cachefile, ret.__serialize__())
return ret
diff --git a/buildfarm/sqldb.py b/buildfarm/sqldb.py
index dc506f0..a2c424a 100644
--- a/buildfarm/sqldb.py
+++ b/buildfarm/sqldb.py
@@ -23,6 +23,7 @@ from buildfarm import (
from buildfarm.data import (
Build,
BuildResultStore,
+ BuildStatus,
NoSuchBuildError,
)
from buildfarm.hostdb import (
@@ -55,6 +56,12 @@ class StormBuild(Build):
status_str = Unicode(name="status")
commit_revision = RawStr()
+ def status(self):
+ return BuildStatus.__deserialize__(self.status_str)
+
+ def revision_details(self):
+ return (self.commit_revision, None)
+
def log_checksum(self):
return self.checksum
@@ -192,7 +199,7 @@ class StormCachingBuildResultStore(BuildResultStore):
new_build = StormBuild(new_basename, unicode(build.tree), unicode(build.host), unicode(build.compiler), rev)
new_build.checksum = build.log_checksum()
new_build.age = build.age_mtime()
- new_build.status_str = unicode(str(build.status()))
+ new_build.status_str = unicode(build.status().__serialize__())
self.store.add(new_build)
return new_build
--
build.samba.org
More information about the samba-cvs
mailing list