summaryrefslogtreecommitdiffstats
path: root/jenkins_jobs/modules/view_list.py
diff options
context:
space:
mode:
authorAnil Belur <askb23@gmail.com>2018-03-02 12:45:41 +1000
committerAnil Belur <askb23@gmail.com>2018-03-02 12:45:41 +1000
commit00f64f2e20fbe6596ebffec07e7cd9d2c601cb95 (patch)
tree25e2c848431f0bfc3536d32e9a35f5acb4b97f62 /jenkins_jobs/modules/view_list.py
parentc6ff48ce4a1097ac642e6de7776e2723748475f3 (diff)
downloadpython-jenkins-job-builder-00f64f2e20fbe6596ebffec07e7cd9d2c601cb95.tar.gz
python-jenkins-job-builder-00f64f2e20fbe6596ebffec07e7cd9d2c601cb95.tar.xz
python-jenkins-job-builder-00f64f2e20fbe6596ebffec07e7cd9d2c601cb95.zip
Add support for job status job filter
Add support for job status job filter for views. Change-Id: Iaeace8d2f4a150ab2497f25371f18b9b62617713 Signed-off-by: Anil Belur <askb23@gmail.com>
Diffstat (limited to 'jenkins_jobs/modules/view_list.py')
-rw-r--r--jenkins_jobs/modules/view_list.py31
1 files changed, 31 insertions, 0 deletions
diff --git a/jenkins_jobs/modules/view_list.py b/jenkins_jobs/modules/view_list.py
index c0259107..36e28a62 100644
--- a/jenkins_jobs/modules/view_list.py
+++ b/jenkins_jobs/modules/view_list.py
@@ -62,6 +62,20 @@ to the :ref:`view_list` definition.
* **status**: ('str'): Job status.
(default Completed)
+ * **job-status** (`dict`)
+ :job-status: * **match-type** ('str'): Jobs that match a filter
+ to include. (default includeMatched)
+ * **unstable** ('bool'): Jobs with status
+ unstable. (default False)
+ * **failed** ('bool'): Jobs with status
+ failed. (default False)
+ * **aborted** ('bool'): Jobs with status
+ aborted. (default False)
+ * **disabled** ('bool'): Jobs with status
+ disabled. (default False)
+ * **stable** ('bool'): Jobs with status
+ stable. (default False)
+
* **columns** (`list`): List of columns to be shown in view.
* **regex** (`str`): . Regular expression for selecting jobs
(optional)
@@ -182,6 +196,23 @@ class List(jenkins_jobs.modules.base.Base):
convert_mapping_to_xml(bt_xml, bt_data, mapping,
fail_required=True)
+ if jobfilter == 'job-status':
+ js_xml = XML.SubElement(job_filter_xml,
+ 'hudson.views.JobStatusFilter')
+ js_xml.set('plugin', 'view-job-filters')
+ js_data = jobfilters.get('job-status')
+ mapping = [
+ ('match-type', 'includeExcludeTypeString',
+ 'includeMatched'),
+ ('unstable', 'unstable', False),
+ ('failed', 'failed', False),
+ ('aborted', 'aborted', False),
+ ('disabled', 'disabled', False),
+ ('stable', 'stable', False),
+ ]
+ convert_mapping_to_xml(js_xml, js_data, mapping,
+ fail_required=True)
+
c_xml = XML.SubElement(root, 'columns')
columns = data.get('columns', DEFAULT_COLUMNS)