skillfed

pyhelm3

Python library for managing Helm releases using Helm 3 and later (i.e. Tiller-less Helm).

pyhelm3 v0.5.4 162.5K downloads/30d#10,600 on PyPI
Permissive license Apache-2.0 Active released

What it is and what it does

pyhelm3 wraps the Helm 3+ command-line tool to let you manage Kubernetes Helm releases from Python code. Instead of shelling out to `helm` commands manually, you instantiate a Client object (pointing to your kubeconfig and context) and call methods to list, install, upgrade, or uninstall releases. It handles chart fetching from repositories, revision tracking, and status inspection, all through an async-friendly API.

The library is built on pydantic for data validation, pyyaml for configuration parsing, and semver for version handling. It's designed for automation workflows—CI/CD pipelines, infrastructure-as-code tools, or Kubernetes operators—where you need programmatic control over Helm deployments without spawning shell processes directly.

Use it for:

  • Automate Helm chart deployments in CI/CD pipelines by installing or upgrading releases programmatically
  • Build infrastructure-as-code tools that manage Kubernetes applications through a Python API
  • Monitor and list deployed Helm releases across multiple namespaces in a single Python script
  • Implement custom Kubernetes operators or controllers that need to manage Helm releases
  • Fetch and inspect chart metadata and README files before deciding whether to deploy them

Worth the install?

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

pyhelm3 is a Python library for programmatically managing Helm releases in Kubernetes clusters using Helm 3 and later, supporting installation, upgrades, listing, and uninstallation of releases.

Yes, if you need to manage Helm releases from Python code. The library has low install friction, active maintenance, permissive licensing, and no known vulnerabilities. The main prerequisite is having Helm 3+ installed on your system and Python 3.10+. It's well-suited for automation and infrastructure tooling.

Install

pyhelm3 on PyPI

pip

pip install pyhelm3

uv

uv add pyhelm3

poetry

poetry add pyhelm3

Installing pyhelm3

Before you install

Low install friction with three lightweight runtime dependencies (pydantic, pyyaml, semver). Active maintenance with a recent release 11 days ago. Requires Python 3.10 or later and the Helm executable to be available on the system.

License in practice

Licensed under Apache-2.0 (permissive), allowing commercial and private use with minimal restrictions—suitable for most deployment scenarios.

Quickstart

pip install pyhelm3

from pyhelm3 import Client

client = Client()
releases = await client.list_releases(all=True, all_namespaces=True)

Requires Helm 3 or later executable to be installed and on the PATH (or specify a custom path via the executable parameter). Requires Python 3.10 or later.

Verify before relying

  • Whether the package supports async/await patterns throughout or only in specific methods
  • Compatibility with Helm 4 when it becomes available, beyond the atomic parameter note
  • Performance characteristics for large numbers of releases or namespaces

Package facts

License Apache-2.0 (permissive)
Python support supports the current Python release (>=3.10)
Install friction low — pure-Python wheel
Runtime dependencies 3 — pydantic, pyyaml, semver
Maintenance actively maintained — 11 days since the last release
First released
Downloads 162,479/month — #10,600 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: pyhelm3-0.5.4-py3-none-any.whl

Tags

helm release management pythonkubernetes helm automationhelm 3 python clientdeploy helm charts programmaticallyhelm release orchestrationkubernetes package managementhelm cli wrapper python
kuberneteshelmdevops

More Distributed Computing packages