From 5faafbb1b4904ba228a405894080044e0594412f Mon Sep 17 00:00:00 2001 From: Christian Schwarz Date: Wed, 13 Sep 2017 23:46:15 +0200 Subject: [PATCH] cmd: noprune prune policy --- cmd/config_parse.go | 2 ++ cmd/config_prune_none.go | 11 +++++++++++ 2 files changed, 13 insertions(+) create mode 100644 cmd/config_prune_none.go diff --git a/cmd/config_parse.go b/cmd/config_parse.go index 47524ab..a680ccc 100644 --- a/cmd/config_parse.go +++ b/cmd/config_parse.go @@ -167,6 +167,8 @@ func parsePrunePolicy(v map[string]interface{}) (p PrunePolicy, err error) { switch policyName { case "grid": return parseGridPrunePolicy(v) + case "noprune": + return NoPrunePolicy{}, nil default: err = errors.Errorf("unknown policy '%s'", policyName) return diff --git a/cmd/config_prune_none.go b/cmd/config_prune_none.go new file mode 100644 index 0000000..785941b --- /dev/null +++ b/cmd/config_prune_none.go @@ -0,0 +1,11 @@ +package cmd + +import "github.com/zrepl/zrepl/zfs" + +type NoPrunePolicy struct{} + +func (p NoPrunePolicy) Prune(fs *zfs.DatasetPath, versions []zfs.FilesystemVersion) (keep, remove []zfs.FilesystemVersion, err error) { + keep = versions + remove = []zfs.FilesystemVersion{} + return +}