blob: 8bba8810d479fbfa4c621db175de6a9f6fb48640 [file] [log] [blame]
from buildbot.steps import shell, source
import os
def buildStepWithDefaultTimeout(klass, default_timeout=75*60):
class Step(klass):
timeout = default_timeout
def __init__(self, *args, **kwargs):
kwargs['timeout'] = self.timeout
klass.__init__(self, *args, **kwargs)
return Step
Test = buildStepWithDefaultTimeout(shell.Test)
Compile = buildStepWithDefaultTimeout(shell.Compile)
ShellCommand = buildStepWithDefaultTimeout(shell.ShellCommand)
SVN = buildStepWithDefaultTimeout(source.SVN)
class UploadCommand:
def initializeForUpload(self):
try:
try:
umask = os.umask(0)
os.makedirs(self.getDestinationPath(), 042770)
except OSError, e:
if e.errno != 17:
raise
finally:
os.umask(umask)
def getDestinationPath(self):
return "/home/buildresults%s" % (self.getURLPath(), )
def getRemotePath(self):
return "buildresults@build.webkit.org:%s" % (self.getDestinationPath(), )
def getURLPath(self):
return '/results/%s/%s/' % (self.getBuild().builder.name, self.getBuild().getProperty("buildnumber"), )
def getBuild(self):
return self.build
def getText(self, cmd, results):
return self.getText2(cmd, results)
def getText2(self, cmd, results):
return ['<a href="%s">%s</a>' % (self.getURLPath(), self.name)]