id = "astro-cli" name = "Astro CLI" homepage = "https://www.astronomer.io/docs/astro/cli/overview" description = "The Astro CLI is a command-line interface for data orchestration that gets you started with Apache Airflow quickly." # Astronomer's mark, from its site's SVG favicon. icon = "https://www.astronomer.io/favicon.svg" # The binary is `astro`. The Astro web framework ships a binary of the same # name; it keeps no user-level config, so only Astronomer's tool is described # here. executables = ["astro"] [dotfiles] # https://www.astronomer.io/docs/astro/cli/configure-cli — "Your global Astro # CLI configuration is saved in a central location on your machine", # ~/.astro/config.yaml. astro-cli config/config.go: ConfigDir = ".astro", # HomeConfigPath = /.astro. The .astro/config.yaml inside a project # directory overrides it and is not a dotfile. paths = ["~/.astro/config.yaml"] exclude = [] # The tokens live inside config.yaml, next to settings worth keeping, so the # file itself is not a whole-file secret. secret = [] # Read on every command; the CLI is not resident. side_effect = false # astro-cli config/context.go: each context carries `token` and # `refreshtoken` from `astro login`, and config.go registers # "cloud.api.token" for a non-interactive API token. [[dotfiles.secret_paths]] file = "~/.astro/config.yaml" match = { key_path = ["contexts.*.token", "contexts.*.refreshtoken", "cloud.api.token"] } [commands] format = 1 label = "Global project options" description = "Options shared by every astro command (project root, config, site, base, log level). Use the subcommand tabs for dev and build; add and check are left out." quality = "ai-draft" base = "fig:astro" 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/astro.ts" license = "MIT" [[commands.field]] id = "root" label = "Project root" description = "Folder containing the Astro project." type = "path" option = ["--root"] path = { kind = "directory", role = "input" } sources = ["fig"] [[commands.field]] id = "config" label = "Config file" type = "path" option = ["--config"] path = { kind = "file", role = "input" } sources = ["fig"] [[commands.field]] id = "site" label = "Site URL" type = "url" option = ["--site"] sources = ["fig"] [[commands.field]] id = "base" label = "Base path" description = "Base pathname the site is served from." type = "string" option = ["--base"] sources = ["fig"] [[commands.field]] id = "verbose" label = "Verbose logging" type = "boolean" option = ["--verbose"] sources = ["fig"] [[commands.field]] id = "silent" label = "Silent" description = "Disable all logging." type = "boolean" option = ["--silent"] sources = ["fig"] [[commands.task]] id = "verbose" label = "Verbose run" fields = ["root", "verbose"] required = [] set = { verbose = [true] } [[commands.group]] id = "basic" label = "Basic" fields = ["root", "config"] [[commands.group]] id = "advanced" label = "Advanced" fields = ["site", "base", "verbose", "silent"] [[commands.subcommand]] path = ["dev"] label = "Start dev server" description = "Run the development server. Press Ctrl+C to stop." parser = { end_of_options = "--", interleave = "permute", long_equals = true, short_attached = true, short_bundles = false } [[commands.subcommand.source]] id = "fig" kind = "completion" url = "https://github.com/withfig/autocomplete/blob/master/src/astro.ts" license = "MIT" [[commands.subcommand.field]] id = "port" label = "Port" description = "Port to listen on." type = "integer" option = ["--port"] sources = ["fig"] [[commands.subcommand.field]] id = "open" label = "Open browser" type = "boolean" option = ["--open"] sources = ["fig"] [[commands.subcommand.task]] id = "dev-open" label = "Dev server and open browser" fields = ["port", "open"] required = [] set = { open = [true] } [[commands.subcommand.group]] id = "basic" label = "Basic" fields = ["port", "open"] [[commands.subcommand]] path = ["build"] label = "Build site" description = "Build the project and write it to disk." parser = { end_of_options = "--", interleave = "permute", long_equals = true, short_attached = true, short_bundles = false } [[commands.subcommand.source]] id = "fig" kind = "completion" url = "https://github.com/withfig/autocomplete/blob/master/src/astro.ts" license = "MIT" [[commands.subcommand.field]] id = "drafts" label = "Include drafts" description = "Include Markdown draft pages in the build." type = "boolean" option = ["--drafts"] sources = ["fig"] [[commands.subcommand.task]] id = "build" label = "Production build" fields = ["drafts"] required = [] [[commands.subcommand.group]] id = "basic" label = "Basic" fields = ["drafts"] [[commands.subcommand]] path = ["preview"] label = "Preview build" description = "Preview the built site locally." parser = { end_of_options = "--", interleave = "permute", long_equals = true, short_attached = true, short_bundles = false } [[commands.subcommand.source]] id = "fig" kind = "completion" url = "https://github.com/withfig/autocomplete/blob/master/src/astro.ts" license = "MIT" [[commands.subcommand.field]] id = "open" label = "Open browser" type = "boolean" option = ["--open"] sources = ["fig"] [[commands.subcommand.task]] id = "preview" label = "Preview" fields = ["open"] required = [] [[commands.subcommand.group]] id = "basic" label = "Basic" fields = ["open"]