Forge Home


Manage PostgresQL Backup/Restore pgbackrest


867 latest version

3.1 quality score

We run a couple of automated
scans to help you access a
module's quality. Each module is
given a score based on how well
the author has formatted their
code and documentation and
modules are also checked for
malware using VirusTotal.

Please note, the information below
is for guidance only and neither of
these methods should be considered
an endorsement by Puppet.

Version information

  • 1.0.0 (latest)
released May 7th 2021
This version is compatible with:
  • Puppet Enterprise 2019.8.x, 2019.7.x, 2019.5.x, 2019.4.x, 2019.3.x, 2019.2.x, 2019.1.x, 2019.0.x, 2018.1.x
  • Puppet >= 5.5.8 < 7.0.0
  • , , , ,

Start using this module

  • r10k or Code Manager
  • Bolt
  • Manual installation
  • Direct download

Add this module to your Puppetfile:

mod 'attestra-pgbackrest', '1.0.0'
Learn more about managing modules with a Puppetfile

Add this module to your Bolt project:

bolt module add attestra-pgbackrest
Learn more about using this module with an existing project

Manually install this module globally with Puppet module tool:

puppet module install attestra-pgbackrest --version 1.0.0

Direct download is not typically how you would use a Puppet module to manage your infrastructure, but you may want to download the module in order to inspect the code.



attestra/pgbackrest — version 1.0.0 May 7th 2021


This module provides configuration management of pgBackRest - Reliable PostgreSQL Backup & Restore.

Table of Contents

  1. Description
  2. Setup - The basics of getting started with pgbackrest
  3. Usage - Configuration options and additional functionality
  4. Limitations - OS compatibility, etc.
  5. Development - Guide for contributing to the module


This module allows all pgBackRest configuration options to be set in Hiera data.


PostgresQL Repositories

If you are not managing the repos another way, this module can install the release RPM and enable the repo for the version you choose.

Do not enable repo management when using puppetlabs/postgresql's $manage_package_repo option. The two repo management classes are redundant and will conflict with each other.

pgbackrest::manage_package_repo: true      # Boolean
pgbackrest::yumrepos::enable_version: 12   # Integer

If you leave the enable_version parameter undeclared, only the common repo will be enabled. This is the correct choice if you are using a different upstream, such as the PostgresQL AppStream, and only want the addon packages (like pgBackRest). This is the default behavior.

If you wish to prevent updates or to remove the release RPM, you can change:

pgbackrest::yumrepos::release_rpm_ensure: 'absent'

This will naturally prevent installation or updates of pgBackRest.


Simply adding the module to a profile is sufficient to install pgBackRest.

include pgbackrest

Only include the main class. Do not directly include the subclasses, as they are contained by the top-level class. Subclasses may be refactored without notice.


Do not enable manage_package_repo when using puppetlabs/postgresql's $manage_package_repo option. The two repo management classes are redundant.


Issues and Pull Requests happily accepted here.