Skip to content

Latest commit

 

History

History
65 lines (38 loc) · 1.68 KB

README.md

File metadata and controls

65 lines (38 loc) · 1.68 KB

todoistbackup

A backup syncronization tool for Todoist.

DESCRIPTION

todoistbackup downloads backup files from the Todoist Sync API and uploads missing backup files to a user provided S3 bucket. The project is still immature, threfore use at your own risk.

USAGE

The backup tool can be used with Docker as follows.

docker run \
  --name todoistbackup \
  --rm \
  --volume $(pwd)/config.json:/etc/todoistbackup/config.json \
  xinau/todoistbackup

CONFIGURATION

The configuration is written in JSON and loaded using the --config.file flag. It provides the following attributes for configuring various aspects of the backup tool.

client.timeout <int optional> - HTTP client request timeout in seconds.

client.token <string> - API token obtained from the integrations page.

store.bucket <string> - S3 bucket name. If it doesn't exist it will be created.

store.endpoint <string> - S3 API endpoint to use.

store.region <string optional> - S3 region the bucket will be created in.

store.access-key <string> - S3 access key to use.

store.secret-key <string> - S3 secret key to use.

store.insecure <bool optional> - Set to true to allow insecure S3 connections.

daemon <bool optional> - Set to true to run backup job every 24 hours.

BUILD

The backup tool is developed in Go and can be build with a recent toolchain.

git clone https://github.com/xinau/todoistbackup.git
cd todoistbackup
go build -o out/todoistbackup ./cmd/todoistbackup

LICENSE

This project is under MIT license.