[users at bb.net] Force Build Form Property
xpetrl
xpetrl at aol.com
Mon Dec 2 22:40:58 UTC 2019
Dear List,
I'm getting crazy with a build form property.
How do I correctly check if the "force a make clean" in force build is
checked?
Please look the the code below, mostly taken from tutorial 2.5.5.
Schedulers.
options
{
"force_build_clean": true,
"pull_url": ""
}
Force Build Form
[code]
c['schedulers'].append(schedulers.ForceScheduler(
name="force-custom",
buttonName="pushMe!",
label="My nice Force form",
builderNames=["lp1"],
codebases=[
util.CodebaseParameter(
"",
label="Main repository",
# will generate a combo box branch=util.ChoiceStringParameter(
name="branch",
choices=["master","hest"],
default="master"),
# will generate nothing in the form, but revision, repository, # and
project are needed by buildbot scheduling system so we # need to pass a
value ("") revision=util.FixedParameter(name="revision",default=""),
repository=util.FixedParameter(name="repository",default=""),
project=util.FixedParameter(name="project",default=""),
),
],
# will generate a text input reason=util.StringParameter(name="reason",
label="reason:",
required=False,size=80),
# in case you don't require authentication this will display # input for
user to type his name username=util.UserNameParameter(label="your name:",
size=80),
# A completely customized property list. The name of the # property is
the name of the parameter properties=[
util.NestedParameter(name="options",label="Build Options",layout="vertical",fields=[
util.StringParameter(name="pull_url",
label="optionally give a public Git pull url:",
default="",size=80),
util.BooleanParameter(name="force_build_clean",
label="force a make clean",
default=False)
])
]))
[..]
What is the property?
step.getProperty('force_build_clean')
or
step.build.getProperty('force_build_clean'
How do I check that? Do I have to git a method todoStepIf ?
[...]
minimal_factory = util.BuildFactory()
doCleanIf = lambda step: step.getProperty('force_build_clean') or None
# or #doCleanIf = lambda step:
step.build.getProperty('force_build_clean', True) # or
#def doCleanIf(step): # if (lambda step:
step.build.getProperty('force_build_clean') or None): # return True #
return False
minimal_factory.addStep(steps.ShellCommand(name='Force Clean', \
command=['echo','force clean'], \
workdir='build',haltOnFailure='True',doStepIf=doCleanIf))
Thanks!
--
xpetrl
--
xpetrl
More information about the users
mailing list