id = "kamel"
name = "Apache Camel K CLI"
homepage = "https://camel.apache.org/camel-k/"
description = "The Camel K command-line utility."
executables = ["kamel"]
platforms = ["macos", "linux"]
[dotfiles]
paths = ["~/.kamel/kamel-config.yaml"]
exclude = []
secret = []
[commands]
format = 1
label = "Camel K"
description = "Build and run an integration on Kubernetes with kamel run. Traits, volumes, Git sources, build properties and other commands are left out."
quality = "ai-draft"
parser = { end_of_options = "--", interleave = "permute", long_equals = true, short_attached = true, short_bundles = true }
[[commands.subcommand]]
path = ["run"]
label = "Run an integration"
description = "Build and run the integration file on the current Kubernetes cluster."
[[commands.subcommand.source]]
id = "src"
kind = "help"
url = "https://github.com/apache/camel-k/blob/main/pkg/cmd/run.go"
revision = "main 2026-10-27"
evidence = """
Use: "run [file to run]",
Short: "Build and run the Integration on Kubernetes.",
cmd.Flags().String("name", "", "The integration name")
cmd.Flags().StringArrayP("dependency", "d", nil, "A dependency that should be included, e.g., \"camel:mail\" for a Camel component, "+
cmd.Flags().BoolP("wait", "w", false, "Wait for the integration to be running or built")
cmd.Flags().StringArrayP("property", "p", nil, "Add a runtime property or a local properties file from a path "+
cmd.Flags().Bool("logs", false, "Print integration logs")
cmd.Flags().StringArrayP("env", "e", nil, "Set an environment variable in the integration container. E.g \"-e MY_VAR=my-value\"")
cmd.Flags().StringP("output", "o", "", "Output format. One of: json|yaml")
cmd.Flags().Bool("save", false, "Save the run parameters into the default kamel configuration file (kamel-config.yaml)")
Flag spellings as cobra renders them: --name, -d, --dependency, -w, --wait, -p, --property, --logs, -e, --env, -o, --output, --save
"""
[[commands.subcommand.field]]
id = "file"
label = "Integration file"
type = "path"
position = 0
path = { kind = "file", role = "input", must_exist = true }
sources = ["src"]
[[commands.subcommand.field]]
id = "name"
label = "Integration name"
type = "string"
option = ["--name"]
sources = ["src"]
[[commands.subcommand.field]]
id = "dependency"
label = "Dependency"
description = "For example camel:mail or mvn:org.my:app:1.0."
type = "string"
option = ["--dependency", "-d"]
multiple = true
sources = ["src"]
[[commands.subcommand.field]]
id = "property"
label = "Runtime property"
description = "my-key=my-value or file:/path/to/my-conf.properties."
type = "string"
option = ["--property", "-p"]
multiple = true
sources = ["src"]
[[commands.subcommand.field]]
id = "env"
label = "Environment variable"
description = "MY_VAR=my-value."
type = "string"
option = ["--env", "-e"]
multiple = true
sources = ["src"]
[[commands.subcommand.field]]
id = "wait"
label = "Wait until running or built"
type = "boolean"
option = ["--wait", "-w"]
sources = ["src"]
[[commands.subcommand.field]]
id = "logs"
label = "Print integration logs"
type = "boolean"
option = ["--logs"]
sources = ["src"]
[[commands.subcommand.field]]
id = "output"
label = "Output format"
type = "enum"
option = ["--output", "-o"]
choices = [{ value = "json", label = "JSON" }, { value = "yaml", label = "YAML" }]
sources = ["src"]
[[commands.subcommand.field]]
id = "save"
label = "Save parameters to kamel-config.yaml"
type = "boolean"
option = ["--save"]
effect = "overwrite"
sources = ["src"]
[[commands.subcommand.task]]
id = "run-follow"
label = "Run and follow logs"
set = { logs = [true] }
fields = ["file", "name", "dependency", "property", "env", "logs"]
required = ["file"]
[[commands.subcommand.task]]
id = "run-wait"
label = "Run and wait"
set = { wait = [true] }
fields = ["file", "name", "dependency", "property", "env", "wait"]
required = ["file"]
[[commands.subcommand.group]]
id = "basic"
label = "Basic"
fields = ["file", "name", "dependency", "property", "env", "wait", "logs"]
[[commands.subcommand.group]]
id = "advanced"
label = "Advanced"
fields = ["output", "save"]