Skip to content

Latest commit

 

History

History
242 lines (123 loc) · 4.55 KB

REFERENCE.md

File metadata and controls

242 lines (123 loc) · 4.55 KB

Reference

Table of Contents

Classes

Public Classes

  • borg: Main class, includes all other classes.

Private Classes

  • borg::config:
  • borg::install: This class handles the installation. Avoid modifying private classes.
  • borg::service:

Defined types

Classes

borg

Main class, includes all other classes.

Parameters

The following parameters are available in the borg class.

package_name

Data type: Variant[String[1],Array[String[1]]]

Name of the borg package

create_prometheus_metrics

Data type: Boolean

Enable a postrun command to create prometheus compatible metrics about all backups

use_upstream_reporter

Data type: Boolean

Enable to upstream reporter (see create_prometheus_metrics param) or our vendored version

update_borg_restore_db_after_backuprun

Data type: Boolean

Enable the restore helper from Florian 'Bluewind' Pritz (https://metacpan.org/release/App-BorgRestore) as another postrun command (see also the install_restore_script parameter)

keep_yearly

Data type: Integer[1]

For how many years should we keep our backups?

keep_monthly

Data type: Integer[1]

For how many months should we keep our backups?

keep_weekly

Data type: Integer[1]

For how many weeks should we keep our backups?

keep_daily

Data type: Integer[1]

For how many days should we keep our backups?

keep_within

Data type: Integer[1]

For how many days should we keep all backups we have?

excludes

Data type: Array[Stdlib::Absolutepath]

list of default mountpoints that should be excluded from backups. Every mountpoint needs to be explicitly excluded or included. See also the additional_excludes parameter.

includes

Data type: Array[Stdlib::Absolutepath]

list of default mountpoints that should be included from backups. Every mountpoint needs to be explicitly excluded or included. See also the additional_includes parameter.

backupserver

Data type: String[1]

FQDN for the remote server. Will be written into the local ssh client configuration file.

install_restore_script

Data type: Boolean

Install the restore helper via cpanm.

restore_script_path

Data type: Stdlib::Absolutepath

The path to the restore helper.

backupdestdir

Data type: String[1]

The path on the remote server where the backups should be written to.

exclude_pattern

Data type: Array[String[1]]

We currently support excludes/includes for mountpoints. borg supports also a list of shell glob/regex pattern to filter for files.

additional_exclude_pattern

Data type: Array[String[1]]

Another array of patterns to extend the modules built-in list (exclude_pattern parameter).

Default value: []

restore_dependencies

Data type: Array[String[1]]

A list of dependencies for the restore helper.

Default value: []

package_ensure

Data type: String[1]

Ensure state for the borg package.

Default value: present

additional_excludes

Data type: Array[Stdlib::Absolutepath]

Another array of mountpoints to extend the modules built-in list (excludes parameter).

Default value: []

additional_includes

Data type: Array[Stdlib::Absolutepath]

Another array of mountpoints to extend to modules built-in list (includes parameter).

Default value: []

username

Data type: String[1]

The ssh username to connect to the remote borg service.

Default value: $facts['hostname']

Defined types

borg::ssh_keygen

Define: ssh_keygen this is based on https://github.com/maestrodev/puppet-ssh_keygen/blob/master/manifests/init.pp

Parameters

The following parameters are available in the borg::ssh_keygen defined type.

user

Data type: Any

The user that will own they key

Default value: undef

type

Data type: Any

the openssh key type

Default value: undef

bits

Data type: Any

The key length

Default value: undef

home

Data type: Any

The homedir where we will store the key

Default value: undef

filename

Data type: Any

The filename for the new key

Default value: undef

comment

Data type: Any

Comments that should be added to the key

Default value: undef

options

Data type: Any

Additional ssh-keygen paramters and options

Default value: undef