From a2756a00389323fbf76ef367ca351e911849b73d Mon Sep 17 00:00:00 2001 From: Victor Boivie Date: Wed, 2 Apr 2014 16:40:08 +0200 Subject: triggered-builds: Support property file injection Change-Id: I31091977560eabf5656aaa8706de5410d86d5caf --- jenkins_jobs/modules/builders.py | 10 +++++++ tests/builders/fixtures/trigger-builds002.xml | 38 ++++++++++++++++++++++++++ tests/builders/fixtures/trigger-builds002.yaml | 5 ++++ 3 files changed, 53 insertions(+) create mode 100644 tests/builders/fixtures/trigger-builds002.xml create mode 100644 tests/builders/fixtures/trigger-builds002.yaml diff --git a/jenkins_jobs/modules/builders.py b/jenkins_jobs/modules/builders.py index e995c3e2..37386872 100644 --- a/jenkins_jobs/modules/builders.py +++ b/jenkins_jobs/modules/builders.py @@ -264,6 +264,8 @@ def trigger_builds(parser, xml_parent, data): :arg str project: the Jenkins project to trigger :arg str predefined-parameters: 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 current-parameters: Whether to include the parameters passed to the current build to the triggered job. @@ -296,6 +298,14 @@ def trigger_builds(parser, xml_parent, data): XML.SubElement(tconfigs, 'hudson.plugins.parameterizedtrigger.' 'SubversionRevisionBuildParameters') + if 'property-file' in project_def: + params = XML.SubElement(tconfigs, + 'hudson.plugins.parameterizedtrigger.' + 'FileBuildParameters') + propertiesFile = XML.SubElement(params, 'propertiesFile') + propertiesFile.text = project_def['property-file'] + failOnMissing = XML.SubElement(params, 'failTriggerOnMissing') + failOnMissing.text = 'true' if 'predefined-parameters' in project_def: params = XML.SubElement(tconfigs, 'hudson.plugins.parameterizedtrigger.' diff --git a/tests/builders/fixtures/trigger-builds002.xml b/tests/builders/fixtures/trigger-builds002.xml new file mode 100644 index 00000000..63b7caa8 --- /dev/null +++ b/tests/builders/fixtures/trigger-builds002.xml @@ -0,0 +1,38 @@ + + + + + + + + + propfile.txt + true + + + build_started + ALWAYS + false + false + + + FAILURE + 2 + RED + + + UNSTABLE + 1 + YELLOW + + + FAILURE + 2 + RED + + + + + + + diff --git a/tests/builders/fixtures/trigger-builds002.yaml b/tests/builders/fixtures/trigger-builds002.yaml new file mode 100644 index 00000000..281deeba --- /dev/null +++ b/tests/builders/fixtures/trigger-builds002.yaml @@ -0,0 +1,5 @@ +builders: + - trigger-builds: + - project: "build_started" + property-file: propfile.txt + block: true -- cgit