[cig-commits] r12622 - cs/buildbot/trunk/buildbot
leif at geodynamics.org
leif at geodynamics.org
Tue Aug 12 17:42:34 PDT 2008
Author: leif
Date: 2008-08-12 17:42:34 -0700 (Tue, 12 Aug 2008)
New Revision: 12622
Added:
cs/buildbot/trunk/buildbot/languages.py
Modified:
cs/buildbot/trunk/buildbot/config.py
cs/buildbot/trunk/buildbot/lines.py
Log:
Changes for SPECFEM: added language filter (so SPECFEM can filter-out
configs that don't have Fortran-90); allow projects to set
'fileIsImportant'.
Modified: cs/buildbot/trunk/buildbot/config.py
===================================================================
--- cs/buildbot/trunk/buildbot/config.py 2008-08-13 00:18:48 UTC (rev 12621)
+++ cs/buildbot/trunk/buildbot/config.py 2008-08-13 00:42:34 UTC (rev 12622)
@@ -1,6 +1,6 @@
-import os
+import os, languages
class Environment(dict):
@@ -41,9 +41,10 @@
class BuildConfig(object):
- def __init__(self, name, env, tag=None, slaves=None, configureArgs=None, basedir=None,
+ def __init__(self, name, languages, env, tag=None, slaves=None, configureArgs=None, basedir=None,
CPPFLAGS=None, LDFLAGS=None, LIBS=None):
self.name = name
+ self.languages = languages
self.env = env
self.tag = tag
@@ -106,9 +107,9 @@
class BinaryBuildConfig(BuildConfig):
- def __init__(self, name, env, **kwds):
+ def __init__(self, name, languages, env, **kwds):
kwds.setdefault('tag', 'binaries')
- BuildConfig.__init__(self, name, env, **kwds)
+ BuildConfig.__init__(self, name, languages, env, **kwds)
return
@@ -148,7 +149,7 @@
return steps
-defaultConfigs = [BuildConfig("default", {"PYTHON": "python2.4"})]
+defaultConfigs = [BuildConfig("default", [languages.python], {"PYTHON": "python2.4"})]
class BuildSlave(object):
Added: cs/buildbot/trunk/buildbot/languages.py
===================================================================
--- cs/buildbot/trunk/buildbot/languages.py (rev 0)
+++ cs/buildbot/trunk/buildbot/languages.py 2008-08-13 00:42:34 UTC (rev 12622)
@@ -0,0 +1,9 @@
+
+class Language(object):
+ pass
+
+c = Language()
+cpp = Language()
+f77 = Language()
+f90 = Language()
+python = Language()
Modified: cs/buildbot/trunk/buildbot/lines.py
===================================================================
--- cs/buildbot/trunk/buildbot/lines.py 2008-08-13 00:18:48 UTC (rev 12621)
+++ cs/buildbot/trunk/buildbot/lines.py 2008-08-13 00:42:34 UTC (rev 12622)
@@ -35,8 +35,10 @@
self.builderNames = []
self.schedulers = []
self.changeScheduler = None
+ self.fileIsImportant = None
self._buildSystem = None
+ self.languages = None
self.nightly = None
@@ -169,6 +171,13 @@
def buildConfigs(self, buildEnv, buildConfig):
+ # Reject build configurations that don't support the languages
+ # we require.
+ if self.languages:
+ for language in self.languages:
+ if not language in buildConfig.languages:
+ return None
+
if buildConfig.tag:
# If the build config is tagged, and we have more than one
# config, only create a builder if we have a config
@@ -185,9 +194,6 @@
configs[buildConfig.tag] = c
return configs
- # NYI: reject build configurations that don't support the
- # languages we require.
-
if self.configs:
configs = {}
configs.update(self.configs)
@@ -242,6 +248,7 @@
name = "change " + self.fullName(),
category = self.category,
builderNames = self.builderNames,
+ fileIsImportant = self.fileIsImportant,
**kwds
)
return s
More information about the cig-commits
mailing list