manifest-analyzer

command
v0.39.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 22, 2026 License: Apache-2.0 Imports: 12 Imported by: 0

Documentation

Overview

manifest-analyzer is a standalone, read-only CLI that analyzes a folder of Kubernetes manifests. It is the proof-of-concept consumer of the internal/manifestanalyzer library described in docs/spec/current-manifest-support-review.md. It writes nothing; it only reports what it finds.

Usage:

manifest-analyzer [flags] <dir>
manifest-analyzer --mode scan-repo [flags] <repo-root>
manifest-analyzer --mode discovery [flags]

--mode   analyze|scan-folder|scan-repo|discovery  what to produce (default analyze)
                                 analyze:     the structural report (files, GVK inventory)
                                 scan-folder: may THIS folder become a GitTarget? The
                                              adoption dry-run (acceptance + plan), the
                                              shared scan pipeline with no flush
                                 scan-repo:   which folders under this repo root could
                                              become GitTargets? Classifies every
                                              candidate. Report-only: --policy is not
                                              applied (the repo-level refuse gate is
                                              deferred)
                                 discovery:   raw Kubernetes API discovery dump
--format text|json     output format (default text)
--policy report|refuse
                       report: always exit 0 (analysis only)
                       refuse: exit 1 when the folder would be refused
                               (analyze: any acceptance issue; scan-folder: not accepted)

The tool is structure-only and needs no cluster: it reports duplicate identities, KRM vs. non-KRM classification, multi-document files, and the inventory of every GVK found. scan-folder additionally applies the non-API KRM allowlist (kustomization.yaml is retained, not flagged), runs the full adoption acceptance gate, and renders the plan — which is empty here because no cluster state is available to compare against.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL