get_build_triggerurl logic fix
authorKyle <kyle.rockman@mac.com>
Mon, 27 Jan 2014 20:27:53 +0000 (14:27 -0600)
committerKyle <kyle.rockman@mac.com>
Mon, 27 Jan 2014 20:27:53 +0000 (14:27 -0600)
job.get_build_triggerurl had invalid logic for determining what build url to be using.  Parameterized builds can only be started via the rest API with the buildWithParameters endpoint even if you don't pass any parameters in.

jenkinsapi/job.py

index 49f49720553c3110e65ecf688ca6166bbd495938..1faad22472077beec2445cc5d6b09e6d6591eb2d 100644 (file)
@@ -127,9 +127,9 @@ class Job(JenkinsBase, MutableJenkinsThing):
         return self._element_tree
 
     def get_build_triggerurl(self, build_params=None, files=None):
-        if build_params or files:
-            return "%s/buildWithParameters" % self.baseurl
-        return "%s/build" % self.baseurl
+        if len(self.get_params_list()) == 0:
+            return "%s/build" % self.baseurl
+        return "%s/buildWithParameters" % self.baseurl
 
     @staticmethod
     def _mk_json_from_build_parameters(build_params):