id = "dbt"
name = "dbt Core"
homepage = "https://www.getdbt.com"
description = "dbt enables data analysts and engineers to transform their data using the same practices that software engineers use to build applications."
icon = "theSVG:dbt"
executables = ["dbt"]
[dotfiles]
paths = ["~/.dbt/profiles.yml"]
exclude = ["~/.dbt/.user.yml"]
secret = []
side_effect = false
[[dotfiles.secret_paths]]
file = "~/.dbt/profiles.yml"
match = { key_path = ["*.outputs.*.password", "*.outputs.*.private_key", "*.outputs.*.private_key_passphrase", "*.outputs.*.token"] }
[[dotfiles.machine_lines]]
file = "~/.dbt/profiles.yml"
match = { key_path = ["*.outputs.*.keyfile"] }
scope = "backup"
[commands]
format = 1
label = "dbt commands"
description = "Run, test and build a dbt project. Other subcommands (init, docs, seed, snapshot...) are left out."
quality = "ai-draft"
base = "fig:dbt"
parser = { end_of_options = "--", interleave = "permute", long_equals = true, short_attached = true, short_bundles = false }
[[commands.source]]
id = "fig"
kind = "completion"
url = "https://github.com/withfig/autocomplete/blob/master/src/dbt.ts"
license = "MIT"
[[commands.subcommand]]
path = ["run"]
label = "Run models"
description = "Runs the models in the project."
[[commands.subcommand.source]]
id = "fig"
kind = "completion"
url = "https://github.com/withfig/autocomplete/blob/master/src/dbt.ts"
license = "MIT"
[[commands.subcommand.field]]
id = "profiles_dir"
label = "Profiles directory"
type = "path"
option = ["--profiles-dir"]
path = { kind = "directory", role = "input" }
sources = ["fig"]
[[commands.subcommand.field]]
id = "profile"
label = "Profile"
type = "string"
option = ["--profile"]
sources = ["fig"]
[[commands.subcommand.field]]
id = "target"
label = "Target"
type = "string"
option = ["--target"]
suggestions = [{ value = "dev", label = "dev" }, { value = "prod", label = "prod" }]
sources = ["fig"]
[[commands.subcommand.field]]
id = "select"
label = "Select"
description = "Selection expression, e.g. tag:nightly or my_model+."
type = "string"
option = ["--select", "-s"]
sources = ["fig"]
[[commands.subcommand.field]]
id = "exclude"
label = "Exclude"
type = "string"
option = ["--exclude"]
sources = ["fig"]
[[commands.subcommand.field]]
id = "threads"
label = "Threads"
type = "integer"
option = ["--threads"]
sources = ["fig"]
[[commands.subcommand.field]]
id = "vars"
label = "Variables"
description = "YAML string overriding dbt_project.yml variables."
type = "string"
option = ["--vars"]
sources = ["fig"]
[[commands.subcommand.field]]
id = "fail_fast"
label = "Stop at first failure"
type = "boolean"
option = ["--fail-fast", "-x"]
sources = ["fig"]
[[commands.subcommand.field]]
id = "full_refresh"
label = "Full refresh incrementals"
type = "boolean"
option = ["--full-refresh"]
effect = "overwrite"
sources = ["fig"]
[[commands.subcommand.task]]
id = "run"
label = "Run selected models"
fields = ["select", "exclude", "target"]
required = []
[[commands.subcommand.task]]
id = "ff"
label = "Fail fast"
set = { fail_fast = [true] }
fields = ["select", "fail_fast"]
required = []
[[commands.subcommand.group]]
id = "basic"
label = "Basic"
fields = ["target", "select", "exclude", "fail_fast", "full_refresh"]
[[commands.subcommand.group]]
id = "advanced"
label = "Advanced"
fields = ["profiles_dir", "profile", "vars", "threads"]
[[commands.subcommand]]
path = ["test"]
label = "Run tests"
description = "Executes tests defined in the project."
[[commands.subcommand.source]]
id = "fig"
kind = "completion"
url = "https://github.com/withfig/autocomplete/blob/master/src/dbt.ts"
license = "MIT"
[[commands.subcommand.field]]
id = "profiles_dir"
label = "Profiles directory"
type = "path"
option = ["--profiles-dir"]
path = { kind = "directory", role = "input" }
sources = ["fig"]
[[commands.subcommand.field]]
id = "profile"
label = "Profile"
type = "string"
option = ["--profile"]
sources = ["fig"]
[[commands.subcommand.field]]
id = "select"
label = "Select"
description = "Selection expression, e.g. tag:nightly or my_model+."
type = "string"
option = ["--select", "-s"]
sources = ["fig"]
[[commands.subcommand.field]]
id = "exclude"
label = "Exclude"
type = "string"
option = ["--exclude"]
sources = ["fig"]
[[commands.subcommand.field]]
id = "fail_fast"
label = "Stop at first failure"
type = "boolean"
option = ["--fail-fast", "-x"]
sources = ["fig"]
[[commands.subcommand.task]]
id = "test"
label = "Test selected models"
fields = ["select", "exclude"]
required = []
[[commands.subcommand.task]]
id = "ff"
label = "Fail fast"
set = { fail_fast = [true] }
fields = ["select", "fail_fast"]
required = []
[[commands.subcommand.group]]
id = "basic"
label = "Basic"
fields = ["select", "exclude", "fail_fast"]
[[commands.subcommand.group]]
id = "advanced"
label = "Advanced"
fields = ["profiles_dir", "profile"]
[[commands.subcommand]]
path = ["build"]
label = "Build everything"
description = "Runs models, tests, snapshots and seeds in DAG order."
[[commands.subcommand.source]]
id = "fig"
kind = "completion"
url = "https://github.com/withfig/autocomplete/blob/master/src/dbt.ts"
license = "MIT"
[[commands.subcommand.field]]
id = "profiles_dir"
label = "Profiles directory"
type = "path"
option = ["--profiles-dir"]
path = { kind = "directory", role = "input" }
sources = ["fig"]
[[commands.subcommand.field]]
id = "profile"
label = "Profile"
type = "string"
option = ["--profile"]
sources = ["fig"]
[[commands.subcommand.field]]
id = "target"
label = "Target"
type = "string"
option = ["--target"]
suggestions = [{ value = "dev", label = "dev" }, { value = "prod", label = "prod" }]
sources = ["fig"]
[[commands.subcommand.field]]
id = "select"
label = "Select"
description = "Selection expression, e.g. tag:nightly or my_model+."
type = "string"
option = ["--select", "-s"]
sources = ["fig"]
[[commands.subcommand.field]]
id = "exclude"
label = "Exclude"
type = "string"
option = ["--exclude"]
sources = ["fig"]
[[commands.subcommand.field]]
id = "threads"
label = "Threads"
type = "integer"
option = ["--threads"]
sources = ["fig"]
[[commands.subcommand.field]]
id = "vars"
label = "Variables"
description = "YAML string overriding dbt_project.yml variables."
type = "string"
option = ["--vars"]
sources = ["fig"]
[[commands.subcommand.field]]
id = "fail_fast"
label = "Stop at first failure"
type = "boolean"
option = ["--fail-fast", "-x"]
sources = ["fig"]
[[commands.subcommand.field]]
id = "full_refresh"
label = "Full refresh incrementals"
type = "boolean"
option = ["--full-refresh"]
effect = "overwrite"
sources = ["fig"]
[[commands.subcommand.task]]
id = "build"
label = "Build selected nodes"
fields = ["select", "exclude", "target"]
required = []
[[commands.subcommand.task]]
id = "ff"
label = "Fail fast"
set = { fail_fast = [true] }
fields = ["select", "fail_fast"]
required = []
[[commands.subcommand.group]]
id = "basic"
label = "Basic"
fields = ["target", "select", "exclude", "fail_fast", "full_refresh"]
[[commands.subcommand.group]]
id = "advanced"
label = "Advanced"
fields = ["profiles_dir", "profile", "vars", "threads"]