id = "chart-testing" name = "Chart Testing" homepage = "https://github.com/helm/chart-testing" description = "A CLI tool for linting and testing Helm charts." executables = ["ct"] platforms = ["macos", "linux"] [dotfiles] # chart-testing's Go source adds ~/.ct to Viper's config search paths and uses # the config name ct, so the documented YAML spelling is ~/.ct/ct.yaml. # https://github.com/helm/chart-testing/blob/main/pkg/config/config.go paths = ["~/.ct/ct.yaml"] exclude = [] secret = [] [commands] format = 1 label = "chart-testing" description = "Lint Helm charts with ct lint. Install and list-changed subcommands, and the extra-args options, are left out." quality = "ai-draft" parser = { end_of_options = "--", interleave = "permute", long_equals = true, short_attached = false, short_bundles = false } [[commands.subcommand]] path = ["lint"] label = "Lint charts" [[commands.subcommand.source]] id = "help" kind = "help" url = "https://github.com/helm/chart-testing/blob/main/doc/ct_lint.md" revision = "2026-10-27" evidence = """ ct lint [flags] --all Process all charts except those explicitly excluded. --chart-dirs strings Directories containing Helm charts. May be specified multiple times --charts strings Specific charts to test. Disables changed charts detection and --config string Config file --debug Print CLI calls of external tools to stdout (caution: setting this may --target-branch string The name of the target branch used to identify changed charts (default "main") --since string The Git reference used to identify changed charts (default "HEAD") --skip-helm-dependencies Skip running 'helm dependency build' before linting """ [[commands.subcommand.field]] id = "all" label = "All charts" type = "boolean" option = ["--all"] sources = ["help"] [[commands.subcommand.field]] id = "charts" label = "Specific charts" type = "string" option = ["--charts"] multiple = true sources = ["help"] [[commands.subcommand.field]] id = "chart_dirs" label = "Chart directories" type = "path" path = { kind = "directory", role = "input" } option = ["--chart-dirs"] multiple = true sources = ["help"] [[commands.subcommand.field]] id = "config" label = "Config file" type = "path" path = { kind = "file", role = "input" } option = ["--config"] sources = ["help"] [[commands.subcommand.field]] id = "target_branch" label = "Target branch" type = "string" option = ["--target-branch"] sources = ["help"] [[commands.subcommand.field]] id = "since" label = "Git reference for changes" type = "string" option = ["--since"] sources = ["help"] [[commands.subcommand.field]] id = "skip_deps" label = "Skip dependency build" type = "boolean" option = ["--skip-helm-dependencies"] sources = ["help"] [[commands.subcommand.field]] id = "debug" label = "Print external CLI calls" type = "boolean" option = ["--debug"] sources = ["help"] [[commands.subcommand.task]] id = "lint_changed" label = "Lint changed charts" fields = ["chart_dirs", "target_branch"] required = [] [[commands.subcommand.task]] id = "lint_all" label = "Lint all charts" fields = ["all", "chart_dirs"] required = ["all"] set = { all = [true] } [[commands.subcommand.group]] id = "basic" label = "Basic" fields = ["all", "charts", "chart_dirs", "target_branch", "since"] [[commands.subcommand.group]] id = "advanced" label = "Advanced" fields = ["config", "skip_deps", "debug"]