← Back to Kubernetes Deprecated API Check

This checker vs. Pluto

Pluto, maintained by FairwindsOps, is a widely used open-source Go tool for exactly this problem: finding deprecated or removed Kubernetes API versions. It ships as an installable binary (Homebrew, a GitHub release download, or a Docker image) with three scan modes -- local files, a rendered Helm chart or release, or, given cluster credentials, the API versions currently deployed in a live cluster -- backed by a version database FairwindsOps updates as each new Kubernetes release ships.

This checker answers the same underlying question with a much smaller footprint. It is a zero-dependency, zero-install browser page and a single Node file: paste or load manifest YAML, optionally name a target Kubernetes version, and get a report of every apiVersion + kind pair that release has removed or will remove. It has no cluster-scanning mode, no Helm-release introspection, and nothing to install: node cli.mjs check manifests.yaml.

Which one answers your question

What you are trying to doWhere to do it
Scan a live cluster's currently deployed resources for deprecated API versions, with cluster credentials. Pluto -- that mode is built in.
Check a Helm release already installed in a cluster, or a chart's rendered output as part of a release pipeline. Pluto -- it has dedicated Helm-aware scanning.
Get the broadest, most current coverage of in-progress and future-dated deprecations, maintained release over release by a dedicated team. Pluto -- this checker deliberately lists only removals with a fixed release number already documented.
Check one manifest file or a small repo with nothing to install, no binary to pin a version of, and nothing uploaded anywhere. This checker -- open the page, paste or load the file, done.
Add a CI gate that is a single committed file with no external binary dependency to fetch, cache, or update. This checker -- cli.mjs is the whole dependency.
Get a pass/fail against a specific target Kubernetes version without installing anything first. This checker -- --target-version 1.25, right in the browser or the CLI.

These compose rather than compete. A team already running Pluto in its release pipeline for live-cluster or Helm-release scanning loses nothing by also keeping this narrower, install-free checker around for a quick one-off check on a manifest someone is about to hand-edit. And a team that does not want an external binary in its toolchain just for this one question can reach for this instead, with nothing to install at all. Neither replaces the other; they trade breadth and cluster-awareness for zero install cost in opposite directions.

Common questions

Should I use this checker or Pluto?

They answer the same underlying question with different adoption costs. Pluto is a Go binary (install via Homebrew, a release download, or Docker) that can scan local files, a rendered Helm chart, or -- with cluster credentials -- a live cluster's currently deployed API versions, using its own maintained version database updated release by release. This tool is a zero-install browser page and a single dependency-free Node file: paste or load manifest YAML, optionally name a target Kubernetes version, get a report. If you want live-cluster scanning, Helm release introspection, or a tool already wired into a release pipeline, use Pluto. If you want a one-off check with nothing to install, or a CI gate that is a single committed file with no external dependency to pin and update, this is built for exactly that.

Does Pluto already cover what this checks?

For the specific removals this tool's table covers, yes -- both are checking the same underlying fact, sourced from the same place: Kubernetes' own Deprecated API Migration Guide. Pluto's database is broader and more actively maintained release over release, including in-progress deprecations this tool deliberately leaves out until a removal release is fixed. What differs is not the answer but what it costs to get one: Pluto needs installing and, for cluster or Helm-release scanning, credentials; this tool needs nothing but a browser tab or one Node file already sitting next to the manifest you want to check.

Why not just install Pluto instead of adding another tool?

Because they cost different amounts to adopt for a quick check. Pluto is a versioned binary with its own release cadence to track and, for live-cluster or Helm-release scanning, credentials to grant. This tool is one dependency-free JavaScript file: node cli.mjs check manifests.yaml, nothing to install, nothing to authenticate. If a team already runs Pluto in its release pipeline for the broader live-cluster and Helm-aware scanning it offers, this does not replace that -- it is a lighter, no-install option for a one-off check or a CI gate that should not depend on an external binary being present.

Is this page affiliated with Pluto or FairwindsOps?

No. This site is not affiliated with, endorsed by, or sponsored by Pluto or FairwindsOps, named here only to describe what this checker is and is not. What Pluto currently scans and how it is licensed are described on its own project page and repository -- check there for what it covers today.

Only point either tool at a manifest or cluster you own or are authorised to test. That rule is unchanged by which one you pick.

← Back to the checker