Code Monkey home page Code Monkey logo

puppet-dirvish's Introduction

dirvish

Module for creating and managing a backup solution using Dirvish. The module will deploy Dirvish to the backup server (the host with dirvish applied) and then create a vault for each entry in $vaults. The module will attempt to initialize the vault, so it is recommended to deploy the dirvish::client classes first.

Dependencies

  • puppetlabs-stdlib
  • GregSutcliffe-ssh_statickeys

Parameters

init.pp

[backup_location] The core path that the backups should live in. Defaults to /srv/backups. The parent of this path should exist, or Puppet will be unable to create the dir.

[vaults] A hash of data describing the backups to be performed.

client.pp

[pre_template] The location of a template that should be used to populate /etc/dirvish/pre_client on the clients.

[pre_script] A string to be deployed to be deployed to /etc/dirvish/pre_client. Overrides pre_template if specified.

If neither of these are specified, the pre_client script will simply execute true

[declare_rsync] Set this to false if you have rsync declared elsewhere in your manifest.

Examples

class { dirvish:
  backup_location => '/backups'
}

This will create a non-functional sample backup configuration in /backups. For a more complete example backing up /etc with some sample excludes on localhost, try:

class { 'dirvish::client':
  pre_template => "mystuff/dirvish_pre.erb"
} ->
class { 'dirvish':
  vaults => {
               testbackup => {
                 client   => $::hostname,
                 tree     => '/etc',
                 excludes => [
                   '*hosts*',
                   '/etc/puppet'
                 ]
               }
             },
  backup_location => '/backups'
}

Copyright

Copyright 2013 Greg Sutcliffe

License

GPL3

Contact

Greg Sutcliffe [email protected]

Support

Please log tickets and issues at my github page

puppet-dirvish's People

Contributors

ekohl avatar gregsutcliffe avatar mmoll avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.