id = "fastly"
name = "Fastly CLI"
homepage = "https://www.fastly.com/documentation/reference/cli/"
description = "Build, deploy and configure Fastly services from your terminal."
icon = "SimpleIcons:fastly"
executables = ["fastly"]
[dotfiles]
paths = [
"[appData]/fastly/config.toml",
"~/.fastly/config.toml",
]
exclude = []
secret = []
side_effect = false
[[dotfiles.secret_paths]]
file = [
"[appData]/fastly/config.toml",
"~/.fastly/config.toml",
]
match = { key_path = [
"auth.tokens.*.token",
"auth.tokens.*.access_token",
"auth.tokens.*.refresh_token",
"profile.*.token",
"profile.*.access_token",
"profile.*.refresh_token",
] }
[commands]
format = 1
label = "Fastly"
description = "Purge cache, build and deploy Compute packages. Everything else is left out."
quality = "ai-draft"
base = "fig:fastly"
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/fastly.ts"
license = "MIT"
[[commands.subcommand]]
path = ["purge"]
label = "Purge cache"
description = "Pick exactly one of URL, key or all."
[[commands.subcommand.source]]
id = "fig"
kind = "completion"
url = "https://github.com/withfig/autocomplete/blob/master/src/fastly.ts"
license = "MIT"
[[commands.subcommand.field]]
id = "service_id"
label = "Service ID"
type = "string"
option = ["--service-id"]
sources = ["fig"]
[[commands.subcommand.field]]
id = "url"
label = "URL"
type = "string"
option = ["--url"]
sources = ["fig"]
[[commands.subcommand.field]]
id = "key"
label = "Surrogate key"
type = "string"
option = ["--key"]
sources = ["fig"]
[[commands.subcommand.field]]
id = "all"
label = "Purge everything"
type = "boolean"
option = ["--all"]
effect = "delete"
sources = ["fig"]
[[commands.subcommand.field]]
id = "soft"
label = "Soft purge"
type = "boolean"
option = ["--soft"]
sources = ["fig"]
[[commands.subcommand.task]]
id = "url"
label = "Purge a URL"
fields = ["service_id", "url", "soft"]
required = ["url"]
[[commands.subcommand.task]]
id = "key"
label = "Purge a key"
fields = ["service_id", "key", "soft"]
required = ["key"]
[[commands.subcommand.group]]
id = "basic"
label = "Basic"
fields = ["service_id", "url", "key", "all"]
[[commands.subcommand.group]]
id = "advanced"
label = "Advanced"
fields = ["soft"]
[[commands.subcommand]]
path = ["compute", "build"]
label = "Build Compute package"
[[commands.subcommand.source]]
id = "fig"
kind = "completion"
url = "https://github.com/withfig/autocomplete/blob/master/src/fastly.ts"
license = "MIT"
[[commands.subcommand.field]]
id = "name"
label = "Package name"
type = "string"
option = ["--name"]
sources = ["fig"]
[[commands.subcommand.field]]
id = "language"
label = "Language"
type = "string"
option = ["--language"]
sources = ["fig"]
[[commands.subcommand.field]]
id = "include_source"
label = "Include source"
type = "boolean"
option = ["--include-source"]
sources = ["fig"]
[[commands.subcommand.field]]
id = "timeout"
label = "Timeout (s)"
type = "integer"
option = ["--timeout"]
sources = ["fig"]
[[commands.subcommand.field]]
id = "skip_verification"
label = "Skip verification"
type = "boolean"
option = ["--skip-verification"]
sources = ["fig"]
[[commands.subcommand.task]]
id = "build"
label = "Build"
fields = ["name", "language"]
[[commands.subcommand.group]]
id = "basic"
label = "Basic"
fields = ["name", "language", "include_source"]
[[commands.subcommand.group]]
id = "advanced"
label = "Advanced"
fields = ["timeout", "skip_verification"]
[[commands.subcommand]]
path = ["compute", "deploy"]
label = "Deploy Compute package"
[[commands.subcommand.source]]
id = "fig"
kind = "completion"
url = "https://github.com/withfig/autocomplete/blob/master/src/fastly.ts"
license = "MIT"
[[commands.subcommand.field]]
id = "service_id"
label = "Service ID"
type = "string"
option = ["--service-id"]
sources = ["fig"]
[[commands.subcommand.field]]
id = "service_name"
label = "Service name"
type = "string"
option = ["--service-name"]
sources = ["fig"]
[[commands.subcommand.field]]
id = "package"
label = "Package"
type = "path"
option = ["--package"]
path = { kind = "file", role = "input" }
sources = ["fig"]
[[commands.subcommand.field]]
id = "comment"
label = "Comment"
type = "string"
option = ["--comment"]
sources = ["fig"]
[[commands.subcommand.field]]
id = "domain"
label = "Domain"
type = "string"
option = ["--domain"]
sources = ["fig"]
[[commands.subcommand.field]]
id = "version"
label = "Version"
type = "string"
option = ["--version"]
sources = ["fig"]
[[commands.subcommand.task]]
id = "deploy"
label = "Deploy"
fields = ["service_id", "package", "comment"]
[[commands.subcommand.group]]
id = "basic"
label = "Basic"
fields = ["service_id", "service_name", "package", "comment"]
[[commands.subcommand.group]]
id = "advanced"
label = "Advanced"
fields = ["version", "domain"]