self.proxyport = proxyport
self.proxyuser = proxyuser
self.proxypass = proxypass
- JenkinsBase.__init__(self, baseurl, poll=not formauth)
+ JenkinsBase.__init__(self, baseurl, formauth=formauth)
def get_proxy_auth(self):
return self.proxyhost, self.proxyport, self.proxyuser, self.proxypass
:param newjobname: name of new job, str
:return: new Job obj
"""
- copy_job_url = "%screateItem?name=%s&mode=copy&from=%s" % (self.baseurl, newjobname, jobname)
+ qs = urllib.urlencode({'name': newjobname,
+ 'mode': 'copy',
+ 'from': jobname})
+ copy_job_url = urlparse.urljoin(self.baseurl, "createItem?%s" % qs)
self.post_data(copy_job_url, '')
return Jenkins(self.baseurl).get_job(newjobname)
def __str__(self):
raise NotImplemented
- def __init__(self, baseurl, poll=True):
+ def __init__(self, baseurl, poll=True, formauth=False):
"""
Initialize a jenkins connection
"""
self.baseurl = baseurl
- if poll:
+ self.formauth = formauth
+ if poll and not self.formauth:
try:
self.poll()
except urllib2.HTTPError, hte:
def post_data(self, url, content):
try:
- request = urllib2.Request(url, content)
- result = urllib2.urlopen(request).read().strip()
+ urlopen = self.get_jenkins_obj().get_opener()
+ return urlopen(url, data=content).read().strip()
except urllib2.HTTPError, e:
log.warn("Error post data %s" % url)
log.exception(e)
log.debug( "Error reading %s" % url )
log.exception(e)
raise
- return html_result
\ No newline at end of file
+ return html_result