Merge "multijob: added kill-phase-on option"
This commit is contained in:
commit
7204ec3130
@ -901,10 +901,13 @@ def multijob(parser, xml_parent, data):
|
||||
to the other job (optional)
|
||||
* **predefined-parameters** (`str`) -- Pass predefined
|
||||
parameters to the other job (optional)
|
||||
* **kill-phase-on** (`str`) -- Stop the phase execution
|
||||
on specific job status. Can be 'FAILURE', 'UNSTABLE',
|
||||
'NEVER'. (optional)
|
||||
|
||||
Example:
|
||||
|
||||
.. literalinclude:: ../../tests/builders/fixtures/multibuild.yaml
|
||||
.. literalinclude:: /../../tests/builders/fixtures/multibuild.yaml
|
||||
:language: yaml
|
||||
"""
|
||||
builder = XML.SubElement(xml_parent, 'com.tikal.jenkins.plugins.multijob.'
|
||||
@ -916,6 +919,8 @@ def multijob(parser, xml_parent, data):
|
||||
|
||||
phaseJobs = XML.SubElement(builder, 'phaseJobs')
|
||||
|
||||
kill_status_list = ('FAILURE', 'UNSTABLE', 'NEVER')
|
||||
|
||||
for project in data.get('projects', []):
|
||||
phaseJob = XML.SubElement(phaseJobs, 'com.tikal.jenkins.plugins.'
|
||||
'multijob.PhaseJobsConfig')
|
||||
@ -968,6 +973,19 @@ def multijob(parser, xml_parent, data):
|
||||
properties = XML.SubElement(param, 'properties')
|
||||
properties.text = predefined_parameters
|
||||
|
||||
# Kill phase on job status
|
||||
kill_status = project.get('kill-phase-on')
|
||||
if kill_status is not None:
|
||||
kill_status = kill_status.upper()
|
||||
if kill_status not in kill_status_list:
|
||||
raise JenkinsJobsException(
|
||||
'multijob kill-phase-on must be one of: %s'
|
||||
+ ','.join(kill_status_list))
|
||||
XML.SubElement(
|
||||
phaseJob,
|
||||
'killPhaseOnJobResultCondition'
|
||||
).text = kill_status
|
||||
|
||||
|
||||
def grails(parser, xml_parent, data):
|
||||
"""yaml: grails
|
||||
|
@ -47,6 +47,7 @@
|
||||
<jobName>PhaseTwoJobB</jobName>
|
||||
<currParams>false</currParams>
|
||||
<configs/>
|
||||
<killPhaseOnJobResultCondition>UNSTABLE</killPhaseOnJobResultCondition>
|
||||
</com.tikal.jenkins.plugins.multijob.PhaseJobsConfig>
|
||||
</phaseJobs>
|
||||
</com.tikal.jenkins.plugins.multijob.MultiJobBuilder>
|
||||
|
@ -20,3 +20,4 @@ builders:
|
||||
predefined-parameters: foo=bar
|
||||
- name: PhaseTwoJobB
|
||||
current-parameters: false
|
||||
kill-phase-on: UNSTABLE
|
||||
|
Loading…
x
Reference in New Issue
Block a user