id = "meroxa" name = "Meroxa CLI" homepage = "https://github.com/meroxa/cli" description = "Using the Meroxa CLI, you can build data infrastructure in minutes not months." # Meroxa's own mark, from its GitHub organisation avatar. icon = "https://github.com/meroxa.png?size=200" executables = ["meroxa"] [dotfiles] # cmd/meroxa/global/config.go, readConfig(): with no --cli-config-file the CLI # takes os.UserConfigDir(), joins "meroxa" onto it, and reads the config named # `envName` = "config" of `envType` = "env" — so /meroxa/config.env. # Go's os.UserConfigDir is $XDG_CONFIG_HOME (or ~/.config) on Linux, # ~/Library/Application Support on macOS and %AppData% on Windows — one # location under three names, which is [appData]. # # When that file is absent, setupCompatibility() falls back to the old location: # AddConfigPath(homeDir) with SetConfigName("meroxa") and SetConfigType("env"), # i.e. ~/meroxa.env, and migrates it forward. Both shapes are listed so a # machine still on the old one is covered. paths = [ "[appData]/meroxa/config.env", "~/meroxa.env", ] exclude = [] # The file is not a whole-file secret: the API URL, the OAuth callback settings # and the notification preferences beside the tokens are ordinary config. secret = [] # A dotenv file — KEY=value, one per line, uppercased by viper's encoder — so # the credentials are matched by prefix rather than by key path. # # global.go names them: AccessTokenEnv = "ACCESS_TOKEN" and RefreshTokenEnv = # "REFRESH_TOKEN" are what `meroxa login` writes and `meroxa logout` clears, # and CasedPublishKeyEnv = "CASED_PUBLISH_KEY" is the audit-log publish key. # The pre-migration ~/meroxa.env is named beside the current file, or the # tokens sync in the clear from a machine that never ran the migration. [[dotfiles.secret_paths]] file = [ "[appData]/meroxa/config.env", "~/meroxa.env", ] match = { prefix = ["ACCESS_TOKEN", "REFRESH_TOKEN", "CASED_PUBLISH_KEY"] } [commands] format = 1 label = "Meroxa CLI" description = "Global Meroxa options. Use the Turbine app list job for applications; other subcommands are left out." quality = "ai-draft" base = "fig:meroxa" parser = { end_of_options = "--", interleave = "permute", long_equals = true, short_attached = false, short_bundles = false } [[commands.source]] id = "fig" kind = "completion" url = "https://github.com/withfig/autocomplete/blob/master/src/meroxa.ts" license = "MIT" [[commands.field]] id = "json" label = "JSON output" type = "boolean" option = ["--json"] sources = ["fig"] [[commands.field]] id = "debug" label = "Debug information" type = "boolean" option = ["--debug"] sources = ["fig"] [[commands.field]] id = "timeout" label = "Client timeout (seconds)" type = "integer" option = ["--timeout"] sources = ["fig"] [[commands.group]] id = "basic" label = "Basic" fields = ["json", "debug", "timeout"] [[commands.subcommand]] path = ["app", "ls"] label = "List Turbine applications" [[commands.subcommand.source]] id = "fig" kind = "completion" url = "https://github.com/withfig/autocomplete/blob/master/src/meroxa.ts" license = "MIT" [[commands.subcommand.field]] id = "no_headers" label = "No table headers" type = "boolean" option = ["--no-headers"] sources = ["fig"] [[commands.subcommand.task]] id = "list" label = "List applications" fields = ["no_headers"] [[commands.subcommand.group]] id = "basic" label = "Basic" fields = ["no_headers"]