[Buildbot-commits] buildbot/buildbot/process step.py,1.62,1.63 base.py,1.48,1.49

Brian Warner warner at users.sourceforge.net
Sun Apr 24 21:56:43 UTC 2005


Update of /cvsroot/buildbot/buildbot/buildbot/process
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv12063/buildbot/process

Modified Files:
	step.py base.py 
Log Message:
Revision: arch at buildbot.sf.net--2004/buildbot--dev--0--patch-85
Creator:  Brian Warner <warner at monolith.lothar.com>

Merged from org.apestaart at thomas/buildbot--slaveEnvironment--0--patch-1

Added Build.slaveEnvironment patch from Thomas, allowing Steps to set
environment keys for later Steps in the same build.

Patches applied:

 * org.apestaart at thomas/buildbot--slaveEnvironment--0--patch-1
   slaveEnvironment patch

 * org.apestaart at thomas/buildbot--slaveEnvironment--0--patch-2
   make slaveEnvironment an instance attribute :)


Index: base.py
===================================================================
RCS file: /cvsroot/buildbot/buildbot/buildbot/process/base.py,v
retrieving revision 1.48
retrieving revision 1.49
diff -u -d -r1.48 -r1.49
--- base.py	24 Apr 2005 21:30:24 -0000	1.48
+++ base.py	24 Apr 2005 21:56:41 -0000	1.49
@@ -69,6 +69,7 @@
 
         self.progress = None
         self.currentStep = None
+        self.slaveEnvironment = {}
 
     def setBuilder(self, builder):
         """

Index: step.py
===================================================================
RCS file: /cvsroot/buildbot/buildbot/buildbot/process/step.py,v
retrieving revision 1.62
retrieving revision 1.63
diff -u -d -r1.62 -r1.63
--- step.py	24 Apr 2005 21:30:24 -0000	1.62
+++ step.py	24 Apr 2005 21:56:41 -0000	1.63
@@ -666,6 +666,18 @@
         return ["'%s" % words[0], "%s" % words[1], "...'"]
 
     def start(self, errorMessage=None):
+        # merge in anything from Build.slaveEnvironment . Earlier steps
+        # (perhaps ones which compile libraries or sub-projects that need to
+        # be referenced by later steps) can add keys to
+        # self.build.slaveEnvironment to affect later steps.
+        slaveEnv = self.build.slaveEnvironment
+        if slaveEnv:
+            if self.cmd.args['env'] is None:
+                self.cmd.args['env'] = {}
+            self.cmd.args['env'].update(slaveEnv)
+            # note that each RemoteShellCommand gets its own copy of the
+            # dictionary, so we shouldn't be affecting anyone but ourselves.
+
         self.step_status.setColor("yellow")
         self.step_status.setText(self.describe(False))
         loog = self.addLog("log")





More information about the Commits mailing list