skillfed

pulumi-kubernetes

A Pulumi package for creating and managing Kubernetes resources.

pulumi-kubernetes v4.33.0 1.4M downloads/30d#3,974 on PyPI457
Permissive license Apache-2.0 Active released

What it is and what it does

Pulumi Kubernetes is a resource provider that bridges Pulumi's infrastructure-as-code framework with Kubernetes, letting you define cluster workloads and resources in Python instead of YAML. It wraps the Kubernetes OpenAPI specification automatically, so the SDK stays synchronized with upstream Kubernetes releases and exposes the full API surface—Deployments, Services, ConfigMaps, Secrets, Jobs, and all other resource types—in a programmatic, type-aware interface.

You use it to deploy manifests from files, install Helm charts, or construct individual Kubernetes resources using the SDK's resource classes. It respects your local kubeconfig, so it works with any running cluster (EKS, AKS, GKE, or self-managed). The package depends on pulumi as its core orchestration engine, plus parver, semver, requests, and typing-extensions for version handling and HTTP operations.

Use it for:

  • Deploy YAML manifests from files into a running cluster without writing kubectl commands.
  • Install and configure Helm charts programmatically with custom values and cluster-specific providers.
  • Define Kubernetes Deployments, Services, and ConfigMaps as Python objects with full IDE autocomplete and type checking.
  • Manage multi-cluster or multi-environment Kubernetes resources using Pulumi's stack and configuration system.
  • Combine Kubernetes resource definitions with other cloud infrastructure (e.g., EKS cluster creation) in a single Pulumi program.

Worth the install?

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

Pulumi Kubernetes Resource Provider lets you define, deploy, and manage Kubernetes API resources and workloads programmatically using Python, with full API coverage including Deployments, Services, ConfigMaps, and other Kubernetes primitives.

Yes. This package is actively maintained, has no known vulnerabilities, installs cleanly with low friction, and is the standard way to manage Kubernetes resources from Pulumi. Install it if you are already using Pulumi and need to deploy or manage Kubernetes workloads programmatically; it is not a standalone Kubernetes tool and requires Pulumi CLI and a running cluster.

Install

pulumi-kubernetes on PyPI

pip

pip install pulumi-kubernetes

uv

uv add pulumi-kubernetes

poetry

poetry add pulumi-kubernetes

Installing pulumi-kubernetes

Before you install

Low install friction with a pure-Python wheel distribution. Actively maintained with a recent release (38 days ago) and an active repository. Five runtime dependencies are all well-established packages.

License in practice

Apache-2.0 permissive license allows use in commercial and proprietary projects with minimal restrictions; you must retain license notices and provide a copy of the license.

Quickstart

pip install pulumi-kubernetes

import pulumi_kubernetes as k8s

deployment = k8s.apps.v1.Deployment(
    "my-app",
    spec={
        "replicas": 2,
        "selector": {"matchLabels": {"app": "nginx"}},
        "template": {
            "metadata": {"labels": {"app": "nginx"}},
            "spec": {"containers": [{"name": "nginx", "image": "nginx"}]}
        }
    }
)

Requires a running Kubernetes cluster accessible via kubeconfig, and Pulumi CLI installed and configured.

Verify before relying

  • Whether the package works with Kubernetes versions older than 1.13.0 despite the stated support floor.
  • Performance characteristics when managing large numbers of resources or complex API objects.
  • Whether alpha and beta Kubernetes APIs are fully stable or carry additional risk in production.

Package facts

License Apache-2.0 (permissive)
Python support supports the current Python release (>=3.9)
Install friction low — pure-Python wheel
Runtime dependencies 5 — parver, pulumi, requests, semver, typing-extensions
Maintenance actively maintained — 38 days since the last release
Last repo commit
First released
Downloads 1,385,718/month — #3,974 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: pulumi_kubernetes-4.33.0-py3-none-any.whl

Keywords: pulumi, kubernetes, category/cloud, kind/native

Tags

kubernetes infrastructure as codepulumi kubernetes providerdeploy kubernetes resources pythonkubernetes resource managementinfrastructure automation kuberneteskubernetes declarative deploymentpulumi k8s sdk
infrastructure-as-codekubernetespulumi

More Distributed Computing packages