Introduction

Bashtic is a BASH wrapper for restic. It’s modelled on the excellent autorestic but uses pure BASH for the configuration and definition of your restic workflows.

Caution

Bashtic is currently in early development and should be used with caution.

Features

  • Define custom workflows (pipelines) in pure BASH. Bashtic provides BASH functions for you to call when you need a restic operation like backup, check and forget. This is equivalent to having your own hooks around any operation but you completely control the flow. For a simple example see create a custom pipeline in our quick start guide.

  • Configure restic locations, backends with standard BASH variables and arrays. These settings are passed seamlessly to the restic operations in your pipelines.

  • Use the dry-run mode (--dryrun|-n) to see the full restic commands that would be run during a pipeline. Helps you check your config before committing to it.

  • Nest include/exclude rules to any depth with our cludes feature - avoiding issues around the use of the files-from flag with restic.

Check out the roadmap to see what’s coming up.

Current restrictions

Bashtic is new and is missing some features you might expect:

  • We only provide support for the restic operations of backup, check and forget, though you can call any restic command in your own pipelines.

  • We only support local restic repositories as a backend type.

  • Only one location (backup source definition) can be defined.

  • Whilst you can define multiple backends for a location you cannot choose which one to use during a pipeline run - bashtic will iterate through all of them.

Ready to go? Dive into the quick start.