Giter VIP home page Giter VIP logo

puppet-burp's Introduction

Table of Contents

  1. Overview
  2. Module Description - What the module does and why it is useful
  3. Setup - The basics of getting started with burp
  4. Usage - Configuration options and additional functionality
  5. Reference - An under-the-hood peek at what the module is doing and how
  6. Limitations - OS compatibility, etc.
  7. Development - Guide for contributing to the module
  8. Contributors

Overview

This module installs and configures the BURP backup software (client and server mode). BURP stands for BackUp and Restore Program.

Build Status vshn-burp

Module Description

BURP provides one binary for client and server mode. The behaviour depends on the configuration file, passed to the application with the -c parameter. This module provides two main functions:

  • configuring the BURP backup server
  • creating one or more BURP backup client configurations

The default parameters are applicable for BURP version 1.x, but the flexible nature of this module also allows to use the upcomming BURP version 2.

In opposite to the original BURP packaging, this Puppet module configures BURP to only have configuration files in /etc/burp and no dynamic data. All dynamic data like SSL certificates (CA) and the backup data is by default configured to be located under /var/lib/burp (server) and /var/lib/burp-<clientname>.

There can be many client configurations, f.e. to backup to different backup servers with different parameters. Just instantiate the ::burp::client defined type. The default client is name 'burp' because this is the name of the default configuration file and makes it easier to call the application (so you don't need to add -c to every call).

Setup

What burp affects

  • Package burp
  • Configuration files under /etc/burp/
  • BURP server: directory /var/lib/burp
  • BURP client: directory /var/lib/burp-${name}
  • System service burp if configuring the server
  • Cronjob if configuring a client
  • Exported resources for creating clientconfigs on the backup server
  • Delivery of some default scripts to /usr/local/bin:
    • burp_timer_script
    • burp_summary_script
    • burp_notify_script
    • burp_ssl_extra_checks_script

Beginning with burp

Instantiating the main class burp does only install the package and will do some preparations, but nothing more. You need to chose which mode you want to configure:

BURP server mode

class { ::burp::server: }

BURP client mode

class { ::burp:
  clients => {
    burp = {}
  }
}

or

::burp::client { 'burp': }

Usage

To find the default values and parameter documentation, have a look at the .pp files. Everything is documented there.

Reference

This sections describes some specialities

burp::extraconfig

This defined type allows to add some extra configuration to the client from "outside". Configuration directives written to this extra configuration file is included in the main client configuration file. It is located by default under /etc/burp/<clientname>-extra.conf.

Example:

::burp::extraconfig { 'do_this':
  client        => 'burp',
  configuration => { 'include' => [ '/opt/', '/tmp/' ] },
}

More Examples

Please see the examples/ directory for more usage examples.

Limitations

The module has been developed under Ubuntu. But it should also work on Debian, RedHat, CentOS and probably more Linux OS.

Development

  1. Fork it (https://github.com/vshn/puppet-burp/fork)
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create a new Pull Request

Make sure your PR passes the Rspec tests.

Contributors

Have a look at Github contributors to see a list of all the awesome contributors to this Puppet module. <3

puppet-burp's People

Contributors

tobru avatar vanelden avatar marcofl avatar kronos-pbrideau avatar andrekeller avatar cbergmann avatar johnzimm avatar

Watchers

James Cloos 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.