Skip to content

Tags

Tags give the ability to mark specific points in history as being important
  • v0.18.0
    pglift v0.18.0
    
        Catch SQL programming errors in 'database run' command
        Hide 'apply' commands
        Do not try to create 'monitoring' role on standby instances
        Fail fast when trying to start/stop a non-existing postgres_exporter
        Restore missing shell completion of instance 'create' and 'alter' commands
        Check if pgpass file exists when testing if role is in
        Configure a psqlrc and its history through 'env' and 'exec' commands
        Prompt for restart if needed upon 'pgconf edit'
        Handle site templates for pg_hba.conf and pg_ident.conf
        Add --interactive option, complementing --non-interactive, in CLI
        Replace 'instance restore --list' command with 'instance backups'
        Prompt for confirmation of backups deletion upon instance drop
        Add support for instance extensions
        Implicitly depend on psycopg, to fix installation on CentOS 7
    
  • v0.17.0
    pglift v0.17.0
    
        Require a minimal pip version for installation
        Add a note in Ansible tutorial about Python 3
        Prompt for instance restart after configuration changes
        Add an option in database list command to specify database
        Do not comment lc_* configuration parameters set by initdb
        Allow user to use pglift without postgresql installed
        Don't try to remove passfile if it does not exist
    
  • v0.16.0
    pglift v0.16.0
    
        Show actual value for password fields in instance describe
        Add explicit start when dumping manifest as YAML
        Handle variadic INSTANCE argument in 'instance' commands
        Fix completion of 'instance' commands with no sub-command
        Set surole password at initdb
        Remove --surole-password and --replrole-password from instance alter
        Always set password when available in "role alter"
        Fallback to prompt for surole password when missing
        Show default action when prompting in CLI
        Add a --non-interactive command-line option to disable confirmation
        Prettify sizes in tables show in cli
        Mark read-only interface model fields as such
        Don't prompt for restart if the instance is stopped
        Add completion command to show auto-complete files
        Show backup stop date in `instance restore --list`
        Invite dev users to upgrade pip
        Correct command instance config to pgconf in instance logs documentation
        Clarify standby setup documentation about connection to the primary
        Mention linting, formatting and type-checking in dev documentation
        Document directory format instead of Custom format in pg_dump example
        Specify postgres version with --pg-version option in func tests
        Distinguish unit and func tests in tox and CI
        Use 'pg_version' fixture when it was missing
        Modify pre-commit commands to match tox configuration
        Require pgtoolkit >= 0.20.1
    
  • v0.15.2
    pglift v0.15.2
  • v0.15.3
    pglift v0.15.3
  • v0.15.1
    pglift v0.15.1
    
  • v0.15.0
    pglift v0.15.0
    
        Use dedicated role for monitoring
        Make 'instance describe' return standby metadata
        Turn the "instance" positional argument into a required option
        Guess INSTANCE for 'instance' commands when there is only one
        Display query result for "database run" command
        Display status message for "database run" command
        Fix message when updating passfile entry on port change
        Don't update the pgpass if port hasn't changed
        Ensure components are restarted when the instance is
        Add more logging information in non-interactive mode
        Add some clarifications to default privileges documentation
        Add note to tell user to install/enable prometheus in documentation
        Depends on psycopg[binary], simplifying installation
    
  • v0.14.0
    pglift v0.14.0
    
        Lookup for postgresql 'site.conf' in package config directories
        Make 'pgbackrest' and 'prometheus' settings fields optional; from
         now on, instances are created with only PostgreSQL with default
         settings
        Add shell completion on instance identifier in CLI
        Rename "instance init" command as "instance create"
        Allow to display and edit session default settings of a database
        Rename the "instance config" command to "pgconf"
    
        Drop superfluous prompt about instance restart at creation or update
        Display a hint in case of PGCtl raise EnvironmentError
        Handle checking and enabling data checksums with older postgresql
        Better handle invalid site settings
        Comment all entries of postgresql.conf at instance init
        Prevent / in instance name
        Create postgres_exporter's queriespath parent directory
        Improve logging on password and passfile operations
        Require parameter for the "pgconf set/remove" commands
        Fix error for "pgconf remove" command with port parameter
        Drop (hidden) --settings option
        Ask for confirmation before instance drop
        Ask for confirmation before 'instance upgrade'
        Add a more log messages when configuring postgresql
    
        Add a gitlab-ci job to publish package to PyPI on tags
        Add a --no-plugins pytest flag
    
        Update documentation on release, now automatic
        Adjust Ansible tutorial w.r.t. to systemd and now optional components
        Adjust 'alter' command in CLI tutorial to highlight the "restart" prompt
        Adjust 'runtime dependencies' docs now that satellites are optional
        Improve documentation about installation of systemd templates
        Rework settings documentation
        Add a mini-tutorial in documentation landing page
        Adjust documentation for postgres_exporter Ansible module
        Rework "PostgreSQL configuration" user documentation
        Document the "pgconf" command
    
  • v0.14.0a1
    pglift v0.14.0a1
    
  • v0.13.0
    pglift v0.13.0
    
        Fix or adjust Ansible modules DOCUMENTATION block
        Improve log message from databases.run()
        Drop CLI live displayer replaced by stderr logger
        Log system commands at DEBUG level
        Check that the target instance does not exist during an upgrade
        Replace positional arguments by --name/--version in 'instance upgrade'
        Require pgtoolkit 0.18.0
        Use LogRecord.getMessage() instead of possibly unset 'message' attribute
        Add a hidden 'pgbackrest' proxy command
        Call pgbackrest restore with --delta
        Use rockylinux instead of centos in CI
        Allow to enable/disable data_checksums on existing instance
        Allow to override data_checksums per instance
        Reload instance using pg_reload_conf()
        Adjust Ansible tutorial introduction
        Mention contributing documentation in README
        Document minimal requirements for contribution
        Add details on the test suite in dev documentation
        Improve documentation of 'instance upgrade' command
        Document runtime dependencies
        Document how to clone the repo in contributing section
    
  • v0.12.0
    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.0
    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.10.0
    pglift v0.10.0
    
        Add 'instance env'
        Add 'instance exec' command
        Drop 'instance shell' command, replaced by 'instance exec'
        Drop 'database backup' command, replaced by 'instance exec'
    
  • v0.9.0
    pglift v0.9.0
    
        Guess instance version when not specified in CLI
        Fix 'instance alter' command arguments
        Allow to configure a "password_command" to set PGPASSWORD
        Honor pgpass setting when upgrading an instance
        Add backup for database
        Also add stdout on CommandError in CLI output
    
  • v0.8.0
    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.0
    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.0
    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.1
    pglift v0.5.1
    
        Update documentation links in README
    
  • v0.5.0
    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.0
    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