mirror of
https://github.com/GothenburgBitFactory/taskwarrior.git
synced 2025-06-26 10:54:26 +02:00
Add support for cloud sync, specifically GCP (#3223)
* Add support for cloud sync, specifically GCP This adds generic support for sync to cloud services, with specific spuport for GCP. Adding others -- so long as they support a compare-and-set operation -- should be comparatively straightforward. The cloud support includes cleanup of unnecessary data, and should keep total space usage roughly proportional to the number of tasks. Co-authored-by: ryneeverett <ryneeverett@gmail.com>
This commit is contained in:
parent
6f1c16fecd
commit
9566c929e2
36 changed files with 4012 additions and 401 deletions
|
@ -21,8 +21,35 @@ NOTE: A side-effect of synchronization is that once changes have been
|
|||
synchronized, they cannot be undone. This means that each time synchronization
|
||||
is run, it is no longer possible to undo previous operations.
|
||||
|
||||
.SH MANAGING SYNCHRONIZATION
|
||||
|
||||
.SS Adding a Replica
|
||||
|
||||
To add a new replica, configure a new, empty replica identically to
|
||||
the existing replica, and run `task sync`.
|
||||
|
||||
.SS When to Synchronize
|
||||
|
||||
Taskwarrior can perform a sync operation at every garbage collection (gc) run.
|
||||
This is the default, and is appropriate for local synchronization.
|
||||
|
||||
For synchronization to a server, a better solution is to run
|
||||
|
||||
$ task sync
|
||||
|
||||
periodically, such as via
|
||||
.BR cron (8) .
|
||||
|
||||
.SH CONFIGURATION
|
||||
|
||||
Taskwarrior provides several options for synchronizing your tasks:
|
||||
|
||||
- To a server specifically designed to handle Taskwarrior data.
|
||||
+ To a cloud storage provider. Currently only GCP is supported.
|
||||
- To a local, on-disk file.
|
||||
|
||||
.SS Sync Server
|
||||
|
||||
To synchronize your tasks to a sync server, you will need the following
|
||||
information from the server administrator:
|
||||
|
||||
|
@ -43,22 +70,20 @@ Configure Taskwarrior with these details:
|
|||
$ task config sync.server.client_id <client_id>
|
||||
$ task config sync.server.encryption_secret <encryption_secret>
|
||||
|
||||
.SS Adding a Replica
|
||||
.SS Google Cloud Platform
|
||||
|
||||
To add a new replica, configure a new, empty replica identically to
|
||||
the existing replica, and run `task sync`.
|
||||
To synchronize your tasks to GCP, use the GCP Console to create a new project,
|
||||
and within that project a new Cloud Storage bucket. The default settings for
|
||||
the bucket are adequate.
|
||||
|
||||
.SS When to Synchronize
|
||||
Authenticate to the project with:
|
||||
|
||||
Taskwarrior can perform a sync operation at every garbage collection (gc) run.
|
||||
This is the default, and is appropriate for local synchronization.
|
||||
$ gcloud config set project $PROJECT_NAME
|
||||
$ gcloud auth application-default login
|
||||
|
||||
For synchronization to a server, a better solution is to run
|
||||
Then configure Taskwarrior with:
|
||||
|
||||
$ task sync
|
||||
|
||||
periodically, such as via
|
||||
.BR cron (8) .
|
||||
$ task config sync.gcp.bucket <bucket-name>
|
||||
|
||||
.SS Local Synchronization
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue