
Add some common management and version comparison capabilities via dedicated classes to simplify how calling libraries can perform version checks on the installed plugins. Update the comments on the existing methods to note that they return the raw plugin data in JSON format instead of the parsed local objects. Change-Id: If43bb945f55c6fb9f8a6595091eace12e4630ffa
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 folders1
- 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
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.↩︎