diff --git a/jenkins_jobs/modules/triggers.py b/jenkins_jobs/modules/triggers.py index eeb9ce932..b5092d06f 100644 --- a/jenkins_jobs/modules/triggers.py +++ b/jenkins_jobs/modules/triggers.py @@ -80,7 +80,7 @@ def gerrit_handle_legacy_configuration(data): 'skipVote', ]) - for project in data['projects']: + for project in data.get('projects', []): convert_dict(project, [ 'projectCompareType', 'projectPattern', @@ -443,7 +443,7 @@ def gerrit(parser, xml_parent, data): gerrit_handle_legacy_configuration(data) - projects = data['projects'] + projects = data.get('projects', []) gtrig = XML.SubElement(xml_parent, 'com.sonyericsson.hudson.plugins.gerrit.trigger.' 'hudsontrigger.GerritTrigger') diff --git a/tests/triggers/fixtures/gerrit009.xml b/tests/triggers/fixtures/gerrit009.xml new file mode 100644 index 000000000..f7ef95fcb --- /dev/null +++ b/tests/triggers/fixtures/gerrit009.xml @@ -0,0 +1,40 @@ + + + + + + + + false + false + false + false + + false + false + true + false + false + + + True + http://myhost/mytrigger + false + + + APRV + -1 + + + + + + + + + + + __ANY__ + + + diff --git a/tests/triggers/fixtures/gerrit009.yaml b/tests/triggers/fixtures/gerrit009.yaml new file mode 100644 index 000000000..e5053d201 --- /dev/null +++ b/tests/triggers/fixtures/gerrit009.yaml @@ -0,0 +1,8 @@ +triggers: + - gerrit: + trigger-on-comment-added-event: true + trigger-approval-category: 'APRV' + trigger-approval-value: -1 + trigger-on-change-abandoned-event: true + dynamic-trigger-enabled: true + dynamic-trigger-url: http://myhost/mytrigger