id = "testkube"
name = "Testkube CLI"
homepage = "https://github.com/kubeshop/testkube"
description = "A command-line interface for managing Testkube tests, workflows, and executions."
executables = ["testkube", "kubectl-testkube"]
[dotfiles]
paths = []
secret = ["~/.testkube/config.json"]
[commands]
format = 1
label = "Testkube"
description = "Run a Testkube test workflow. Other subcommands and rarely used flags are not covered."
quality = "ai-draft"
parser = { end_of_options = "--", interleave = "permute", long_equals = true, short_attached = false, short_bundles = false }
[[commands.subcommand]]
path = ["run", "testworkflow"]
label = "Run a test workflow"
description = "Start a test workflow execution. Parallel step, service and runner target flags are left out."
[[commands.subcommand.source]]
id = "cli-ref"
kind = "manual"
url = "https://docs.testkube.io/legacy-cli/testkube-run-testworkflow"
revision = "2026-10-27"
evidence = """
testkube run testworkflow [name] [flags]
--config stringToString configuration variables in a form of name1=val1 passed to executor
--disable-webhooks disable webhooks for this execution
-d, --download-artifacts download artifacts automatically
--download-dir string download dir (default "artifacts")
-n, --name string execution name, if empty will be autogenerated
--tag stringToString execution tag adds a tag to execution in form of name1=val1
-f, --watch watch for changes after start
"""
[[commands.subcommand.field]]
id = "workflow"
label = "Workflow name"
type = "string"
position = 0
sources = ["cli-ref"]
[[commands.subcommand.field]]
id = "name"
label = "Execution name"
description = "Empty means autogenerated."
type = "string"
option = ["--name", "-n"]
sources = ["cli-ref"]
[[commands.subcommand.field]]
id = "watch"
label = "Watch execution"
type = "boolean"
option = ["--watch", "-f"]
sources = ["cli-ref"]
[[commands.subcommand.field]]
id = "config"
label = "Config variable"
description = "name=value, repeatable."
type = "string"
option = ["--config"]
multiple = true
sources = ["cli-ref"]
[[commands.subcommand.field]]
id = "tag"
label = "Execution tag"
description = "name=value, repeatable."
type = "string"
option = ["--tag"]
multiple = true
sources = ["cli-ref"]
[[commands.subcommand.field]]
id = "download_artifacts"
label = "Download artifacts"
type = "boolean"
option = ["--download-artifacts", "-d"]
sources = ["cli-ref"]
[[commands.subcommand.field]]
id = "download_dir"
label = "Download directory"
type = "path"
path = { kind = "directory", role = "output" }
option = ["--download-dir"]
sources = ["cli-ref"]
[[commands.subcommand.field]]
id = "disable_webhooks"
label = "Disable webhooks"
type = "boolean"
option = ["--disable-webhooks"]
sources = ["cli-ref"]
[[commands.subcommand.task]]
id = "run_watch"
label = "Run and watch"
fields = ["workflow", "name", "watch", "config"]
required = ["workflow"]
set = { watch = [true] }
[[commands.subcommand.task]]
id = "run_download"
label = "Run and download artifacts"
fields = ["workflow", "watch", "download_artifacts", "download_dir"]
required = ["workflow"]
set = { watch = [true], download_artifacts = [true] }
[[commands.subcommand.group]]
id = "basic"
label = "Basic"
fields = ["workflow", "name", "watch", "config", "tag"]
[[commands.subcommand.group]]
id = "advanced"
label = "Advanced"
fields = ["download_artifacts", "download_dir", "disable_webhooks"]