An open API service indexing awesome lists of open source software.

https://github.com/vitonsky/replicator

Replicator is a task runner for backups
https://github.com/vitonsky/replicator

backup backup-cli backup-cron backup-script backup-tool backup-utility backups cli task-manager task-runner

Last synced: 5 months ago
JSON representation

Replicator is a task runner for backups

Awesome Lists containing this project

README

          

Replicator is a task runner for backups.

You can describe your tasks declarative with YAML file and run task files with CRON.

Replicator supports notifications, it's useful for tasks that take a lot of time.

## Install

Install from pip `pip install replicator-cli`

Or build:
- Clone repository `git clone https://github.com/vitonsky/replicator.git`
- Build package with run `make build`
- Install package `pip install dist/replicator-0.0.1-py3-none-any.whl`

## Usage

```
usage: replicator [-h] config

Util to replicate backups from primary storage to a mirrors

positional arguments:
config Path to config file

optional arguments:
-h, --help show this help message and exit
```

To use util, first create task file.

Example task file for a local device
```yml
tasks:
# Task may have name
- name: 'Copy files to backup disk'
run: rclone ./backups /path/to/local/mirror1

- name: 'Upload to S3'
run: rclone ./backups s3Replica:backups

- name: 'Replicate on server'
# Just run replicator on server with their own config and end locally
run: ssh replicator@backup-server 'nohup replicator ./backups.yml > ./replicator.log 2>&1