skillfed

python-jenkins

Python bindings for the remote Jenkins API

python-jenkins v1.8.3 8.7M downloads/30d#1,598 on PyPI
Permissive license BSD AGING released

What it is and what it does

Python-jenkins is a client library that wraps the Jenkins REST API, translating low-level HTTP calls into a more natural Python interface. It lets you programmatically create, copy, delete, and update jobs; manage nodes and views; trigger builds; and query server state—all without hand-crafting REST requests. The package depends on requests for HTTP communication, pbr for versioning, and multi-key-dict for internal data structures.

It is typically used to automate Jenkins administration tasks, integrate Jenkins into larger deployment pipelines, or build custom tooling around a Jenkins instance. The aging maintenance status (376 days since last release) means the package is stable but not actively developed; it remains suitable for standard Jenkins operations on supported Python versions (3.8, 3.9, 3.10, 3.11, 3.12) but may lag behind new Jenkins features or API changes.

Use it for:

  • Automate job creation and configuration across multiple Jenkins instances as part of infrastructure-as-code workflows.
  • Trigger builds and retrieve build results programmatically from CI/CD orchestration scripts.
  • Manage Jenkins nodes (agents) dynamically—enable, disable, or provision them in response to workload changes.
  • Bulk delete or archive old builds and jobs to maintain Jenkins server health and disk usage.
  • Query Jenkins for plugin versions, server status, and running builds to feed monitoring or alerting systems.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Python wrapper for the Jenkins REST API that provides a higher-level, pythonic interface to control Jenkins servers and automate common administration tasks.

Yes, if you need to automate Jenkins administration or integrate Jenkins into Python scripts. The low install friction, permissive license, and broad Python version support make it straightforward to adopt. However, the aging maintenance status (376 days since last release) means you should verify compatibility with your specific Jenkins version and be prepared to maintain patches locally if new Jenkins API changes break functionality.

Install

python-jenkins on PyPI

pip

pip install python-jenkins

uv

uv add python-jenkins

poetry

poetry add python-jenkins

Installing python-jenkins

Before you install

Low install friction with three lightweight runtime dependencies (pbr, multi-key-dict, requests). Maintenance status is aging—last release was 376 days ago—so expect slower response to issues, though the package remains functional for its core use case.

License in practice

BSD license is permissive, allowing commercial and private use with minimal restrictions; suitable for most projects.

Quickstart

pip install python-jenkins

import jenkins

server = jenkins.Jenkins('http://jenkins-server', username='user', password='token')
jobs = server.get_jobs()

Requires a running Jenkins server accessible at the specified URL; authentication credentials (username and API token or password) are needed.

Verify before relying

  • Whether the package works reliably with recent Jenkins server versions and their API changes.
  • Current state of the Gerrit-based contribution workflow and whether patches are still being reviewed.
  • Specific Python version requirements, as requires_python is unspecified in the metadata.

Package facts

License BSD (permissive)
Python support not specified
Install friction low — pure-Python wheel
Runtime dependencies 3 — pbr, multi-key-dict, requests
Maintenance aging — 376 days since the last release
First released
Downloads 8,732,372/month — #1,598 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: python_jenkins-1.8.3-py3-none-any.whl

Environment :: ConsoleIntended Audience :: DevelopersIntended Audience :: Information TechnologyIntended Audience :: System AdministratorsLicense :: OSI Approved :: BSD LicenseOperating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9Topic :: Utilities

Tags

jenkins rest api pythonjenkins automationjenkins job managementjenkins server controljenkins ci integrationjenkins build automationjenkins administration
ci-cdjenkinsautomation

More Utilities packages