diff --git a/jenkins_jobs/modules/parameters.py b/jenkins_jobs/modules/parameters.py index f01d80439..47bd5d5bd 100644 --- a/jenkins_jobs/modules/parameters.py +++ b/jenkins_jobs/modules/parameters.py @@ -394,7 +394,11 @@ def extended_choice_param(registry, xml_parent, data): :arg str description-property-key: key for the value description property file (optional, default '') :arg str multi-select-delimiter: value between selections when the - parameter is a multi-select (optiona, default ',') + parameter is a multi-select (optional, default ',') + :arg str groovy-script: the groovy script contents (optional, default ',') + :arg str classpath: the classpath for the groovy script + (optional, default ',') + Minimal Example: @@ -437,6 +441,8 @@ def extended_choice_param(registry, xml_parent, data): ('default-property-key', 'defaultPropertyKey', ''), ('description-property-file', 'descriptionPropertyFile', ''), ('description-property-key', 'descriptionPropertyKey', ''), + ('groovy-script', 'groovyScript', ''), + ('classpath', 'groovyClasspath', ''), ] convert_mapping_to_xml(pdef, data, mapping, fail_required=True) diff --git a/tests/parameters/fixtures/extended-choice-param-full.xml b/tests/parameters/fixtures/extended-choice-param-full.xml index 38e29147f..f3716a90c 100644 --- a/tests/parameters/fixtures/extended-choice-param-full.xml +++ b/tests/parameters/fixtures/extended-choice-param-full.xml @@ -19,6 +19,8 @@ fookey + + diff --git a/tests/parameters/fixtures/extended-choice-param-minimal-groovy.xml b/tests/parameters/fixtures/extended-choice-param-minimal-groovy.xml new file mode 100644 index 000000000..a8e92e3cc --- /dev/null +++ b/tests/parameters/fixtures/extended-choice-param-minimal-groovy.xml @@ -0,0 +1,28 @@ + + + + + + + OPTIONS + Available options + + 5 + , + false + + + PT_CHECKBOX + + + + + + + return 'value1, value2, value3' + + + + + + diff --git a/tests/parameters/fixtures/extended-choice-param-minimal-groovy.yaml b/tests/parameters/fixtures/extended-choice-param-minimal-groovy.yaml new file mode 100644 index 000000000..555a0e770 --- /dev/null +++ b/tests/parameters/fixtures/extended-choice-param-minimal-groovy.yaml @@ -0,0 +1,7 @@ +parameters: + - extended-choice: + name: OPTIONS + description: "Available options" + type: 'PT_CHECKBOX' + groovy-script: "return 'value1, value2, value3'" + classpath: '' diff --git a/tests/parameters/fixtures/extended-choice-param-minimal.xml b/tests/parameters/fixtures/extended-choice-param-minimal.xml index dcf9f9483..b4c3c780b 100644 --- a/tests/parameters/fixtures/extended-choice-param-minimal.xml +++ b/tests/parameters/fixtures/extended-choice-param-minimal.xml @@ -19,6 +19,8 @@ + +