PUPPET-FILEBUCKET(8)

NAME
puppet-filebucket - Store and retrieve files in a filebucket

SYNOPSIS
A stand-alone Puppet filebucket client.

USAGE
puppet filebucket mode [-h|--help] [-V|--version] [-d|--debug] [-v|--verbose] [-l|--local] [-r|--remote] [-s|--server server] [-f|--fromdate date] [-t|--todate date] [-b|--bucket directory] file file ...

Puppet filebucket can operate in three modes, with only one mode per call:

backup: Send one or more files to the specified file bucket. Each sent file is printed with its resulting md5 sum.

get: Return the text associated with an md5 sum. The text is printed to stdout, and only one file can be retrieved at a time.

restore: Given a file path and an md5 sum, store the content associated with the sum into the specified file path. You can specify an entirely new path to this argument; you are not restricted to restoring the content to its original location.

diff: Print a diff in unified format between two checksums in the filebucket or between a checksum and its matching file.

list: List all files in the current local filebucket. Listing remote filebuckets is not allowed.

DESCRIPTION
This is a stand-alone filebucket client for sending files to a local or central filebucket.

Note that 'filebucket' defaults to using a network-based filebucket available on the server named 'puppet'. To use this, you'll have to be running as a user with valid Puppet certificates. Alternatively, you can use your local file bucket by specifying '--local'.

OPTIONS
Note that any setting that's valid in the configuration file is also a valid long argument. For example, 'ssldir' is a valid setting, so you can specify '--ssldir directory' as an argument.

See the configuration file documentation at https://docs.puppetlabs.com/puppet/latest/reference/configuration.html for the full list of acceptable parameters. A commented list of all configuration options can also be generated by running puppet with '--genconfig'.

--debug
    Enable full debugging.

--fromdate
    (list only) Select bucket files from 'fromdate'

--help
    Print this help message

--local
    Use the local filebucket. This will use the default configuration information.

--remote
    Use a remote filebucket. This will use the default configuration information.

--server
    The server to send the file to, instead of locally.

--todate
    (list only) Select bucket files until 'todate'

--verbose
    Print extra information.

--version
    Print version information.

EXAMPLE
$ puppet filebucket backup /etc/passwd
/etc/passwd: 429b225650b912a2ee067b0a4cf1e949
$ puppet filebucket restore /tmp/passwd 429b225650b912a2ee067b0a4cf1e949
## Diff between two files in the filebucket
$ puppet filebucket -l diff d43a6ecaa892a1962398ac9170ea9bf2 7ae322f5791217e031dc60188f4521ef
1a2
> again
## Diff between the file in the filebucket and the current one
$ puppet filebucket -l diff d43a6ecaa892a1962398ac9170ea9bf2 /tmp/testFile
1a2
> again
$ puppet filebucket -l list
d43a6ecaa892a1962398ac9170ea9bf2 2015-05-11 09:27:56 /tmp/TestFile
$ echo again >> /tmp/TestFile
$ puppet filebucket -l backup /tmp/TestFile
/tmp/TestFile: 7ae322f5791217e031dc60188f4521ef
$ puppet filebucket -l  list
d43a6ecaa892a1962398ac9170ea9bf2 2015-05-11 09:27:56 /tmp/TestFile
7ae322f5791217e031dc60188f4521ef 2015-05-11 09:52:15 /tmp/TestFile
$ puppet filebucket -l -f 2015-01-01 -t 2015-01-11 list
<Empty Output>
$ puppet filebucket -l -f 2015-05-10 list
d43a6ecaa892a1962398ac9170ea9bf2 2015-05-11 09:27:56 /tmp/TestFile
7ae322f5791217e031dc60188f4521ef 2015-05-11 09:52:15 /tmp/TestFile
$ puppet filebucket -l -f "2015-05-11 09:30:00" list
7ae322f5791217e031dc60188f4521ef 2015-05-11 09:52:15 /tmp/TestFile
$ puppet filebucket -l -t "2015-05-11 09:30:00" list
d43a6ecaa892a1962398ac9170ea9bf2 2015-05-11 09:27:56 /tmp/TestFile

AUTHOR
Luke Kanies

COPYRIGHT
Copyright (c) 2011 Puppet Inc., LLC Licensed under the Apache 2.0 License