zrepl/endpoint
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
..
context.go [#307] add package trace, integrate it with logging, and adopt it throughout zrepl 2020-05-19 11:30:02 +02:00
endpoint_abstractions_cache.go Reformat all files with make format. 2020-08-31 23:57:45 +02:00
endpoint_guarantees.go Reformat all files with make format. 2020-08-31 23:57:45 +02:00
endpoint_metrics.go replication + endpoint: replication guarantees: guarantee_{resumability,incremental,nothing} 2020-07-26 20:32:35 +02:00
endpoint_zfs_abstraction_last_received_hold.go Reformat all files with make format. 2020-08-31 23:57:45 +02:00
endpoint_zfs_abstraction_replication_cursor.go Reformat all files with make format. 2020-08-31 23:57:45 +02:00
endpoint_zfs_abstraction_step_hold.go replication + endpoint: replication guarantees: guarantee_{resumability,incremental,nothing} 2020-07-26 20:32:35 +02:00
endpoint_zfs_abstraction_test.go zfs.NilBool: document its purpose and move it to its own package 'nodefault' 2021-02-20 17:04:57 +01:00
endpoint_zfs_abstraction.go make initial replication policy configurable (most_recent, all, fail) 2022-06-26 14:36:59 +02:00
endpoint_zfs_helpers_repr_test.go endpoint: refactor, fix stale holds on initial replication failure, zfs-abstractions subcmd, more efficient ZFS queries 2020-04-18 12:26:03 +02:00
endpoint_zfs_helpers_repr.go endpoint: refactor, fix stale holds on initial replication failure, zfs-abstractions subcmd, more efficient ZFS queries 2020-04-18 12:26:03 +02:00
endpoint_zfs_helpers_types.go endpoint: refactor, fix stale holds on initial replication failure, zfs-abstractions subcmd, more efficient ZFS queries 2020-04-18 12:26:03 +02:00
endpoint.go fix encrypt-on-receive with placeholders 2021-12-18 15:12:47 +01:00
jobid.go replication + endpoint: replication guarantees: guarantee_{resumability,incremental,nothing} 2020-07-26 20:32:35 +02:00
placeholdercreationencryptionproperty_enumer.go fix encrypt-on-receive with placeholders 2021-12-18 15:12:47 +01:00
replicationguaranteekind_enumer.go replication + endpoint: replication guarantees: guarantee_{resumability,incremental,nothing} 2020-07-26 20:32:35 +02:00