Kubernetes backend for Pants
This release targets Pants 2.31.0. Install it with
pants-backend-k8s==0.7.0 in [GLOBAL].plugins in pants.toml.
Warning This plugin is in development. No stability is guaranteed! Contributions welcome.
This backends implements targets for working with Kubernetes clusters using raw YAML.
- kubectl for cluster operations
Tool versions
The default is kubectl v1.37.1, with v1.36.5, v1.35.9, and
v1.34.12 also recorded for Linux/macOS on x86-64 and ARM64. Select a version with
--kubectl-tool-version=v1.35.9 or [kubectl-tool].version in pants.toml.
Follow the Kubernetes release/EOL dates when
choosing a minor; kubectl must be within one minor of the API server. The 1.34
entries are due for removal after their 2026-10-27 EOL.
Targets
There's currently three targets for pants-backend-k8s:
k8s_source
A file that can be passed into other k8s fields that are not source fields. For example, k8s_object.template.
k8s_source(
name="namespace.yaml",
source="namespace.yaml",
)
| Argument | Meaning | Default value |
|---|---|---|
name |
The target name | Same as any other target, which is the directory name |
source |
The raw file | Required |
decsription |
A description of the target | |
tags |
List of tags | [] |
This'll eventually be automated like other rules once a suitable heuristic for generation with tailor is found. PRs welcome!
k8s_object
Input for a kubernetes command, either generated via kustomize or via k8s_source.
k8s_object(
name="k8s",
description="the chat backend"
template=[":kustomize"],
namespace="chat-app",
cluster="prod",
)
| Argument | Meaning | Default value |
|---|---|---|
name |
The target name | Same as any other target, which is the directory name |
template |
The target to act on | Required |
namespace |
Namespace to target | Optional, will use default kubectl namespace |
cluster |
cluster to target | Optional, will use default kubectl cluster |
decsription |
A description of the target | |
tags |
List of tags | [] |
k8s_object is a generator for kubernetes target parametrized by the potential commands that are available: apply,
create, get, describe, replace, and delete.
k8s_objects
A collection of kubernetes objects that should be managed together.
k8s_objects(
name="my-service",
description="all components of service-x"
objects=[":namespace", ":deployment"],
)
| Argument | Meaning | Default value |
|---|---|---|
name |
The target name | Same as any other target, which is the directory name |
objects |
k8s_object targets that should be managed | Required |
decsription |
A description of the target | |
tags |
List of tags | [] |
Like k8s_object, k8s_objects is a generator for parametrized targets for the commands that are available: apply,
create, get, describe, replace, and delete.
Metadata
Release files for pants-backend-k8s 0.7.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| pants_backend_k8s-0.7.0.tar.gz | 11.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pants_backend_k8s-0.7.0-py2.py3-none-any.whl | Python 2, Python 3 | none | any | Details |
Total release size: 25.1 kB
Release files / pants_backend_k8s-0.7.0.tar.gz
| Download URL | pants_backend_k8s-0.7.0.tar.gz |
|---|---|
| Size | 11.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
9c4227a0cdb7ba0bfac6c9b4f1928031270c03047fac6103d8f2d46f96a9d681
|
|
BLAKE2b-256 checksum How to use checksums |
ba73a332cd56ea24dd668bb9f493916fdacb124fe64a36e4899e67a1c5bcab53
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.9.23
|
Release files / pants_backend_k8s-0.7.0-py2.py3-none-any.whl
| Download URL | pants_backend_k8s-0.7.0-py2.py3-none-any.whl |
|---|---|
| Size | 13.4 kB |
| Tags | Python 2 Python 3 |
|
SHA-256 checksum How to use checksums |
cfa14b03692427ec2fc5b7f7138e47e848ecd6aab985703f5664e8432f610f2f
|
|
BLAKE2b-256 checksum How to use checksums |
1528f90c176be2c6e612f103a06a0be9729f5736c0d6267636a73848136efa63
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.9.23
|