VM INSTANCE // pluto · demoshell/tools:pluto
◍ PRIVATE VM
Pluto running in your browser
downloads up to ≈ 28.1 MB
This VM is emulated in your browser, so software can feel slower here than it does on a real machine.

Pluto finds deprecated Kubernetes apiVersions in your manifests and Helm charts. Kubernetes retires an API group version, serves it for a few more releases, and then stops; a manifest that still names the old one stops applying on the day you upgrade. Pluto tells you which resources those are, what to change each one to, and which release it goes away in.

It reads static files in a repository, and in a cluster it reads Helm releases and the served API resources as well. It is not limited to core Kubernetes — it tracks cert-manager and Istio versions too, and takes a file of your own for anything else. Point it at a version with --target-versions k8s=v1.29 and it answers for that upgrade rather than in general, which is the difference between a lint and a plan. It exits 2 on a deprecated apiVersion and 3 on a removed one, so it gates a pipeline as it stands, and Fairwinds publish a GitHub Action that runs it on a pull request.

The demo opens in /root/platform-infra, a repository of manifests for three services and the cluster add-ons they depend on, with six resources on apiVersions that are on their way out. Scan the whole thing, then ask about a particular upgrade: -t k8s=v1.24 finds one resource that breaks, -t k8s=v1.26 finds five. Fix one manifest with sed and scan that directory again to watch it come back clean, which is the state a CI job is looking for. The VM is private to your browser tab; nothing you type leaves it.

Commands to try

pluto detect-files -d .every deprecated apiVersion in the repository
pluto detect-files -d . -o widethe release each one was deprecated and removed in
pluto detect-files -d . -t k8s=v1.24 -rwhat a 1.24 cluster will no longer serve
pluto detect-files -d . -t k8s=v1.26 -rthe same question two releases later
pluto detect-files -d . -o markdownthe same table as markdown for a pull request
pluto list-versionsevery apiVersion Pluto tracks and when it goes away

Install Pluto on your own machine

macOS (Homebrew)brew install FairwindsOps/tap/pluto
asdfasdf plugin-add pluto
Dockerdocker pull us-docker.pkg.dev/fairwinds-ops/oss/pluto

This VM was last built on Sep 15, 2026. How Demoshell demos work →

Similar tools you can try here

  • Ory Kratos — A headless identity server whose sign-up and profile forms are built from a JSON schema you edit, live in a private VM.
kubernetesupgradesdeprecated apishelmgoApache-2.0
Request changes or removal

This demo of pluto (demoshell/tools:pluto) was built by Demoshell and is not affiliated with the project. Tell us what to change, or ask us to take it down.