-
v0.12.023daa101 · ·
pglift v0.12.0 Add 'instance logs' command and API to access PostgreSQL instance logs Add dedicated role "replrole" for replication Add 'instance promote' command Encrypt passwords using libpq Show commented parameters in 'instance config show [PARAM]' Prompt to restart the server when altering an instance Configure Postgres logging_collector to 'stderr' Add a --quiet flag to main CLI Add a hidden --settings option Add an (internal) 'site-settings' command Forbid many meaningless operations on standby instances Fix 'instance config {remove,set}' commands to preserve existing parameters Forbid to upgrade an instance to same name and same version Reduce the default value of effective_cache_size Do not try to start postgres_exporter if it is not enabled for an instance Display information messages in 'instance restore' and 'instance backup' commands Lookup for site settings in /etc/pglift or $XDG_CONFIG_DIR/pglift Document postgresql authentication methods Document standby setup Document how to override systemd units
-
v0.11.0690bd41b · ·
pglift v0.11.0 Document database backup/restore Document how to use psql and libpq environment Add a how-to section about database maintenance in documentation Move installation documentation into the tutorials section Use dedicated role for backup Allow to create SUPERUSER roles Handle instances without postgres_exporter Use psycopg 3 Catch psycopg OperationalError in CLI
-
v0.8.09306c734 · ·
pglift v0.8.0 Implement instance upgrade with pg_upgrade Make super-user role password configurable at instance creation Add support for running systemctl in --system mode Add 'instance config [show,set,remove,edit]' commands Add support for Postgres 14 Add a CLI option to show program version Add a --log-file command line option Let all commands accept a <version>/<name> argument as instance Improve secrets handling and security in Ansible tutorial Create PostgreSQL socket directory if absent Unconditionally pass 'passfile' parameter to libpq Improve CLI live display, tables and messages, now including status and grouping information Improve error handling and streams usage in 'postgres' script Rename systemd unit templates Document systemd setup and operations Document how PostgreSQL authentication works
-
v0.7.0ca907d4b · ·
pglift v0.7.0 Log to stderr when starting postgres with systemd Handle absence of satellite components (e.g. pgbackrest) in operations and API Run tests with Debian bullseye and CentOS 8 in CI Add commands, Ansible module and Python API to manage a standalone Prometheus postgres_exporter service Stop the instance when dropping to avoid dangling processes Make 'instance stop' a no-op if instance is not running Drop --purge option from 'instance backup' command Set reasonable retention values for pgbackrest Reorganize the documentation into "installation" and "operations" main sections Complement the documentation with examples for all interfaces (CLI, Ansible) in all operation topics Drop settings unrelated to PITR from pgbackrest.conf Allow to start an instance in the foreground Allow to start postgres_exporter in foreground Move CLI runtime dependency into an extra requires section Improve logging in the CLI, adding colors, making log file path configurable, adjusting formatting
-
v0.6.06202837e · ·
pglift v0.6.0 Keep newline, except for JSON, in CLI output Fix validator of postgresql.default_version setting Define a complete exception hierarchy in the API Handle known errors in CLI Log uncaught exceptions in a temporary file for debugging in CLI Introduce a "database run" command Configure lock-path for pgbackrest Configure logger for better composability Let systemd unit path be configurable Do not overwrite systemd units during installation Add logging to installation step Do not use systemd by default Add 'database privileges' command Add 'role privileges' command Add 'instance privileges' command Add a 'privileges' module Add 'database list' command Log run commands Log subprocesses stderr as debug level Add some logging during instance {start,stop,restart,reload} Handle postgres_exporter {start,stop} without systemd Only use syslog when systemd is available for postgres_exporter Add 'postgres_exporter {start,stop}' commands Run test suite against postgresql 10 in gitlab CI Set "spoolpath" during pgbackrest setup Set pgbackrest retention policy in configuration Call 'pgbackrest backup' with --start-fast by default Handle streaming replication slots Fix pglift instance init --help example in cli tutorial Add "instance restore" command Add pgbackrest.iter_backups() to list available backups Add "instance shell" command Use PostgreSQL 13 in CI Use bullseye repository in CI
-
v0.5.0b7f801a5 · ·
pglift v0.5.0 Write a more complete tutorial on CLI Move cli and ansible docs into a "tutorials" section Add a "installation" documentation page Add missing functions in API documentation Add "alter" command for instance, role and database objects Implement "alter" for database objects Add a "owner" field to Database model Check security with bandit Only actually log the program name in cmd.run() Provide shell completion scripts Prompt for secret options (e.g. password) in the CLI
-
v0.4.08a39df45 · ·
pglift v0.4.0 Only sort pgpass when adding a new entry Document PostgreSQLInstance class Extract postgresql config read into conf module Add basic support for database objects, with CLI and Ansible modules Add "inherit", "login", "validity", "connection_limit" and "in_roles" fields to Role model Move <action>-instance commands as "instance <action>" Inspect role completely in roles.describe() Add roles.alter() and use it in roles.apply() Handle streaming replication
-
v0.3.0903ffbb1 · ·
pglift v0.3.0 Handle pgpass update upon instance port change Run systemctl daemon-reload after change in unit files Don't install systemd unit files when service_manager is not systemd Add "role create" command Add a "role" Ansible module Fix possible UnboundLocalError in site-configure command Do a full system lookup when retrieving an instance or listing instances Improve error handling in "backup" script Add logic to inspect postgres_exporter configuration Catch interface model validation errors in Ansible module Use instance.apply() in Ansible "instance" module Build Ansible modules argspec from manifest models Move "model" and "manifest" modules under a "models" package
-
v0.2.0d6b33569 · ·
pglift v0.2.0 Create a collection to distribute our Ansible modules Rename the "instance" Ansible module Validate user supplied PostgreSQL version from manifest Make percent values for PostgreSQL configuration items relative to total memory Write "site" PostgreSQL configuration to a dedicated file Add a --log-level option to CLI Log exceptions while running tasks Allow site-wise settings definition through a YAML file Rebuild test docker image only when it's required Catch InstanceNotFound and other exceptions in CLI Require psycopg2 for installation Fail fast in 'describe' and 'drop' actions Search /usr/pgsql-{version} for bindir of PostgreSQL as well Add "instance init" command Configure 'unix_socket_directories' in site settings Move "install" command to main cli as "site-configure"