[Buildbot-devel] ShellCommand timeout when command fails (win32)

Simo Salminen simo.salminen at iki.fi
Mon Feb 21 23:31:37 UTC 2005


Hello,


I have the following build step in BuildFactory:
s(step.Test, command=["check.bat"])

However, in my situation, the file check.bat is not found, and the slave
correctly complains about that (see below). The problem is that the
buildmaster doesn't take notice of this, but waits for the timeout.
I would expect it would report failure immediately. Is there any
reason why it should wait in the timeout when the command clearly
fails?


text on waterfall display:
command '['check.bat']' in dir
c:\coding\buildbot\slaves\foo-win32\full\build (timeout 1200 secs)


slave traceback:
<- clip ->
2005/02/22 01:18 FLE Standard Time [Broker,client]
startCommand:shell [id 8]
2005/02/22 01:18 FLE Standard Time [Broker,client]   command
'['check.bat']' in
dir c:\coding\buildbot\slaves\foo-win32\full\build (timeout 1200 secs)
2005/02/22 01:18 FLE Standard Time [Broker,client] error in
ShellCommand._startC
ommand
2005/02/22 01:18 FLE Standard Time [Broker,client] Traceback (most
recent call l
ast):
          File
					"C:\utils\Python23\Lib\site-packages\twisted\spread\flavors.py",
line 124, in remoteMessageReceived
            state = method(*args, **kw)
          File

					"c:\utils\Python23\Lib\site-packages\buildbot\slave\bot.py", line
 136, in remote_startCommand
            d = defer.maybeDeferred(self.command.start)
          File
					"C:\utils\Python23\Lib\site-packages\twisted\internet\defer.py",
line 129, in maybeDeferred
            result = f(*args, **kw)
          File
					"c:\utils\Python23\Lib\site-packages\buildbot\slave\commands.py",
 line 413, in start
            d = self.command.start()
        --- <exception caught here> ---
          File
					"c:\utils\Python23\Lib\site-packages\buildbot\slave\commands.py",
 line 136, in start
            self._startCommand()
          File
					"c:\utils\Python23\Lib\site-packages\buildbot\slave\commands.py",
 line 172, in _startCommand
            usePTY=self.usePTY)
          File
					"C:\utils\Python23\Lib\site-packages\twisted\internet\win32eventr
eactor.py", line 222, in spawnProcess
            Process(self, processProtocol, executable, args, env,
						path)
          File
					"C:\utils\Python23\Lib\site-packages\twisted\internet\win32eventr
eactor.py", line 296, in __init__
            self.hProcess, hThread, dwPid, dwTid =
						win32process.CreateProcess(No
ne, cmdline, None, None, 1, 0, environment, path, StartupInfo)
        pywintypes.error: (2, 'CreateProcess', 'The system cannot
				find the file
specified.')

2005/02/22 01:18 FLE Standard Time [Broker,client]
SlaveBuilder.commandFailed <b
uildbot.slave.commands.SlaveShellCommand instance at 0x01025288>

<- clip ->


I'm using cvs version checked out 2005-02-01, and the twisted reactor is
win32.

-- 
Simo Salminen




More information about the devel mailing list