Recently, I turned jenkins to https. This is my code to use jenkinsapi :
import jenkinsapi
from jenkinsapi.jenkins import Jenkins
from jenkinsapi.utils.requester import Requester
import requests
url = 'https://jenkinsd:443'
username = 'MyUser'
password = '123'
requests.packages.urllib3.disable_warnings()
jenkins = Jenkins(url, username, password)
jobs = jenkins.get_jobs()
for jobName in jobs:
print(jobName)
I get this error:
requests.exceptions.SSLError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:600)
I tried:
jenkins = Jenkins(url, requester=Requester(username, password, baseurl=url, ssl_verify=False))
OR:
jenkins = jenkinsapi.jenkins.Jenkins(url, username, password, requester =Requester(username, password, ssl_verify=False))
I get this error:
File "D:\Python34\lib\site-packages\requests-2.7.0-py3.4.egg\requests\adapters.py", line 415, in send
raise ConnectionError(err, request=request)
requests.exceptions.ConnectionError: ('Connection aborted.', ConnectionRefusedError(10061, 'No connection could be made because the target machine actively refused it', None, 10061, None))
Advice please :)
Solved..
jenkins = Jenkins(url, username, password, ssl_verify=False)
After correcting url : Manage Jenkins > Configure system > Jenkins URL
The jenkinsapi now works.
https://github.com/pycontribs/jenkinsapi/blob/master/doc/source/ssl_certificate_verification
Thanks!