From 8d25708b38fc43cb09569f522866d19a70c1a8e0 Mon Sep 17 00:00:00 2001 From: Victor Garcia Date: Tue, 26 Jun 2012 16:01:33 +0200 Subject: [PATCH] improving performance in the get_job() method --- jenkinsapi/jenkins.py | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/jenkinsapi/jenkins.py b/jenkinsapi/jenkins.py index 646098e..040b8d2 100644 --- a/jenkinsapi/jenkins.py +++ b/jenkinsapi/jenkins.py @@ -117,6 +117,14 @@ class Jenkins(JenkinsBase): for info in self._data["jobs"]: yield info["name"], Job(info["url"], info["name"], jenkins_obj=self) + def get_jobs_info(self): + """ + Get the jobs information + :return url, name + """ + for info in self._data["jobs"]: + yield info["url"], info["name"] + def get_jobs_list(self): """ return jobs dict,'name:url' @@ -263,9 +271,9 @@ class Jenkins(JenkinsBase): :param jobname: name of job, str :return: Job obj """ - for name, job in self.get_jobs(): + for url, name in self.get_jobs_info(): if name == jobname: - return job + return Job(url, name, jenkins_obj=self) raise UnknownJob(jobname) def get_node_dict(self): -- 2.34.1