# -*- python -*- # ex: set syntax=python: ############################################################################# ###### EPIMETHEUS - buildslave configuration # # Host: epimetheus.hobu.net # Admin: Hobu, Tamas Szekeres # Author: Mateusz Loskot # Modified: 2007-08-22 # import os from osgeo import buildslave import _common as common hostname = 'epimetheus' slavename = hostname + '-mapserver' slavepass = 'mapserv#20070429' ############################################################################# ###### CONFIGURATION ### COMMON SETTINGS - buildslave specific settings __cmdConfigure = ['./configure','--with-experimental-png','--with-threads','--with-proj=/Volumes/Data/buildbot/osgeo/slaves/mapserver/usr','--with-gdal=/Volumes/Data/buildbot/osgeo/slaves/mapserver/usr/bin/gdal-config','--with-ogr=/Volumes/Data/buildbot/osgeo/slaves/mapserver/usr/bin/gdal-config','--with-wfs','--with-wcs','--with-wmsclient','--with-wfsclient','--with-freetype','--with-agg=/Volumes/Data/buildbot/osgeo/slaves/mapserver/temp/agg-2.4','--with-geos'] __cmdCompile = ['make'] __cmdClean = ['make','clean'] __cmdTest = ['make','test'] __cmdInterface = ['make', 'interface'] __buildWorkDir = 'build/mapserver' __testWorkDirGdal = 'build/msautotest/gdal' __testWorkDirMisc = 'build/msautotest/misc' __testWorkDirWxs = 'build/msautotest/wxs' __swigWorkDir = 'build/mapserver/mapscript' __csharpWorkDir = 'build/mapserver/mapscript/csharp' __perlWorkDir = 'build/mapserver/mapscript/perl' ### ENVIRONMENT VARIABLES __basePath = os.path.join('/Data/buildbot/osgeo/slaves', common.config['bot']['name']) # /Data/buildbot/osgeo/slaves/mapserver/epimetheus-quick/build/mapserver __quickPath = os.path.join(__basePath, hostname+'-quick', 'build', common.config['bot']['name']) # /Data/buildbot/osgeo/slaves/mapserver/epimetheus-full/build/mapserver __fullPath = os.path.join(__basePath, hostname+'-full', 'build', common.config['bot']['name']) __systemPath = ':' + os.getenv('PATH') ### LD_LIBRARY_PATH __ldPathQuick = __quickPath __ldPathFull = __fullPath # GDAL_DATA __dataPathQuick = os.path.join(__quickPath, 'data') __dataPathFull = os.path.join(__fullPath, 'data') # PYTHONPATH __pythonPathQuick = os.path.join(__quickPath, 'pymod') __pythonPathFull = os.path.join(__fullPath, 'pymod') # PATH __systemPathQuick = __quickPath + __systemPath; __systemPathFull = __fullPath + __systemPath; __devLibPath = '/Developer/SDKs/MacOSX10.4u.sdk/usr/X11R6/lib' ############################################################################# ###### FACTORIES from buildbot.process import factory from buildbot.steps import source from buildbot.steps import shell ### QUICK BUILDER FACTORY factoryQuick = factory.BuildFactory() factoryQuick.addStep(source.SVN, name = 'svn', baseURL = common.config['project']['svnUrl'], defaultBranch = common.config['project']['svnBranch'], mode='update') factoryQuick.addStep(shell.ShellCommand, name = 'configure', description = ['configuring'], descriptionDone = ['configure'], command = __cmdConfigure, workdir = __buildWorkDir) factoryQuick.addStep(shell.ShellCommand, name = 'make', description = ['compiling'], descriptionDone = ['compile'], command = ['make'], workdir = __buildWorkDir) factoryQuick.addStep(shell.ShellCommand, name = 'msautotest-gdal', description = ['testing'], descriptionDone = ['msautotest-gdal'], command = ['./run_test.py'], env = { 'LD_LIBRARY_PATH' : __ldPathQuick, 'PATH' : __systemPathQuick, 'MS_ERRORFILE' : 'stderr' }, workdir = __testWorkDirGdal) factoryQuick.addStep(shell.ShellCommand, name = 'msautotest-misc', description = ['testing'], descriptionDone = ['msautotest-misc'], command = ['./run_test.py'], env = { 'LD_LIBRARY_PATH' : __ldPathQuick, 'PATH' : __systemPathQuick, 'MS_ERRORFILE' : 'stderr' }, workdir = __testWorkDirMisc) factoryQuick.addStep(shell.ShellCommand, name = 'msautotest-wxs', description = ['testing'], descriptionDone = ['msautotest-wxs'], command = ['./run_test.py'], env = { 'LD_LIBRARY_PATH' : __ldPathQuick, 'PATH' : __systemPathQuick, 'MS_ERRORFILE' : 'stderr' }, workdir = __testWorkDirWxs) # SWIG - C# factoryQuick.addStep(shell.ShellCommand, name = 'csharp-clean', description = ['csharp-cleaning'], descriptionDone = ['csharp-clean'], command = ['make', 'clean'], workdir = __csharpWorkDir) factoryQuick.addStep(shell.ShellCommand, name = 'csharp-make', description = ['csharp-building'], descriptionDone = ['csharp-build'], command = __cmdCompile, workdir = __csharpWorkDir) factoryQuick.addStep(shell.ShellCommand, name = 'csharp-test', description = ['csharp-testing'], descriptionDone = ['csharp-test'], command = __cmdTest, env = { 'DYLD_LIBRARY_PATH' : __devLibPath }, workdir = __csharpWorkDir) ### FULL BUILDER FACTORY factoryFull = factory.BuildFactory() factoryFull.addStep(source.SVN, name = 'svn', baseURL = common.config['project']['svnUrl'], defaultBranch = common.config['project']['svnBranch'], mode = "copy") factoryFull.addStep(shell.ShellCommand, name = 'configure', description = ['configuring'], descriptionDone = ['configure'], command = __cmdConfigure, workdir = __buildWorkDir) factoryFull.addStep(shell.ShellCommand, name = "clean", description = ["cleaning"], descriptionDone = ["clean"], command = __cmdClean, workdir = __buildWorkDir) factoryFull.addStep(shell.ShellCommand, name = "make", description = ["compiling"], descriptionDone = ["compile"], command = __cmdCompile, workdir = __buildWorkDir) factoryFull.addStep(shell.ShellCommand, name = 'msautotest-gdal', description = ['testing'], descriptionDone = ['msautotest-gdal'], command = ['./run_test.py'], env = { 'LD_LIBRARY_PATH' : __ldPathFull, 'PATH' : __systemPathFull, 'MS_ERRORFILE' : 'stderr' }, workdir = __testWorkDirGdal) factoryFull.addStep(shell.ShellCommand, name = 'msautotest-misc', description = ['testing'], descriptionDone = ['msautotest-misc'], command = ['./run_test.py'], env = { 'LD_LIBRARY_PATH' : __ldPathFull, 'PATH' : __systemPathFull, 'MS_ERRORFILE' : 'stderr' }, workdir = __testWorkDirMisc) factoryFull.addStep(shell.ShellCommand, name = 'msautotest-wxs', description = ['testing'], descriptionDone = ['msautotest-wxs'], command = ['./run_test.py'], env = { 'LD_LIBRARY_PATH' : __ldPathFull, 'PATH' : __systemPathFull, 'MS_ERRORFILE' : 'stderr' }, workdir = __testWorkDirWxs) # SWIG - C# factoryFull.addStep(shell.ShellCommand, name = 'csharp-clean', description = ['csharp-cleaning'], descriptionDone = ['csharp-clean'], command = ['make', 'clean'], workdir = __csharpWorkDir) factoryFull.addStep(shell.ShellCommand, name = 'csharp-make', description = ['csharp-building'], descriptionDone = ['csharp-build'], command = __cmdCompile, workdir = __csharpWorkDir) factoryFull.addStep(shell.ShellCommand, name = 'csharp-test', description = ['csharp-testing'], descriptionDone = ['csharp-test'], command = __cmdTest, env = { 'LD_LIBRARY_PATH' : __ldPathFull }, workdir = __csharpWorkDir) ############################################################################# ###### BUILDSLAVE & BUILDERS config = buildslave.Config(slavename, slavepass) bquickname = hostname + '-quick' bfullname = hostname + '-full' if common.config['quick'] is True: config.addBuilder(bquickname, bquickname, factoryQuick, 'quick') config.addBuilder(bfullname, bfullname, factoryFull, 'full') # EOF