diff --git a/0002-builders-fix-mavenName-sorting-with-py35.patch b/0002-builders-fix-mavenName-sorting-with-py35.patch new file mode 100644 index 0000000..cbad878 --- /dev/null +++ b/0002-builders-fix-mavenName-sorting-with-py35.patch @@ -0,0 +1,51 @@ +From f0005f1a605c03f24b7a6f91d18b085440572a13 Mon Sep 17 00:00:00 2001 +From: Ken Dreyer +Date: Thu, 3 Dec 2015 15:26:47 -0700 +Subject: [PATCH] builders: fix mavenName sorting with py35 + +On Fedora 24, the mavenName vs group XML is sorted differently depending +on whether we're using Python 3.5 or Python 2.7. This was causing the +test to fail on Python 3.5. + +Avoid relying on the dict sort behavior. Since there are only two XML +elements, write each one explicitly. + +Change-Id: I216bb76855220326dd374e30cdc4505fecf637cc +--- + jenkins_jobs/modules/builders.py | 19 ++++++++++--------- + 1 file changed, 10 insertions(+), 9 deletions(-) + +diff --git a/jenkins_jobs/modules/builders.py b/jenkins_jobs/modules/builders.py +index b5491d7..e628c7d 100644 +--- a/jenkins_jobs/modules/builders.py ++++ b/jenkins_jobs/modules/builders.py +@@ -1462,16 +1462,17 @@ def maven_builder(parser, xml_parent, data): + """ + maven = XML.SubElement(xml_parent, 'org.jfrog.hudson.maven3.Maven3Builder') + +- required = { +- 'mavenName': 'name', +- 'goals': 'goals', +- } ++ name = XML.SubElement(maven, 'mavenName') ++ try: ++ name.text = data['name'] ++ except KeyError: ++ raise MissingAttributeError('name') + +- for key in required: +- try: +- XML.SubElement(maven, key).text = data[required[key]] +- except KeyError: +- raise MissingAttributeError(required[key]) ++ goals = XML.SubElement(maven, 'goals') ++ try: ++ goals.text = data['goals'] ++ except KeyError: ++ raise MissingAttributeError('goals') + + XML.SubElement(maven, 'rootPom').text = data.get('pom', 'pom.xml') + XML.SubElement(maven, 'mavenOpts').text = data.get('maven-opts', '') +-- +2.4.3 +