Jenkins Python Client
Project description
Jenkins Python Client
Python3 client library for Jenkins API.
Features
- Object oriented, each Jenkins item has corresponding class, easy to use and extend
- Base on
api/json
, easy to query/filter attribute of item - Setup relationship between class just like Jenkins item
- Support api for almost every Jenkins item
- Pythonic
- Test with latest Jenkins LTS
Installation
python3 -m pip install api4jenkins
Quick start
>>> from api4jenkins import Jenkins
>>> client = Jenkins('http://127.0.0.1:8080/', auth=('admin', 'admin'))
>>> client.version
'2.176.2'
>>> xml = """<?xml version='1.1' encoding='UTF-8'?>
... <project>
... <builders>
... <hudson.tasks.Shell>
... <command>echo $JENKINS_VERSION</command>
... </hudson.tasks.Shell>
... </builders>
... </project>"""
>>> client.create_job('path/to/job', xml)
>>> import time
>>> item = client.build_job('path/to/job')
>>> while not item.get_build():
... time.sleep(1)
>>> build = item.get_build()
>>> for line in build.progressive_output():
... print(line)
...
Started by user admin
Running as SYSTEM
Building in workspace /var/jenkins_home/workspace/freestylejob
[freestylejob] $ /bin/sh -xe /tmp/jenkins2989549474028065940.sh
+ echo $JENKINS_VERSION
2.176.2
Finished: SUCCESS
>>> build.building
False
>>> build.result
'SUCCESS'
Documentation
User Guide and API Reference is available on Read the Docs
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
api4jenkins-1.12.tar.gz
(20.9 kB
view hashes)
Built Distribution
api4jenkins-1.12-py3-none-any.whl
(25.9 kB
view hashes)
Close
Hashes for api4jenkins-1.12-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 86a9e5246787ccd3526dbc732aa9ac324d2c419ec350f2a4257ea182033f1108 |
|
MD5 | 505d9f06fcaef6c7b622c73121df22d2 |
|
BLAKE2b-256 | 2dce9ce99edbc7eee373ed33e436ebc84fdf3ca0a925639cfb785de536808999 |