Categorygithub.com/dnnrly/s3backup
modulepackage
0.3.0
Repository: https://github.com/dnnrly/s3backup.git
Documentation: pkg.go.dev

# README

s3backup

Shorten your strings using common abbreviations.

godoc report card

Motivation

This tool has been developed so that I can conveniently backup all of my personal photos to an AWS S3 bucket.

But why develop this? Aren't there other tools that can solve your problem?

Of course, but this is more fun.

Installation

git clone https://github.com/dnnrly/s3backup
cd s3backup
make build

Usage

$ s3backup --help
This too backs up your files to S3 so that you can have them in
the cloud. It will scan the location(s) that you specify and
attempt rudimentary de-duplication.

Examples:

$ s3backup

Code of Conduct

This project adheres to the Contributor Covenant code of conduct. By participating, you are expected to uphold this code.

Contributing

Pull requests are welcome. See the contributing guide for more details.

Please make sure to update tests as appropriate.

License

Apache 2

# Packages

No description provided by the author
No description provided by the author

# Functions

CopyIndex creates an Index from Yaml.
FileHasher returns a hash of the contents of a file.
FilePathWalker is a PathWalker that accesses files on the disk when walking a directory tree.
NewConfigFromFile generates a config object from a file.
NewConfigFromString generates a config object from the string.
NewIndex creates an Index from Yaml.
NewIndexFromRoot creates a new Index populated from a filesystem directory.
This uploads batches given by UploadDifferences.
UploadDifferences will upload the files that are missing from the remote index.

# Variables

Verbose enables verbose logging in this package.

# Structs

Config defines the configuration for the whole tool.
Index holds all of the metadata for files backed up.
Limiter object for limiting concurrency of go routines.
Sourcefile represents the metadata for a single backed up file.

# Interfaces

FileRepository allows you to access files in your remote location.
IndexStore allows you to persist indexed objects.

# Type aliases

FileGetter allows you to get the contents of a file.
PathHasher is a function that will hash the file at 'path' location.
PathWalker is a function that can walk a directory tree and populate the Index that is passed in.