CLI Reference
Command summary
postgrestools
↴postgrestools version
↴postgrestools check
↴postgrestools start
↴postgrestools stop
↴postgrestools init
↴postgrestools lsp-proxy
↴postgrestools clean
↴
postgrestools
PostgresTools official CLI. Use it to check the health of your project or run it to check single files.
Usage: postgrestools
COMMAND ...
Available options:
-h
,--help
— Prints help information-V
,--version
— Prints version information
Available commands:
version
— Shows the version information and quit.check
— Runs everything to the requested files.start
— Starts the daemon server process.stop
— Stops the daemon server process.init
— Bootstraps a new project. Creates a configuration file with some defaults.lsp-proxy
— Acts as a server for the Language Server Protocol over stdin/stdout.clean
— Cleans the logs emitted by the daemon.
postgrestools version
Shows the version information and quit.
Usage: postgrestools
version
Global options applied to all commands
--colors
=<off|force>
— Set the formatting mode for markup: "off" prints everything as plain text, "force" forces the formatting of markup using ANSI even if the console output is determined to be incompatible--use-server
— Connect to a running instance of the daemon server.--skip-db
— Skip connecting to the database and only run checks that don't require a database connection.--verbose
— Print additional diagnostics, and some diagnostics show more information. Also, print out what files were processed and which ones were modified.--config-path
=PATH
— Set the file path to the configuration file, or the directory path to findpostgrestools.jsonc
. If used, it disables the default configuration file resolution.--max-diagnostics
=<none|<NUMBER>>
— Cap the amount of diagnostics displayed. Whennone
is provided, the limit is lifted. [default: 20]--skip-errors
— Skip over files containing syntax errors instead of emitting an error diagnostic.--no-errors-on-unmatched
— Silence errors that would be emitted in case no files were processed during the execution of the command.--error-on-warnings
— Tell Postgres Tools to exit with an error code if some diagnostics emit warnings.--reporter
=<json|json-pretty|github|junit|summary|gitlab>
— Allows to change how diagnostics and summary are reported.--log-level
=<none|debug|info|warn|error>
— The level of logging. In order, from the most verbose to the least verbose: debug, info, warn, error.
The value none
won't show any logging.
[default: none]
--log-kind
=<pretty|compact|json>
— How the log should look like. [default: pretty]--diagnostic-level
=<info|warn|error>
— The level of diagnostics to show. In order, from the lowest to the most important: info, warn, error. Passing--diagnostic-level=error
will cause Postgres Tools to print only diagnostics that contain only errors. [default: info]
Available options:
-h
,--help
— Prints help information
postgrestools check
Runs everything to the requested files.
Usage: postgrestools
check
[--staged
] [--changed
] [--since
=REF
] [PATH
]...
The configuration that is contained inside the configuration file.
--vcs-enabled
=<true|false>
— Whether we should integrate itself with the VCS client--vcs-client-kind
=<git>
— The kind of client.--vcs-use-ignore-file
=<true|false>
— Whether we should use the VCS ignore file. When [true], we will ignore the files specified in the ignore file.--vcs-root
=PATH
— The folder where we should check for VCS files. By default, we will use the same folder wherepostgrestools.jsonc
was found.
If we can't find the configuration, it will attempt to use the current working directory. If no current working directory can't be found, we won't use the VCS integration, and a diagnostic will be emitted
--vcs-default-branch
=BRANCH
— The main branch of the project--files-max-size
=NUMBER
— The maximum allowed size for source code files in bytes. Files above this limit will be ignored for performance reasons. Defaults to 1 MiB--migrations-dir
=ARG
— The directory where the migration files are stored--after
=ARG
— Ignore any migrations before this timestamp--host
=ARG
— The host of the database.--port
=ARG
— The port of the database.--username
=ARG
— The username to connect to the database.--password
=ARG
— The password to connect to the database.--database
=ARG
— The name of the database.--conn_timeout_secs
=ARG
— The connection timeout in seconds. [default: Some(10)]
Global options applied to all commands
--colors
=<off|force>
— Set the formatting mode for markup: "off" prints everything as plain text, "force" forces the formatting of markup using ANSI even if the console output is determined to be incompatible--use-server
— Connect to a running instance of the daemon server.--skip-db
— Skip connecting to the database and only run checks that don't require a database connection.--verbose
— Print additional diagnostics, and some diagnostics show more information. Also, print out what files were processed and which ones were modified.--config-path
=PATH
— Set the file path to the configuration file, or the directory path to findpostgrestools.jsonc
. If used, it disables the default configuration file resolution.--max-diagnostics
=<none|<NUMBER>>
— Cap the amount of diagnostics displayed. Whennone
is provided, the limit is lifted. [default: 20]--skip-errors
— Skip over files containing syntax errors instead of emitting an error diagnostic.--no-errors-on-unmatched
— Silence errors that would be emitted in case no files were processed during the execution of the command.--error-on-warnings
— Tell Postgres Tools to exit with an error code if some diagnostics emit warnings.--reporter
=<json|json-pretty|github|junit|summary|gitlab>
— Allows to change how diagnostics and summary are reported.--log-level
=<none|debug|info|warn|error>
— The level of logging. In order, from the most verbose to the least verbose: debug, info, warn, error.
The value none
won't show any logging.
[default: none]
--log-kind
=<pretty|compact|json>
— How the log should look like. [default: pretty]--diagnostic-level
=<info|warn|error>
— The level of diagnostics to show. In order, from the lowest to the most important: info, warn, error. Passing--diagnostic-level=error
will cause Postgres Tools to print only diagnostics that contain only errors. [default: info]
Available positional items:
PATH
— Single file, single path or list of paths
Available options:
--stdin-file-path
=PATH
— Use this option when you want to format code piped fromstdin
, and print the output tostdout
.
The file doesn't need to exist on disk, what matters is the extension of the file. Based on the extension, we know how to check the code.
Example: echo 'let a;' | pgt_cli check --stdin-file-path=test.sql
--staged
— When set to true, only the files that have been staged (the ones prepared to be committed) will be linted. This option should be used when working locally.--changed
— When set to true, only the files that have been changed compared to yourdefaultBranch
configuration will be linted. This option should be used in CI environments.--since
=REF
— Use this to specify the base branch to compare against when you're using the --changed flag and thedefaultBranch
is not set in yourpostgrestools.jsonc
-h
,--help
— Prints help information
postgrestools start
Starts the daemon server process.
Usage: postgrestools
start
[--config-path
=PATH
]
Available options:
--log-prefix-name
=STRING
— Allows to change the prefix applied to the file name of the logs. Uses environment variablePGT_LOG_PREFIX_NAME
[default: server.log]--log-path
=PATH
— Allows to change the folder where logs are stored. Uses environment variablePGT_LOG_PATH
--config-path
=PATH
— Allows to set a custom file path to the configuration file, or a custom directory path to findpostgrestools.jsonc
Uses environment variablePGT_LOG_PREFIX_NAME
-h
,--help
— Prints help information
postgrestools stop
Stops the daemon server process.
Usage: postgrestools
stop
Available options:
-h
,--help
— Prints help information
postgrestools init
Bootstraps a new project. Creates a configuration file with some defaults.
Usage: postgrestools
init
Available options:
-h
,--help
— Prints help information
postgrestools lsp-proxy
Acts as a server for the Language Server Protocol over stdin/stdout.
Usage: postgrestools
lsp-proxy
[--config-path
=PATH
]
Available options:
--log-prefix-name
=STRING
— Allows to change the prefix applied to the file name of the logs. Uses environment variablePGT_LOG_PREFIX_NAME
[default: server.log]--log-path
=PATH
— Allows to change the folder where logs are stored. Uses environment variablePGT_LOG_PATH
--config-path
=PATH
— Allows to set a custom file path to the configuration file, or a custom directory path to findpostgrestools.jsonc
Uses environment variablePGT_CONFIG_PATH
-h
,--help
— Prints help information
postgrestools clean
Cleans the logs emitted by the daemon.
Usage: postgrestools
clean
Available options:
-h
,--help
— Prints help information