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]
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"]