Use the git checkout to do full clean rather than command line tools - now fully cross-platform

See https://github.com/CoolProp/CoolProp/issues/283

Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
This commit is contained in:
Ian Bell
2014-12-04 14:37:13 -05:00
parent 02f8210fa1
commit 3ce13ac38f

View File

@@ -225,11 +225,26 @@ class PythonSlaveConfig(object):
return IDs
@properties.renderer
def gitModeInput(props):
""" If we are doing a full clean, this will tell it to clobber all the files """
if props.getProperty('fullclean', default = False):
return 'full'
else:
return 'incremental'
@properties.renderer
def gitMethodInput(props):
""" If we are doing a full clean, this will tell it to clobber all the files """
if props.getProperty('fullclean', default = False):
return 'clobber':
else:
return None
# A centralised method to provide the objects with some presets
def getBaseFactory(gitMode = 'incremental'):
factory = BuildFactory()
factory.addStep(ShellCommand(command=cleanCommand, description='fullclean?', workdir=""))
factory.addStep(Git(repourl='git://github.com/CoolProp/CoolProp', mode=gitMode, submodules = True, progress=True, haltOnFailure = True))
factory.addStep(Git(repourl='git://github.com/CoolProp/CoolProp', mode=gitModeInput, method = gitMethodInput, submodules = True, progress=True, haltOnFailure = True))
return factory
def docActivateCmd():
@@ -1065,7 +1080,13 @@ c['schedulers'].append(SingleBranchScheduler(
builderNames=all_builder_names))
c['schedulers'].append(ForceScheduler(
name="force",
builderNames=all_builder_names+swig_builders,
builderNames=all_builder_names,
properties=[
BooleanParameter(name="fullclean",
label="Do a full clean", default=False)]))
c['schedulers'].append(ForceScheduler(
name="force_swig_builders",
builderNames=swig_builders,
properties=[
BooleanParameter(name="fullclean",
label="Do a full clean", default=False)]))