Opened 3 years ago

Last modified 3 years ago

#3250 new undecided

RemoveDirectory step does not take a timeout argument, and the default (4 minutes) is too short

Reported by: ccrome Owned by:
Priority: major Milestone: undecided
Version: 0.8.10 Keywords: RemoveDirectory timeout
Cc:

Description

Hello,

I cannot add a timeout to RemoveDirectory?, and the current default of 4 minutes is too short for my situation.

As a workaround +skelly on IRC suggested I use a ShellCommand?, which should work I think.

The error message is [12:50] <ccrome> sending app-level keepalive 2015-04-23 19:04:16-0700 [-] command timed out: 120 seconds without output, attempting to kill 2015-04-23 19:04:16-0700 [-] trying to kill process group 19365 2015-04-23 19:04:16-0700 [-] signal 9 sent successfully 2015-04-23 19:04:16-0700 [-] command finished with signal 9, exit code None, elapsedTime: 120.056401 2015-04-23 19:04:16-0700 [-] SlaveBuilder?.commandComplete <buildslave.commands.fs.RemoveDirectory? instance at 0xa930eac> 201

Ideally, it should just be the in the RemoveDirectory? command.

Thanks,

-caleb

Change History (1)

comment:1 Changed 3 years ago by ccrome

Here's my whack at a patch to buildbot/steps/slave.py

This patch at least passes a reconfig with the added 'timeout' argument to RemoveDirectory?. Not sure if it works yet...

 self.addStep(RemoveDirectory(dir="build", doStepIf=IsFullBuild, timeout=20*60)) 


173c173
<     def __init__(self, dir, timeout=None, maxTime=None, **kwargs):
---
>     def __init__(self, dir, **kwargs):
176,177d175
<         self.timeout = timeout
<         self.maxTime = maxTime
184,190c182
<         args = {'dir' : self.dir }
<         if self.timeout:
<             args['timeout'] = self.timeout
<         if self.maxTime:
<             args['maxTime'] = self.maxTime
<
<         cmd = buildstep.RemoteCommand('rmdir', args)
---
>         cmd = buildstep.RemoteCommand('rmdir', {'dir': self.dir })
Last edited 3 years ago by ccrome (previous) (diff)
Note: See TracTickets for help on using tickets.