Python Jenkins¶
README¶
Python Jenkins is a python wrapper for the Jenkins REST API which aims to provide a more conventionally pythonic way of controlling a Jenkins server. It provides a higher-level API containing a number of convenience functions.
We like to use python-jenkins to automate our Jenkins servers. Here are some of the things you can use it for:
Create new jobs
Copy existing jobs
Delete jobs
Update jobs
Get a job’s build information
Get Jenkins master version information
Get Jenkins plugin information
Start a build on a job
Create nodes
Enable/Disable nodes
Get information on nodes
Create/delete/reconfig views
Put server in shutdown mode (quiet down)
List running builds
Create/delete/update folders 1
Set the next build number 2
Install plugins
and many more..
To install:
$ sudo python setup.py install
Online documentation:
Developers¶
Bug report:
Repository:
Cloning:
Patches are submitted via Gerrit at:
Please do not submit GitHub pull requests, they will be automatically closed.
More details on how you can contribute is available on our wiki at:
Writing a patch¶
We ask that all code submissions be flake8 clean. The
easiest way to do that is to run tox before submitting code for
review in Gerrit. It will run flake8
in the same
manner as the automated test suite that will run on proposed
patchsets.
Installing without setup.py¶
Then install the required python packages using pip:
$ sudo pip install python-jenkins
Footnotes
- 1
The free Cloudbees Folders Plugin provides support for a subset of the full folders functionality. For the complete capabilities you will need the paid for version of the plugin.
- 2
The Next Build Number Plugin provides support for setting the next build number.
Contents¶
- API reference
- Using Python-Jenkins
- Example 1: Get version of Jenkins
- Example 2: Logging into Jenkins using kerberos
- Example 3: Working with Jenkins Jobs
- Example 4: Working with Jenkins Views
- Example 5: Working with Jenkins Plugins
- Example 6: Working with Jenkins Nodes
- Example 7: Working with Jenkins Build Queue
- Example 8: Working with Jenkins Cloudbees Folders
- Example 9: Updating Next Build Number
- Example 9: Working with Build Promotions
- Example 10: Waiting for Jenkins to be ready
- Installing