Skip to content
Tags give the ability to mark specific points in history as being important
  • v0.31.0
    1d538590 · Prepare version 0.31.0 ·
    pglift v0.31.0
  • v0.30.0
    7724391d · Prepare version 0.30.0 ·
    pglift v0.30.0
  • v0.30.0a2
    pglift v0.30.0a2
  • v0.30.0a1
    f8a982a2 · Prepare version 0.30.0a1 ·
    pglift v0.30.0a1
  • v0.29.1
    pglift v0.29.1
  • v0.29.0
    a7fe44ea · Prepare version 0.29.0 ·
    pglift v0.29.0
  • v0.29.0a2
    487dbb22 · Prepare version 0.29.0a2 ·
    pglift v0.29.0a2
  • v0.29.0a1
    76650992 · Prepare version 0.29.0a1 ·
    pglift v0.29.0a1
  • show
    c6b9ed70 · Prepare version 0.28.0 ·
    pglift v0.28.0
  • v0.28.0
    c6b9ed70 · Prepare version 0.28.0 ·
    pglift v0.28.0
  • v0.28.0a1
    f830f023 · Prepare version 0.28.0a1 ·
    pglift v0.28.0a1
  • v0.27.0
    pglift v0.27.0
    
        Add support for RockyLinux 9
        Let user provide a name for pgbackrest stanza
        Handle REASSIGN OWNED and DROP OWNED when dropping a role
        Raise a specific error if role being dropped has dependent database objects
        Improve handling of model validation errors in the CLI
        Raise a specific error when Postgres bindir for requested version does not exist
        Limit database connection opening in 'instance get'
        Turn --json CLI option into --output-format=json
        Add a PyOxidizer configuration to build a binary version of pglift
        Make it possible to create a database as a clone of an existing one
        Handle installation global pgbackrest configuration through 'site-configure' command
        Add JSON output to 'instance env' command
        Add JSON output to '* apply' commands
        Add an example playbook for a standby instance in the documentation
        Pass replication password through environment when invoking pg_basebackup
        Rename Instance model's "configuration" field as "settings"
        Exclude pgbackrest_restore field 'instance get' command
        Fix pgbackrest setting name in Ansible tutorial
        Fix changing prometheus password upon instance alter
        Give SETTINGS environment variable precedence over YAML setting files
        Prevent retrieval of standby information for Patroni-managed instance
        Fix type error when retrieve instance env from Ansible module
        Keep Prometheus password upon upgrade
        Don't comment entries, generated by initdb, in postgresql.conf
        Define 'postgresql.versions' setting as a tuple
        Fix temboard-agent service name inconsistency
        Rename Standby's 'for' field as primary_conninfo
        Use pglift CLI in Ansible modules, instead of the Python API
        Fix systemd service name for Patroni-managed instances
        Fix settings in Ansible tutorial ('pgpass' fields missing for 'surole' and 'backuprole')
        Don't let postgres_exporter auto discover databases
  • v0.26.0
    pglift v0.26.0
    
        Handle 'log_directory' relative to PGDATA
        Possibly pass "backup" password to pgbackrest commands when initializing
        Document how PostgreSQL configuration is managed in user section
        Add PostgreSQLStopMode to ensure value is in smart, fast and immediate
        Drop support for PostgreSQL 10
        Fix calculation of Postgres parameters changes from Patroni configuration
        Properly serialize timedelta values in Patroni configuration
        Delete Patroni logs when dropping respective instance
        Stream Patroni bootstrap logs through our logger
        Don't raise exception if instance already started in start
        Add --all option for start/stop/restart/reload instance in CLI
        Show instance name in reload log info
        Disable log collector when starting Postgres temporarily
        Drop support for python < 3.9
        Make datadir and waldir can be configured to be outside of "root" dir
        Fix standby detection with PostgreSQL 11
        Allow to create instances using pgbackrest restore
        Give an example of how to reset a GUC parameter
        Fix pgbackrest setup documentation
        Always set use_unix_socket options in Patroni configuration
        Replace patroni 'bin_dir' setting by 'execpath'
        Add missing env_prefix to Patroni settings
        Add --(no-)drop-on-error options to 'instance create' command
        Make pgbackrest's spoolpath settings global
        Make pgbackrest's logpath settings global
        Remove pgbackrest log files at instance drop
        Make pgbackrest's lockpath settings global
        Make pgbackrest's repopath setting global
        Add a 'deleting' parameter to stop_postgresql() hook
        Back up Patroni config when dropping the last node
        Separate stanza-specific pgbackrest configuration from global
        Add a dumps_directory property to system Instance
        Make datadir, waldir and dumps_directory use "name" and "version"
        Drop references to unused packages in mypy config
        Mention Patroni integration in the README
        Adjust type of PrefixedPath.prefix()
        Validate "prefix" settings expected to be absolute
        Make psqlrc and psql_history are stored in datadir
        Drop postgresql.root settings
  • v0.25.0
    pglift v0.25.0
    
        Add elements and options keys to improve ansible argspec generation
        Allow stronger passwords for prometheus (but no blank space allowed)
        Rename interface.Instance.service to service_manifest
        Set service_manager/scheduler setting if systemd is set globally
        Pass systemd settings value to functions handling PostgreSQL unit installation
        Makre sure func tests stop at first error in CI
        Change the way plugins are registered
        Honor backuprole.pgpass setting
        Move Ansible tests out of 'func' directory
        Update .pgpass during instance upgrade
        Fix condition for insert a pgpass entry for super-user during upgrade
        Simplify passfile read during instance upgrade
        Use a specific level for logging hook events in tests
        Improve logging during pgpass changes
        Prevent useless update of pgpass entries when password did not change
        Use "new" port value in passfile.instance_configure() when creating
        Turn roles.set_pgpass_entry_for() into a role_change() hook
        Update ansible tutorial to ensure systemd is active
        Delete "failed to upgrade" instance through task revert
        Always apply role and database changes in instance.apply()
        Fix 'logpath' setting for pgbackrest to use log-prefixed directory
        Refactor connect_dsn() according to psycopg version
        Force autocommit to True in connection
        Do not check pending_restart if instance is being created
        Only do a system lookup for INSTANCE argument completion in CLI
        Build PGCtl object from instance's bindir
        Add a new postgresql_running context manager
        Make running context manager rely on postgresql_running
        Override systemd unit conf for tests with many starts
        Map 'input' to 'data' to run commands with Ansible
        Drop dependency on postgresql service in systemd service for backup
        Only apply plugins roles and databases when creating the instance
        Add a log message about possible extensions installation changes
        Move SSL options from instance to config field
        Let the 'promote' action be handled by a hook
        Let the 'standby' interface model be handle by a hook
        Let path to "editable" postgresql.conf be handled by a hook
        Let PostgreSQL auth setup be managed by a hook
        Let the 'reload' action be handled by a hook
        Remove run_hooks param in stopped
        Remove run_hooks param from instances.stop
        Change type for instance in instances.stop
        Generate Ansible documentation from models
        Make replrole available when templating pg_ident.conf
        Stop automatically creating replication slot on primary
        Let reconfigure_instance() test helper yield changes dict
        Install etcd in CI docker images
        Add support for Patroni
        Turn systemd into a plugin (for service_manager and scheduler)
  • v0.24.0
    pglift v0.24.0
    
        Add support for database dump, restore and list
        Handle hostname error in temBoard Agent
        Configure logging in 'postgres' and 'backup' entry points
        Fix temboard-agent systemd unit not enabled during setup
        Ensure socket_directory exists before starting instance
        Do not crash upon instance drop if 'dumps_directory' does not exist
        Make descriptions of pid_file settings consistent
        Add documentation for pg_back usage for db dumps
        Bump pgtoolkit version
        Set default 'port' field value during validation
        Adjust permissions of the crt SSL files
        Allow to specify backup password
        Make Ansible modules fail when pglift is bellow a specific version
        Fix authentication for 'backup' role during pgbackrest setup
        Upgrade setuptools requirement for recent setuptools-scm
        Move postgresql SSL certificate files outside DATADIR
        Improve live logging when starting a program
        Add instances.is_ready()
        Start PostgreSQL with 'postgres' instead of 'pg_ctl start'
        Handle plugins' role creation through a hook
        Handle plugins' database creation through a hook
        Split doc index page into index + quickstart
        Move shell completion doc in the howto section and improve it
        Only log subprocesses stderr, not stdout
        Make it possible to disable PoWA and pgbackrest at instance configuration
        Generate Ansible RETURN fields based on model
        Do not generate powa role password
        Allow alternative authentication methods for pgbackrest
        Let PostgreSQL start/stop/restart be handled by a hook
        Let PostgreSQL systemd unit be handled by hook
        Let PostgreSQL cluster initialization be handled by a hook
        Let PostgreSQL configuration writing be handled by a hook
        Document how to compute the changelog in reverse order
  • v0.23.0
    pglift v0.23.0
    
        Clean lock-path and spool-path when deconfiguring pgbackrest
        Only delete 'logpath' if we created it
        Do not log stdout when generating SSL certificate
        Fix required language in docs configuration
        Add support for temboard-agent
        Remove --log.format option for prometheus-postgres-exporter
        Simplify systemd service template for prometheus-postgres-exporter
        Fix unexpected update of pgpass entries upon instance creation
        Return false from pending_restart on stopped instance
        Add pending_restart to Ansible instance result
        Add a "restarted" instance state
        Move backup(s) and restore commands to the pgbackrest module
        Use XDG_RUNTIME_DIR as default RunPath
        Use /etc/systemd/system as default unit path when running as root
        Log a warning when reverting a task during rollback
        Check that a port is not used at instance creation
        Always generate a "disable" flag for boolean parameters in CLI
        Move monitoring docs from operations to setup section
        Improve documentation about 'logpath' setting
        Use --ask-vault-password in Ansible tutorial
        Rework Ansible tutorial
        Add a note in standby howto about super-user password and pgpass
        Move developer's tools configuration to their own file
        Rename --regen-test-data pytest option as --write-changes
        Document usage of --write-changes pytest flag
        Honor --no-plugins pytest flag
        Add function to define if an instance is running
        Merge db.superuser_connect() into db.connect()
        Make Instance's port field non-optional and default to 5432
        Always enable validation on Manifest's fields
        Improve 'port' validation in interface model
        Disallow mutation of Manifest values
  • v0.22.0
    pglift v0.22.0
    
        Avoid useless start of standby instances during prometheus setup
        Handle PostgreSQL configuration for pgBackRest through a template file
        Do not alter max_wal_senders when setting up pgBackRest
        Fix 'instance apply' command to account for satellite components
        Set no target-action when restoring without a target
        Set target-action=immediate when restoring from a label
        Configure new instance before running pg_upgrade command
        Use a URI instead of key=value for DSN for prometheus config
        Fix pgpass update upon port change from default value
        Allow to specify password for replication user of a standby instance
        Allow user to modify the value of locale subcategories
        Emit a log messages when lc_ setting are heterogeneous
        Add a 'restart_on_changes' field to control automatic instance restart
        Add a pending_restart field on Instance
        Allow to specify role password for postgres_exporter
        Extend automatic reload to different settings contexts
        Add 'databases' and 'roles' fields to 'instance' Ansible module
        Add a --json flag to 'instance backups' command
        Add instance_configuration hook
        Add support for PoWA
        Return a 'changed' flag from apply() functions in API
        Document pgBackRest site setup
        Add a note about Prometheus in standby how to
        Rework user documentation about instance backup and restore
  • v0.21.1
    pglift v0.21.1
    
        Load site settings in 'postgres' and 'backup' entry points
  • v0.21.0
    pglift v0.21.0
    
        Add support for database-level extensions
        Allow to specify authentication method at instance creation
        Introduce SiteSettings class
        Shorten table of 'instance get' command output
        Add a dalibo.pglift.dsn_info Ansible module
        Make "instance" Ansible module also return "env" key
        Add dynamic documentation fragments for Ansible modules
        Properly handle missing runtime dependencies in Ansible modules
        Document settings fields
        Fix documentation of Database::owner field
        Fix, or add missing, descriptions on interface models
  • v0.20.0
    pglift v0.20.0
    
        Show default auth settings in YAML in documentation
        Make password_command setting a list
        Fix local and host authentication reversed descriptions
        Improve CLI choices for options with multiple values
        Allow to specify character encoding value at instance creation
        Add error Ansible collection usage without pglift
        Add a --schema option to site-settings command
        Use CASCADE when creating or dropping extensions
        Log conninfo when opening a connection
        Template pg_ident.conf with 'surole' and 'sysuser'
        Document how to setup peer authentication
        Add Context.site_config() and Settings.site_settings()
        Use "peer" authentication for super-user in functional tests
        Do not log output from password_command run
        Make password_command setting instance-scoped
        Make prometheus.execpath setting required
        Catch invalid settings in CLI