Forge Home

vss

This module controls VSS on windows systems

7,081 downloads

6,154 latest version

4.6 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.

Support the Puppet Community by contributing to this module

You are welcome to contribute to this module by suggesting new features, currency updates, or fixes. Every contribution is valuable to help ensure that the module remains compatible with the latest Puppet versions and continues to meet community needs. Complete the following steps:

  1. Review the module’s contribution guidelines and any licenses. Ensure that your planned contribution aligns with the author’s standards and any legal requirements.
  2. Fork the repository on GitHub, make changes on a branch of your fork, and submit a pull request. The pull request must clearly document your proposed change.

For questions about updating the module, contact the module’s author.

Version information

  • 0.2.1 (latest)
  • 0.2.0 (deleted)
  • 0.1.0
released Oct 12th 2018
This version is compatible with:
  • Puppet Enterprise 2018.1.x, 2017.3.x, 2017.2.x, 2017.1.x, 2016.5.x, 2016.4.x
  • Puppet >= 4.7.0 < 6.0.0

Start using this module

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

Add this module to your Puppetfile:

mod 'mikemurray86-vss', '0.2.1'
Learn more about managing modules with a Puppetfile

Add this module to your Bolt project:

bolt module add mikemurray86-vss
Learn more about using this module with an existing project

Manually install this module globally with Puppet module tool:

puppet module install mikemurray86-vss --version 0.2.1

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.

Download

Documentation

mikemurray86/vss — version 0.2.1 Oct 12th 2018

vss

Table of Contents

  1. Description
  2. Setup - The basics of getting started with vss
  3. Usage - Configuration options and additional functionality
  4. Reference - An under-the-hood peek at what the module is doing and how
  5. Limitations - OS compatibility, etc.
  6. Development - Guide for contributing to the module

Description

This module adds a provider to manage Volume Shadow Copy Service (VSS) configuration on windows.

Setup

Beginning with vss

This module can reserver drive space on a specified drive and create scheduled tasks to take regular snapshots similar to what the vssadmin.exe tool would create if run from the command line.

a basic example of configuring snapshots on the D drive for snapshots every hour starting at 8am would look like this:

vss { 'D':
  ensure => 'present',
}
vss::schedule { 'D':
  ensure     => 'present',
  run_schedule   => 'daily',
  start_time => '08:00',
}

The example above reserves 10% of the D:\ drive for VSS storage and sets up scheduled tasks to take a new snapshot every 60 minutes.

Usage

A more complete example of creating VSS schedules including managing allocated space and assigned drives would look like this:

vss { 'D':
  ensure         => 'present',
  storage_volume => 'D',
  storage_space  => 5,
}
vss::schedule { 'C':
  ensure       => present,
  run_schedule => 'daily',
  start_time   => '00:00',
  start_date   => '2018-01-01',
  minutes_interval => 45,
  minutes_duration => 5,

}

the vss::schedule resource is a direct implementation of the builtin scheduled_task trigger attribute so anything that can be set for a trigger can also be set for a schedule here.

Reference

vss provider

Properties and Parameters

creates vss schedules and storage.

ensure

accepts either present or absent. this decides if space should be allocated for VSS or not.

name

the name of the drive that you wish to backup. This is also the namevar

drive_id

this is the UUID of the drive being backed up. It cannot be changed.

storage_volume

the drive where the VSS storage will be alocated. By default this is the same drive as the name parameter but it can be set to somewhere else:

vss { 'D':
  ensure         => 'present',
  storage_volume => 'E',
}

storage_id

The UUID of the storage_volume. This cannot be changed.

storage_space

The amount of a drive to reserve for VSS storage is interpreted as a percent of the total drive by default but explicit sizes are accepted as well.

vss { 'D':
  ensure         => 'present',
  storage_volume => 'D',
  storage_space  => 5,
}

would allocate 5% of the D:\ drive for storage.

vss::schedule

The vss::schedule defined type acts as a wrapper for the built-in scheduled_task resource. Any setting that would be used with the trigger attribute can be used with vss::schedule. The only limitation to this is that only one trigger can be defined at a time per drive.

Limitations

at this time only one schedule per drive can be defined.

Development

Any and all changes are welcome! please open a pull request and include unit tests for relevant changes.