Extend trigger_builds functionality
To support fan-out and conditional trigger behaviour with Jenkins Parameterized Trigger Plugin add following attributes: * Config for failTriggerOnMissing * Parameter factories Change-Id: I3755ed32779e64e7aee7a55a00c683edff6bbbd8
This commit is contained in:
parent
04139e0f5e
commit
d78d0329f6
@ -262,6 +262,9 @@ def trigger_builds(parser, xml_parent, data):
|
||||
key/value pairs to be passed to the job (optional)
|
||||
:arg str property-file:
|
||||
Pass properties from file to the other job (optional)
|
||||
:arg bool property-file-fail-on-missing:
|
||||
Don't trigger if any files are missing (optional)
|
||||
(default true)
|
||||
:arg bool current-parameters: Whether to include the
|
||||
parameters passed to the current build to the
|
||||
triggered job.
|
||||
@ -271,11 +274,45 @@ def trigger_builds(parser, xml_parent, data):
|
||||
to finish or not (default false)
|
||||
:arg bool same-node: Use the same node for the triggered builds that was
|
||||
used for this build (optional)
|
||||
:arg list parameter-factories: list of parameter factories
|
||||
|
||||
Example:
|
||||
:Factory: * **factory** (`str`) **filebuild** -- For every property file,
|
||||
invoke one build
|
||||
* **file-pattern** (`str`) -- File wildcard pattern
|
||||
* **no-files-found-action** (`str`) -- Action to perform when
|
||||
no files found (optional) ['FAIL', 'SKIP', 'NOPARMS']
|
||||
(default 'SKIP')
|
||||
|
||||
:Factory: * **factory** (`str`) **binaryfile** -- For every matching
|
||||
file, invoke one build
|
||||
* **file-pattern** (`str`) -- Artifact ID of the artifact
|
||||
* **no-files-found-action** (`str`) -- Action to perform when
|
||||
no files found (optional) ['FAIL', 'SKIP', 'NOPARMS']
|
||||
(default 'SKIP')
|
||||
|
||||
:Factory: * **factory** (`str`) **counterbuild** -- Invoke i=0...N builds
|
||||
* **from** (`int`) -- Artifact ID of the artifact
|
||||
* **to** (`int`) -- Version of the artifact
|
||||
* **step** (`int`) -- Classifier of the artifact
|
||||
* **parameters** (`str`) -- KEY=value pairs, one per line
|
||||
(default '')
|
||||
* **validation-fail** (`str`) -- Action to perform when
|
||||
stepping validation fails (optional)
|
||||
['FAIL', 'SKIP', 'NOPARMS']
|
||||
(default 'FAIL')
|
||||
|
||||
Examples:
|
||||
|
||||
Basic usage.
|
||||
|
||||
.. literalinclude:: /../../tests/builders/fixtures/trigger-builds001.yaml
|
||||
:language: yaml
|
||||
|
||||
Example with all supported parameter factories.
|
||||
|
||||
.. literalinclude:: \
|
||||
/../../tests/builders/fixtures/trigger-builds-configfactory-multi.yaml
|
||||
:language: yaml
|
||||
"""
|
||||
tbuilder = XML.SubElement(xml_parent,
|
||||
'hudson.plugins.parameterizedtrigger.'
|
||||
@ -307,8 +344,11 @@ def trigger_builds(parser, xml_parent, data):
|
||||
'FileBuildParameters')
|
||||
propertiesFile = XML.SubElement(params, 'propertiesFile')
|
||||
propertiesFile.text = project_def['property-file']
|
||||
failOnMissing = XML.SubElement(params, 'failTriggerOnMissing')
|
||||
failOnMissing.text = 'true'
|
||||
failTriggerOnMissing = XML.SubElement(params,
|
||||
'failTriggerOnMissing')
|
||||
failTriggerOnMissing.text = str(project_def.get(
|
||||
'property-file-fail-on-missing', True)).lower()
|
||||
|
||||
if 'predefined-parameters' in project_def:
|
||||
params = XML.SubElement(tconfigs,
|
||||
'hudson.plugins.parameterizedtrigger.'
|
||||
@ -317,6 +357,67 @@ def trigger_builds(parser, xml_parent, data):
|
||||
properties.text = project_def['predefined-parameters']
|
||||
if(len(list(tconfigs)) == 0):
|
||||
tconfigs.set('class', 'java.util.Collections$EmptyList')
|
||||
|
||||
if 'parameter-factories' in project_def:
|
||||
fconfigs = XML.SubElement(tconfig, 'configFactories')
|
||||
|
||||
supported_factories = ['filebuild', 'binaryfile', 'counterbuild']
|
||||
supported_actions = ['SKIP', 'NOPARMS', 'FAIL']
|
||||
for factory in project_def['parameter-factories']:
|
||||
|
||||
if factory['factory'] not in supported_factories:
|
||||
raise JenkinsJobsException("factory must be one of %s" %
|
||||
", ".join(supported_factories))
|
||||
|
||||
if factory['factory'] == 'filebuild':
|
||||
params = XML.SubElement(
|
||||
fconfigs,
|
||||
'hudson.plugins.parameterizedtrigger.'
|
||||
'FileBuildParameterFactory')
|
||||
if factory['factory'] == 'binaryfile':
|
||||
params = XML.SubElement(
|
||||
fconfigs,
|
||||
'hudson.plugins.parameterizedtrigger.'
|
||||
'BinaryFileParameterFactory')
|
||||
parameterName = XML.SubElement(params, 'parameterName')
|
||||
parameterName.text = factory['parameter-name']
|
||||
if (factory['factory'] == 'filebuild' or
|
||||
factory['factory'] == 'binaryfile'):
|
||||
filePattern = XML.SubElement(params, 'filePattern')
|
||||
filePattern.text = factory['file-pattern']
|
||||
noFilesFoundAction = XML.SubElement(
|
||||
params,
|
||||
'noFilesFoundAction')
|
||||
noFilesFoundActionValue = str(factory.get(
|
||||
'no-files-found-action', 'SKIP'))
|
||||
if noFilesFoundActionValue not in supported_actions:
|
||||
raise JenkinsJobsException(
|
||||
"no-files-found-action must be one of %s" %
|
||||
", ".join(supported_actions))
|
||||
noFilesFoundAction.text = noFilesFoundActionValue
|
||||
if factory['factory'] == 'counterbuild':
|
||||
params = XML.SubElement(
|
||||
fconfigs,
|
||||
'hudson.plugins.parameterizedtrigger.'
|
||||
'CounterBuildParameterFactory')
|
||||
fromProperty = XML.SubElement(params, 'from')
|
||||
fromProperty.text = str(factory['from'])
|
||||
toProperty = XML.SubElement(params, 'to')
|
||||
toProperty.text = str(factory['to'])
|
||||
stepProperty = XML.SubElement(params, 'step')
|
||||
stepProperty.text = str(factory['step'])
|
||||
paramExpr = XML.SubElement(params, 'paramExpr')
|
||||
paramExpr.text = str(factory.get(
|
||||
'parameters', ''))
|
||||
validationFail = XML.SubElement(params, 'validationFail')
|
||||
validationFailValue = str(factory.get(
|
||||
'validation-fail', 'FAIL'))
|
||||
if validationFailValue not in supported_actions:
|
||||
raise JenkinsJobsException(
|
||||
"validation-fail action must be one of %s" %
|
||||
", ".join(supported_actions))
|
||||
validationFail.text = validationFailValue
|
||||
|
||||
projects = XML.SubElement(tconfig, 'projects')
|
||||
projects.text = project_def['project']
|
||||
condition = XML.SubElement(tconfig, 'condition')
|
||||
|
@ -0,0 +1,40 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<project>
|
||||
<builders>
|
||||
<hudson.plugins.parameterizedtrigger.TriggerBuilder>
|
||||
<configs>
|
||||
<hudson.plugins.parameterizedtrigger.BlockableBuildTriggerConfig>
|
||||
<configs class="java.util.Collections$EmptyList"/>
|
||||
<configFactories>
|
||||
<hudson.plugins.parameterizedtrigger.BinaryFileParameterFactory>
|
||||
<parameterName>filename</parameterName>
|
||||
<filePattern>propfile*.txt</filePattern>
|
||||
<noFilesFoundAction>FAIL</noFilesFoundAction>
|
||||
</hudson.plugins.parameterizedtrigger.BinaryFileParameterFactory>
|
||||
</configFactories>
|
||||
<projects>build_started</projects>
|
||||
<condition>ALWAYS</condition>
|
||||
<triggerWithNoParameters>false</triggerWithNoParameters>
|
||||
<buildAllNodesWithLabel>false</buildAllNodesWithLabel>
|
||||
<block>
|
||||
<buildStepFailureThreshold>
|
||||
<name>FAILURE</name>
|
||||
<ordinal>2</ordinal>
|
||||
<color>RED</color>
|
||||
</buildStepFailureThreshold>
|
||||
<unstableThreshold>
|
||||
<name>UNSTABLE</name>
|
||||
<ordinal>1</ordinal>
|
||||
<color>YELLOW</color>
|
||||
</unstableThreshold>
|
||||
<failureThreshold>
|
||||
<name>FAILURE</name>
|
||||
<ordinal>2</ordinal>
|
||||
<color>RED</color>
|
||||
</failureThreshold>
|
||||
</block>
|
||||
</hudson.plugins.parameterizedtrigger.BlockableBuildTriggerConfig>
|
||||
</configs>
|
||||
</hudson.plugins.parameterizedtrigger.TriggerBuilder>
|
||||
</builders>
|
||||
</project>
|
@ -0,0 +1,9 @@
|
||||
builders:
|
||||
- trigger-builds:
|
||||
- project: "build_started"
|
||||
parameter-factories:
|
||||
- factory: binaryfile
|
||||
parameter-name: filename
|
||||
file-pattern: propfile*.txt
|
||||
no-files-found-action: FAIL
|
||||
block: true
|
@ -0,0 +1,40 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<project>
|
||||
<builders>
|
||||
<hudson.plugins.parameterizedtrigger.TriggerBuilder>
|
||||
<configs>
|
||||
<hudson.plugins.parameterizedtrigger.BlockableBuildTriggerConfig>
|
||||
<configs class="java.util.Collections$EmptyList"/>
|
||||
<configFactories>
|
||||
<hudson.plugins.parameterizedtrigger.BinaryFileParameterFactory>
|
||||
<parameterName>filename</parameterName>
|
||||
<filePattern>propfile*.txt</filePattern>
|
||||
<noFilesFoundAction>SKIP</noFilesFoundAction>
|
||||
</hudson.plugins.parameterizedtrigger.BinaryFileParameterFactory>
|
||||
</configFactories>
|
||||
<projects>build_started</projects>
|
||||
<condition>ALWAYS</condition>
|
||||
<triggerWithNoParameters>false</triggerWithNoParameters>
|
||||
<buildAllNodesWithLabel>false</buildAllNodesWithLabel>
|
||||
<block>
|
||||
<buildStepFailureThreshold>
|
||||
<name>FAILURE</name>
|
||||
<ordinal>2</ordinal>
|
||||
<color>RED</color>
|
||||
</buildStepFailureThreshold>
|
||||
<unstableThreshold>
|
||||
<name>UNSTABLE</name>
|
||||
<ordinal>1</ordinal>
|
||||
<color>YELLOW</color>
|
||||
</unstableThreshold>
|
||||
<failureThreshold>
|
||||
<name>FAILURE</name>
|
||||
<ordinal>2</ordinal>
|
||||
<color>RED</color>
|
||||
</failureThreshold>
|
||||
</block>
|
||||
</hudson.plugins.parameterizedtrigger.BlockableBuildTriggerConfig>
|
||||
</configs>
|
||||
</hudson.plugins.parameterizedtrigger.TriggerBuilder>
|
||||
</builders>
|
||||
</project>
|
@ -0,0 +1,8 @@
|
||||
builders:
|
||||
- trigger-builds:
|
||||
- project: "build_started"
|
||||
parameter-factories:
|
||||
- factory: binaryfile
|
||||
parameter-name: filename
|
||||
file-pattern: propfile*.txt
|
||||
block: true
|
@ -0,0 +1,44 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<project>
|
||||
<builders>
|
||||
<hudson.plugins.parameterizedtrigger.TriggerBuilder>
|
||||
<configs>
|
||||
<hudson.plugins.parameterizedtrigger.BlockableBuildTriggerConfig>
|
||||
<configs class="java.util.Collections$EmptyList"/>
|
||||
<configFactories>
|
||||
<hudson.plugins.parameterizedtrigger.CounterBuildParameterFactory>
|
||||
<from>0</from>
|
||||
<to>5</to>
|
||||
<step>1</step>
|
||||
<paramExpr>EXAMPLE=NICE
|
||||
HELLO=WORLD
|
||||
</paramExpr>
|
||||
<validationFail>SKIP</validationFail>
|
||||
</hudson.plugins.parameterizedtrigger.CounterBuildParameterFactory>
|
||||
</configFactories>
|
||||
<projects>build_started</projects>
|
||||
<condition>ALWAYS</condition>
|
||||
<triggerWithNoParameters>false</triggerWithNoParameters>
|
||||
<buildAllNodesWithLabel>false</buildAllNodesWithLabel>
|
||||
<block>
|
||||
<buildStepFailureThreshold>
|
||||
<name>FAILURE</name>
|
||||
<ordinal>2</ordinal>
|
||||
<color>RED</color>
|
||||
</buildStepFailureThreshold>
|
||||
<unstableThreshold>
|
||||
<name>UNSTABLE</name>
|
||||
<ordinal>1</ordinal>
|
||||
<color>YELLOW</color>
|
||||
</unstableThreshold>
|
||||
<failureThreshold>
|
||||
<name>FAILURE</name>
|
||||
<ordinal>2</ordinal>
|
||||
<color>RED</color>
|
||||
</failureThreshold>
|
||||
</block>
|
||||
</hudson.plugins.parameterizedtrigger.BlockableBuildTriggerConfig>
|
||||
</configs>
|
||||
</hudson.plugins.parameterizedtrigger.TriggerBuilder>
|
||||
</builders>
|
||||
</project>
|
@ -0,0 +1,13 @@
|
||||
builders:
|
||||
- trigger-builds:
|
||||
- project: "build_started"
|
||||
parameter-factories:
|
||||
- factory: counterbuild
|
||||
from: 0
|
||||
to: 5
|
||||
step: 1
|
||||
validation-fail: SKIP
|
||||
parameters: |
|
||||
EXAMPLE=NICE
|
||||
HELLO=WORLD
|
||||
block: true
|
@ -0,0 +1,42 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<project>
|
||||
<builders>
|
||||
<hudson.plugins.parameterizedtrigger.TriggerBuilder>
|
||||
<configs>
|
||||
<hudson.plugins.parameterizedtrigger.BlockableBuildTriggerConfig>
|
||||
<configs class="java.util.Collections$EmptyList"/>
|
||||
<configFactories>
|
||||
<hudson.plugins.parameterizedtrigger.CounterBuildParameterFactory>
|
||||
<from>0</from>
|
||||
<to>5</to>
|
||||
<step>1</step>
|
||||
<paramExpr/>
|
||||
<validationFail>FAIL</validationFail>
|
||||
</hudson.plugins.parameterizedtrigger.CounterBuildParameterFactory>
|
||||
</configFactories>
|
||||
<projects>build_started</projects>
|
||||
<condition>ALWAYS</condition>
|
||||
<triggerWithNoParameters>false</triggerWithNoParameters>
|
||||
<buildAllNodesWithLabel>false</buildAllNodesWithLabel>
|
||||
<block>
|
||||
<buildStepFailureThreshold>
|
||||
<name>FAILURE</name>
|
||||
<ordinal>2</ordinal>
|
||||
<color>RED</color>
|
||||
</buildStepFailureThreshold>
|
||||
<unstableThreshold>
|
||||
<name>UNSTABLE</name>
|
||||
<ordinal>1</ordinal>
|
||||
<color>YELLOW</color>
|
||||
</unstableThreshold>
|
||||
<failureThreshold>
|
||||
<name>FAILURE</name>
|
||||
<ordinal>2</ordinal>
|
||||
<color>RED</color>
|
||||
</failureThreshold>
|
||||
</block>
|
||||
</hudson.plugins.parameterizedtrigger.BlockableBuildTriggerConfig>
|
||||
</configs>
|
||||
</hudson.plugins.parameterizedtrigger.TriggerBuilder>
|
||||
</builders>
|
||||
</project>
|
@ -0,0 +1,9 @@
|
||||
builders:
|
||||
- trigger-builds:
|
||||
- project: "build_started"
|
||||
parameter-factories:
|
||||
- factory: counterbuild
|
||||
from: 0
|
||||
to: 5
|
||||
step: 1
|
||||
block: true
|
@ -0,0 +1,39 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<project>
|
||||
<builders>
|
||||
<hudson.plugins.parameterizedtrigger.TriggerBuilder>
|
||||
<configs>
|
||||
<hudson.plugins.parameterizedtrigger.BlockableBuildTriggerConfig>
|
||||
<configs class="java.util.Collections$EmptyList"/>
|
||||
<configFactories>
|
||||
<hudson.plugins.parameterizedtrigger.FileBuildParameterFactory>
|
||||
<filePattern>propfile*.txt</filePattern>
|
||||
<noFilesFoundAction>NOPARMS</noFilesFoundAction>
|
||||
</hudson.plugins.parameterizedtrigger.FileBuildParameterFactory>
|
||||
</configFactories>
|
||||
<projects>build_started</projects>
|
||||
<condition>ALWAYS</condition>
|
||||
<triggerWithNoParameters>false</triggerWithNoParameters>
|
||||
<buildAllNodesWithLabel>false</buildAllNodesWithLabel>
|
||||
<block>
|
||||
<buildStepFailureThreshold>
|
||||
<name>FAILURE</name>
|
||||
<ordinal>2</ordinal>
|
||||
<color>RED</color>
|
||||
</buildStepFailureThreshold>
|
||||
<unstableThreshold>
|
||||
<name>UNSTABLE</name>
|
||||
<ordinal>1</ordinal>
|
||||
<color>YELLOW</color>
|
||||
</unstableThreshold>
|
||||
<failureThreshold>
|
||||
<name>FAILURE</name>
|
||||
<ordinal>2</ordinal>
|
||||
<color>RED</color>
|
||||
</failureThreshold>
|
||||
</block>
|
||||
</hudson.plugins.parameterizedtrigger.BlockableBuildTriggerConfig>
|
||||
</configs>
|
||||
</hudson.plugins.parameterizedtrigger.TriggerBuilder>
|
||||
</builders>
|
||||
</project>
|
@ -0,0 +1,8 @@
|
||||
builders:
|
||||
- trigger-builds:
|
||||
- project: "build_started"
|
||||
parameter-factories:
|
||||
- factory: filebuild
|
||||
file-pattern: propfile*.txt
|
||||
no-files-found-action: NOPARMS
|
||||
block: true
|
@ -0,0 +1,39 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<project>
|
||||
<builders>
|
||||
<hudson.plugins.parameterizedtrigger.TriggerBuilder>
|
||||
<configs>
|
||||
<hudson.plugins.parameterizedtrigger.BlockableBuildTriggerConfig>
|
||||
<configs class="java.util.Collections$EmptyList"/>
|
||||
<configFactories>
|
||||
<hudson.plugins.parameterizedtrigger.FileBuildParameterFactory>
|
||||
<filePattern>propfile*.txt</filePattern>
|
||||
<noFilesFoundAction>SKIP</noFilesFoundAction>
|
||||
</hudson.plugins.parameterizedtrigger.FileBuildParameterFactory>
|
||||
</configFactories>
|
||||
<projects>build_started</projects>
|
||||
<condition>ALWAYS</condition>
|
||||
<triggerWithNoParameters>false</triggerWithNoParameters>
|
||||
<buildAllNodesWithLabel>false</buildAllNodesWithLabel>
|
||||
<block>
|
||||
<buildStepFailureThreshold>
|
||||
<name>FAILURE</name>
|
||||
<ordinal>2</ordinal>
|
||||
<color>RED</color>
|
||||
</buildStepFailureThreshold>
|
||||
<unstableThreshold>
|
||||
<name>UNSTABLE</name>
|
||||
<ordinal>1</ordinal>
|
||||
<color>YELLOW</color>
|
||||
</unstableThreshold>
|
||||
<failureThreshold>
|
||||
<name>FAILURE</name>
|
||||
<ordinal>2</ordinal>
|
||||
<color>RED</color>
|
||||
</failureThreshold>
|
||||
</block>
|
||||
</hudson.plugins.parameterizedtrigger.BlockableBuildTriggerConfig>
|
||||
</configs>
|
||||
</hudson.plugins.parameterizedtrigger.TriggerBuilder>
|
||||
</builders>
|
||||
</project>
|
@ -0,0 +1,7 @@
|
||||
builders:
|
||||
- trigger-builds:
|
||||
- project: "build_started"
|
||||
parameter-factories:
|
||||
- factory: filebuild
|
||||
file-pattern: propfile*.txt
|
||||
block: true
|
@ -0,0 +1,57 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<project>
|
||||
<builders>
|
||||
<hudson.plugins.parameterizedtrigger.TriggerBuilder>
|
||||
<configs>
|
||||
<hudson.plugins.parameterizedtrigger.BlockableBuildTriggerConfig>
|
||||
<configs>
|
||||
<hudson.plugins.parameterizedtrigger.CurrentBuildParameters/>
|
||||
<hudson.plugins.parameterizedtrigger.SubversionRevisionBuildParameters/>
|
||||
<hudson.plugins.parameterizedtrigger.PredefinedBuildParameters>
|
||||
<properties>FOO="bar"</properties>
|
||||
</hudson.plugins.parameterizedtrigger.PredefinedBuildParameters>
|
||||
</configs>
|
||||
<configFactories>
|
||||
<hudson.plugins.parameterizedtrigger.FileBuildParameterFactory>
|
||||
<filePattern>propfile*.txt</filePattern>
|
||||
<noFilesFoundAction>SKIP</noFilesFoundAction>
|
||||
</hudson.plugins.parameterizedtrigger.FileBuildParameterFactory>
|
||||
<hudson.plugins.parameterizedtrigger.BinaryFileParameterFactory>
|
||||
<parameterName>filename</parameterName>
|
||||
<filePattern>otherpropfile*.txt</filePattern>
|
||||
<noFilesFoundAction>SKIP</noFilesFoundAction>
|
||||
</hudson.plugins.parameterizedtrigger.BinaryFileParameterFactory>
|
||||
<hudson.plugins.parameterizedtrigger.CounterBuildParameterFactory>
|
||||
<from>0</from>
|
||||
<to>5</to>
|
||||
<step>1</step>
|
||||
<paramExpr/>
|
||||
<validationFail>FAIL</validationFail>
|
||||
</hudson.plugins.parameterizedtrigger.CounterBuildParameterFactory>
|
||||
</configFactories>
|
||||
<projects>build_started</projects>
|
||||
<condition>ALWAYS</condition>
|
||||
<triggerWithNoParameters>false</triggerWithNoParameters>
|
||||
<buildAllNodesWithLabel>false</buildAllNodesWithLabel>
|
||||
<block>
|
||||
<buildStepFailureThreshold>
|
||||
<name>FAILURE</name>
|
||||
<ordinal>2</ordinal>
|
||||
<color>RED</color>
|
||||
</buildStepFailureThreshold>
|
||||
<unstableThreshold>
|
||||
<name>UNSTABLE</name>
|
||||
<ordinal>1</ordinal>
|
||||
<color>YELLOW</color>
|
||||
</unstableThreshold>
|
||||
<failureThreshold>
|
||||
<name>FAILURE</name>
|
||||
<ordinal>2</ordinal>
|
||||
<color>RED</color>
|
||||
</failureThreshold>
|
||||
</block>
|
||||
</hudson.plugins.parameterizedtrigger.BlockableBuildTriggerConfig>
|
||||
</configs>
|
||||
</hudson.plugins.parameterizedtrigger.TriggerBuilder>
|
||||
</builders>
|
||||
</project>
|
@ -0,0 +1,18 @@
|
||||
builders:
|
||||
- trigger-builds:
|
||||
- project: "build_started"
|
||||
predefined-parameters:
|
||||
FOO="bar"
|
||||
current-parameters: true
|
||||
svn-revision: true
|
||||
parameter-factories:
|
||||
- factory: filebuild
|
||||
file-pattern: propfile*.txt
|
||||
- factory: binaryfile
|
||||
parameter-name: filename
|
||||
file-pattern: otherpropfile*.txt
|
||||
- factory: counterbuild
|
||||
from: 0
|
||||
to: 5
|
||||
step: 1
|
||||
block: true
|
38
tests/builders/fixtures/trigger-builds004.xml
Normal file
38
tests/builders/fixtures/trigger-builds004.xml
Normal file
@ -0,0 +1,38 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<project>
|
||||
<builders>
|
||||
<hudson.plugins.parameterizedtrigger.TriggerBuilder>
|
||||
<configs>
|
||||
<hudson.plugins.parameterizedtrigger.BlockableBuildTriggerConfig>
|
||||
<configs>
|
||||
<hudson.plugins.parameterizedtrigger.FileBuildParameters>
|
||||
<propertiesFile>propfile.txt</propertiesFile>
|
||||
<failTriggerOnMissing>false</failTriggerOnMissing>
|
||||
</hudson.plugins.parameterizedtrigger.FileBuildParameters>
|
||||
</configs>
|
||||
<projects>build_started</projects>
|
||||
<condition>ALWAYS</condition>
|
||||
<triggerWithNoParameters>false</triggerWithNoParameters>
|
||||
<buildAllNodesWithLabel>false</buildAllNodesWithLabel>
|
||||
<block>
|
||||
<buildStepFailureThreshold>
|
||||
<name>FAILURE</name>
|
||||
<ordinal>2</ordinal>
|
||||
<color>RED</color>
|
||||
</buildStepFailureThreshold>
|
||||
<unstableThreshold>
|
||||
<name>UNSTABLE</name>
|
||||
<ordinal>1</ordinal>
|
||||
<color>YELLOW</color>
|
||||
</unstableThreshold>
|
||||
<failureThreshold>
|
||||
<name>FAILURE</name>
|
||||
<ordinal>2</ordinal>
|
||||
<color>RED</color>
|
||||
</failureThreshold>
|
||||
</block>
|
||||
</hudson.plugins.parameterizedtrigger.BlockableBuildTriggerConfig>
|
||||
</configs>
|
||||
</hudson.plugins.parameterizedtrigger.TriggerBuilder>
|
||||
</builders>
|
||||
</project>
|
6
tests/builders/fixtures/trigger-builds004.yaml
Normal file
6
tests/builders/fixtures/trigger-builds004.yaml
Normal file
@ -0,0 +1,6 @@
|
||||
builders:
|
||||
- trigger-builds:
|
||||
- project: "build_started"
|
||||
property-file: propfile.txt
|
||||
property-file-fail-on-missing: false
|
||||
block: true
|
Loading…
Reference in New Issue
Block a user