zrepl/config
Christian Schwarz 2642c64303 make initial replication policy configurable (most_recent, all, fail)
Config:

```
- type: push
  ...
  conflict_resolution:
    initial_replication: most_recent | all | fali
```

The ``initial_replication`` option determines which snapshots zrepl
replicates if the filesystem has not been replicated before.
If ``most_recent`` (the default), the initial replication will only
transfer the most recent snapshot, while ignoring previous snapshots.
If all snapshots should be replicated, specify ``all``.
Use ``fail`` to make replication of the filesystem fail in case
there is no corresponding fileystem on the receiver.

Code-Level Changes, apart from the obvious:
- Rework IncrementalPath()'s return signature.
  Now returns an error for initial replications as well.
- Rename & rework it's consumer, resolveConflict().

Co-authored-by: Graham Christensen <graham@grahamc.com>

Fixes https://github.com/zrepl/zrepl/issues/550
Fixes https://github.com/zrepl/zrepl/issues/187
Closes https://github.com/zrepl/zrepl/pull/592
2022-06-26 14:36:59 +02:00
..
samples docs: continous_server_backup: simplify by removing need for recv.placeholder 2022-01-09 12:51:00 +01:00
config_dep_test.go config: add test for fromdefaults behavior 2020-07-26 20:32:35 +02:00
config_global_test.go docs/monitoring: change suggested prometheus port to 9811 2021-03-28 18:18:02 +02:00
config_jobid_test.go new features: {resumable,encrypted,hold-protected} send-recv, last-received-hold 2020-02-14 22:00:13 +01:00
config_minimal_test.go format source tree using goimports 2019-03-22 19:41:12 +01:00
config_positiveintervalormanual_test.go pull job: support manual-only invocation 2019-03-16 14:24:05 +01:00
config_recv_test.go [#285] support setting zfs send / recv flags in the config (send: -wLcepbS, recv: -ox) 2021-02-20 17:20:45 +01:00
config_send_test.go [#285] support setting zfs send / recv flags in the config (send: -wLcepbS, recv: -ox) 2021-02-20 17:20:45 +01:00
config_snapshotting_test.go pre- and post-snapshot hooks 2019-09-27 21:25:59 +02:00
config_test.go Spellcheck all files 2020-02-24 16:06:09 +01:00
config_transport_test.go config: validate presence of port in addresses 2019-09-28 14:25:14 +02:00
config.go make initial replication policy configurable (most_recent, all, fail) 2022-06-26 14:36:59 +02:00
retentiongrid.go [#292] pruning: add func MustNewKeepGrid 2020-09-02 22:45:44 +02:00