Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 4 Jun 2019 14:14:23 +0000 (UTC)
From:      Ben Woods <woodsb02@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r503474 - in head/sysutils/zrepl: . files
Message-ID:  <201906041414.x54EENFA095499@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: woodsb02
Date: Tue Jun  4 14:14:23 2019
New Revision: 503474
URL: https://svnweb.freebsd.org/changeset/ports/503474

Log:
  sysutils/zrepl: Update to 0.1.1
  
  Changes this release:
    https://zrepl.github.io/v0.1.1/changelog.html
  
  WARNING - BREAKING CHANGES WITH THE ZREPL 0.1.X RELEASE:
  There are a number of breaking changes this release. To ensure zrepl
  continues to function correctly, ensure you read the changelog, and then
  perform the following on both sides of the replication:
  - Stop the zrepl service:    # service zrepl stop
  - Upgrade the zrepl package: # pkg upgrade zrepl
  - Modify the zrepl config:   # vi /usr/local/etc/zrepl/zrepl.yml
  - Check the configuration:   # service zrepl configtest
  - Start the zrepl service:   # service zrepl start
  - Monitor the zrepl service: # zrepl status
  
  DANGER - SNAPSHOT PRUNING REQUIRES EXPLICIT KEEP RULES:
  For any ZFS snapshot that you want to keep, at least one rule must match. This
  is different from previous releases where pruning only affected snapshots with
  the configured snapshotting prefix. Make sure that snapshots to be kept or
  ignored by zrepl are covered, e.g. by using the regex keep rule.
  This also applies to snapshots taken by means other than zrepl (e.g. manually).
  
  PR:		237667
  Submitted by:	Michael Zhilin (mizhka@gmail.com)
  Differential Revision:	https://reviews.freebsd.org/D20095

Modified:
  head/sysutils/zrepl/Makefile
  head/sysutils/zrepl/distinfo
  head/sysutils/zrepl/files/pkg-message.in
  head/sysutils/zrepl/files/zrepl.in
  head/sysutils/zrepl/files/zrepl.yml.sample
  head/sysutils/zrepl/pkg-plist

Modified: head/sysutils/zrepl/Makefile
==============================================================================
--- head/sysutils/zrepl/Makefile	Tue Jun  4 14:06:18 2019	(r503473)
+++ head/sysutils/zrepl/Makefile	Tue Jun  4 14:14:23 2019	(r503474)
@@ -2,7 +2,8 @@
 # $FreeBSD$
 
 PORTNAME=	zrepl
-PORTVERSION=	0.0.3
+PORTVERSION=	0.1.1
+DISTVERSIONPREFIX=	v
 CATEGORIES=	sysutils
 
 MAINTAINER=	woodsb02@FreeBSD.org
@@ -11,33 +12,54 @@ COMMENT=	ZFS dataset replication tool
 LICENSE=	MIT
 LICENSE_FILE=	${WRKSRC}/LICENSE
 
-USES=		go
+USES=		gmake go
 USE_RC_SUBR=	zrepl
-SUB_FILES=	pkg-message
-
+GO_PKGNAME=	github.com/${GH_ACCOUNT}/${GH_PROJECT}
 USE_GITHUB=	yes
 GH_SUBDIR=	src/github.com/zrepl/zrepl
-GH_TUPLE=	davecgh:go-spew:v1.1.0:go_spew/src/github.com/davecgh/go-spew \
-		dustin:go-humanize:bb3d318:go_humanize/src/github.com/dustin/go-humanize \
+GH_TUPLE=	beorn7:perks:3a771d9:perks/src/github.com/beorn7/perks \
+		fatih:color:v1.7.0:color/src/github.com/fatih/color \
 		ftrvxmtrx:fd:c6d8003:fd/src/github.com/ftrvxmtrx/fd \
-		go-logfmt:logfmt:v0.3.0:go_logfmt/src/github.com/go-logfmt/logfmt \
-		go-yaml:yaml:eb3733d:go_yaml/src/github.com/go-yaml/yaml \
+		gdamore:encoding:b23993c:encoding/src/github.com/gdamore/encoding \
+		gdamore:tcell:v1.1.0:tcell/src/github.com/gdamore/tcell \
+		go-logfmt:logfmt:v0.4.0:logfmt/src/github.com/go-logfmt/logfmt \
+		golang:net:351d144:net/src/golang.org/x/net \
+		golang:protobuf:v1.3.1:protobuf/src/github.com/golang/protobuf \
+		golang:sync:e225da7:sync/src/golang.org/x/sync \
+		golang:sys:4ed8d59:sys/src/golang.org/x/sys \
+		golang:text:v0.3.0:go_text/src/golang.org/x/text \
+		google:go-genproto:bd91e49:genproto/src/google.golang.org/genproto \
+		google:uuid:v1.1.1:uuid/src/github.com/google/uuid \
+		grpc:grpc-go:v1.17.0:grpc/src/google.golang.org/grpc \
 		jinzhu:copier:db4671f:copier/src/github.com/jinzhu/copier \
-		kr:logfmt:b84e30a:logfmt/src/github.com/kr/logfmt \
 		kr:pretty:cfb55aa:pretty/src/github.com/kr/pretty \
 		kr:text:7cafcd8:text/src/github.com/kr/text \
+		lucasb-eyer:go-colorful:v1.0:go_colorful/src/github.com/lucasb-eyer/go-colorful \
 		mattn:go-isatty:v0.0.3:go_isatty/src/github.com/mattn/go-isatty \
-		mitchellh:mapstructure:d0303fe:mapstructure/src/github.com/mitchellh/mapstructure \
-		pkg:errors:v0.8.0:errors/src/github.com/pkg/errors \
-		pmezard:go-difflib:v1.0.0:go_difflib/src/github.com/pmezard/go-difflib \
-		problame:go-netssh:53a2e44:go_netssh/src/github.com/problame/go-netssh \
+		mattn:go-runewidth:v0.0.3:go_runewidth/src/github.com/mattn/go-runewidth \
+		matttproud:golang_protobuf_extensions:v1.0.0:golang_protobuf_extensions/src/github.com/matttproud/golang_protobuf_extensions \
+		pkg:errors:v0.8.1:errors/src/github.com/pkg/errors \
+		problame:go-netssh:09d6bc4:go_netssh/src/github.com/problame/go-netssh \
 		problame:go-rwccmd:391d2c7:go_rwccmd/src/github.com/problame/go-rwccmd \
+		prometheus:client_golang:e11c6ff:client_golang/src/github.com/prometheus/client_golang \
+		prometheus:client_model:99fa1f4:client_model/src/github.com/prometheus/client_model \
+		prometheus:common:d0f7cd6:common/src/github.com/prometheus/common \
+		prometheus:procfs:8b1c2da:procfs/src/github.com/prometheus/procfs \
 		spf13:cobra:b787445:cobra/src/github.com/spf13/cobra \
 		spf13:pflag:v1.0.0:pflag/src/github.com/spf13/pflag \
-		stretchr:testify:v1.1.4:testify/src/github.com/stretchr/testify
+		stretchr:testify:v1.1.4:testify/src/github.com/stretchr/testify \
+		theckman:goconstraint:v1.11.0:goconstraint/src/github.com/theckman/goconstraint \
+		zrepl:yaml-config:08227ad:yaml_config/src/github.com/zrepl/yaml-config
 
-GO_PKGNAME=	github.com/${GH_ACCOUNT}/${GH_PROJECT}
+SUB_FILES=	pkg-message
 
+OPTIONS_DEFINE=		MANPAGES
+OPTIONS_DEFAULT=	MANPAGES
+
+MANPAGES_USES=		python:build
+MANPAGES_BUILD_DEPENDS=	${PYTHON_PKGNAMEPREFIX}sphinx>=0:textproc/py-sphinx@${PY_FLAVOR}
+MANPAGES_PLIST_FILES=	man/man1/zrepl.1.gz
+
 .include <bsd.port.pre.mk>
 
 .if ${OPSYS} == "FreeBSD"
@@ -49,15 +71,25 @@ SUB_LIST+=	DAEMON_LOGGING=""
 post-extract:
 	${LN} -sf ${WRKSRC}/src ${WRKDIR}
 
+post-build-MANPAGES-on:
+	@${MAKE_CMD} -C ${WRKSRC}/docs SPHINXBUILD=sphinx-build-${PYTHON_VER} man
+
 do-install:
 	${INSTALL_PROGRAM} ${WRKDIR}/bin/${PORTNAME} ${STAGEDIR}${PREFIX}/bin
+	@${MKDIR} ${STAGEDIR}${PREFIX}/share/zrepl/samples
+	${INSTALL_DATA} ${WRKSRC}/dist/grafana/grafana-prometheus-zrepl-0.1.json ${STAGEDIR}${PREFIX}/share/zrepl/samples/
+	${INSTALL_DATA} ${WRKSRC}/config/samples/* ${STAGEDIR}${PREFIX}/share/zrepl/samples/
 
 post-install:
 	@${MKDIR} ${STAGEDIR}${PREFIX}/etc/newsyslog.conf.d \
 		${STAGEDIR}${PREFIX}/etc/syslog.d \
-		${STAGEDIR}${PREFIX}/etc/zrepl
+		${STAGEDIR}${PREFIX}/etc/zrepl \
+		${STAGEDIR}/var/run/zrepl
 	${INSTALL_DATA} ${FILESDIR}/newsyslog-zrepl.conf ${STAGEDIR}${PREFIX}/etc/newsyslog.conf.d/zrepl.conf.sample
 	${INSTALL_DATA} ${FILESDIR}/syslog-zrepl.conf.sample ${STAGEDIR}${PREFIX}/etc/syslog.d/zrepl.conf.sample
 	${INSTALL_DATA} ${FILESDIR}/zrepl.yml.sample ${STAGEDIR}${PREFIX}/etc/zrepl/zrepl.yml.sample
+
+post-install-MANPAGES-on:
+	${INSTALL_MAN} ${WRKSRC}/docs/_build/man/zrepl.1 ${STAGEDIR}${PREFIX}/man/man1
 
 .include <bsd.port.post.mk>

Modified: head/sysutils/zrepl/distinfo
==============================================================================
--- head/sysutils/zrepl/distinfo	Tue Jun  4 14:06:18 2019	(r503473)
+++ head/sysutils/zrepl/distinfo	Tue Jun  4 14:14:23 2019	(r503474)
@@ -1,39 +1,69 @@
-TIMESTAMP = 1524794931
-SHA256 (zrepl-zrepl-0.0.3_GH0.tar.gz) = 3e86e8e0ca5ad557ac7fb1c540a29ecfe46bb74220ca003f9daa63f079ddc44d
-SIZE (zrepl-zrepl-0.0.3_GH0.tar.gz) = 91025
-SHA256 (davecgh-go-spew-v1.1.0_GH0.tar.gz) = 1f7e0bd2db0341925b5f2ee5834e99380f4c2b1bd36cf0fa62d7717899d39d62
-SIZE (davecgh-go-spew-v1.1.0_GH0.tar.gz) = 42337
-SHA256 (dustin-go-humanize-bb3d318_GH0.tar.gz) = fc0baa097c5f471e76556fc2d8e27d3e9e027ecaa85b4d7c3156361b4abf1944
-SIZE (dustin-go-humanize-bb3d318_GH0.tar.gz) = 16386
+TIMESTAMP = 1555701482
+SHA256 (zrepl-zrepl-v0.1.1_GH0.tar.gz) = 0c16554e4527d14a390d78cf95bce759da425019a83ec63acfed5b4c50d68c9c
+SIZE (zrepl-zrepl-v0.1.1_GH0.tar.gz) = 212913
+SHA256 (beorn7-perks-3a771d9_GH0.tar.gz) = b7a0faebca98ebd5e7546403b4cdea9dc77f865f0623d04efbad33e984297cc9
+SIZE (beorn7-perks-3a771d9_GH0.tar.gz) = 10800
+SHA256 (fatih-color-v1.7.0_GH0.tar.gz) = 4650d7aa3feed266fc85d91dc34ca9cffdf7ee03ea29bf2cbf84bbecc75fb755
+SIZE (fatih-color-v1.7.0_GH0.tar.gz) = 816449
 SHA256 (ftrvxmtrx-fd-c6d8003_GH0.tar.gz) = cc6ff072f220c819fffde3b35edeba0183c827e8ff76f221acb6a6d71d257e90
 SIZE (ftrvxmtrx-fd-c6d8003_GH0.tar.gz) = 3283
-SHA256 (go-logfmt-logfmt-v0.3.0_GH0.tar.gz) = 74a958064177fc33cc66c60ae118f95faf9f986bcab0465c47f40d8cad978fce
-SIZE (go-logfmt-logfmt-v0.3.0_GH0.tar.gz) = 11546
-SHA256 (go-yaml-yaml-eb3733d_GH0.tar.gz) = d2ae44f0e31f3a13a1b89a55ceaabcbab4d588d41951fd2243739b60b10146bb
-SIZE (go-yaml-yaml-eb3733d_GH0.tar.gz) = 64686
+SHA256 (gdamore-tcell-v1.1.0_GH0.tar.gz) = f2c8d63f24ef1f89abd80f6ee86cdb2af562225405644c0e75d0522b04858443
+SIZE (gdamore-tcell-v1.1.0_GH0.tar.gz) = 719426
+SHA256 (gdamore-encoding-b23993c_GH0.tar.gz) = 7fe1ed858143ba259114120a8a736645ee644b22bece7c09240df6113922f01a
+SIZE (gdamore-encoding-b23993c_GH0.tar.gz) = 10629
+SHA256 (go-logfmt-logfmt-v0.4.0_GH0.tar.gz) = eddccc7c8d39a6381f7152e73ebf3c725de317c5b984d8a77282e63915aa834d
+SIZE (go-logfmt-logfmt-v0.4.0_GH0.tar.gz) = 12724
+SHA256 (golang-net-351d144_GH0.tar.gz) = 85e5747e8bb3009cb2f06d70eed9fc468901ea7d5ec05c4e68df1681fe51b599
+SIZE (golang-net-351d144_GH0.tar.gz) = 965968
+SHA256 (golang-protobuf-v1.3.1_GH0.tar.gz) = 3f3a6123054a9847093c119895f1660612f301fe95358f3a6a1a33fd0933e6cf
+SIZE (golang-protobuf-v1.3.1_GH0.tar.gz) = 310884
+SHA256 (golang-sync-e225da7_GH0.tar.gz) = 0ca7d229725c37038f50bdd2fc5065eb3fbc7de47a96e8ecfbf2c3da04e671e4
+SIZE (golang-sync-e225da7_GH0.tar.gz) = 16285
+SHA256 (golang-sys-4ed8d59_GH0.tar.gz) = 82a85133e63e18c493fbd2cf4237163364229df2582e85174d683c92a7b72ef3
+SIZE (golang-sys-4ed8d59_GH0.tar.gz) = 1117271
+SHA256 (golang-text-v0.3.0_GH0.tar.gz) = 8f4c9a048345befc7beccd09267737ee1f55c7b35e5ff80f344ec9e0aa90febb
+SIZE (golang-text-v0.3.0_GH0.tar.gz) = 6102619
+SHA256 (google-go-genproto-bd91e49_GH0.tar.gz) = a9106ed5286baa7a9062ebc1f3e5a9a0903e243d765737f762d0c0c12268c13e
+SIZE (google-go-genproto-bd91e49_GH0.tar.gz) = 2429145
+SHA256 (google-uuid-v1.1.1_GH0.tar.gz) = bebd4b0b4ea152a9793615ef23c83f688876d8c284a2092264d20a4bf4ffc423
+SIZE (google-uuid-v1.1.1_GH0.tar.gz) = 13543
+SHA256 (grpc-grpc-go-v1.17.0_GH0.tar.gz) = 891add70cc16c9e2dc07986fd6e8fae44a36921727411f0b652afbc76e0fb169
+SIZE (grpc-grpc-go-v1.17.0_GH0.tar.gz) = 563534
 SHA256 (jinzhu-copier-db4671f_GH0.tar.gz) = 3ae429e4a775545174f89591605f2775e3d52d9942ef1619019c84dfec65552f
 SIZE (jinzhu-copier-db4671f_GH0.tar.gz) = 5039
-SHA256 (kr-logfmt-b84e30a_GH0.tar.gz) = 1fb415fdfeca3d607e0bd0474def2f76a1438abfea8e35f1cda052673e5967e0
-SIZE (kr-logfmt-b84e30a_GH0.tar.gz) = 6405
 SHA256 (kr-pretty-cfb55aa_GH0.tar.gz) = 5c8e2093298c7540a2707a34d283ce37f1b288497786d4f5725647a63ab2ac5c
 SIZE (kr-pretty-cfb55aa_GH0.tar.gz) = 8499
 SHA256 (kr-text-7cafcd8_GH0.tar.gz) = 218bd56a3927283e4c9232b4ee15e0fcc989ace72a2a0be14863ce3795ad3c90
 SIZE (kr-text-7cafcd8_GH0.tar.gz) = 8584
+SHA256 (lucasb-eyer-go-colorful-v1.0_GH0.tar.gz) = 7bad1f3ae46d9f2f4e635e4b3f65424e1be9c131864630c5a99d512bc0bf2266
+SIZE (lucasb-eyer-go-colorful-v1.0_GH0.tar.gz) = 428403
 SHA256 (mattn-go-isatty-v0.0.3_GH0.tar.gz) = daf68970a6506650b05bac72082865f88d582ecdb74418b95ac5621d5392b633
 SIZE (mattn-go-isatty-v0.0.3_GH0.tar.gz) = 3364
-SHA256 (mitchellh-mapstructure-d0303fe_GH0.tar.gz) = 30e7697b7e321d8f14bff5f19b789cd38fd277518aae251c370ea53ddb53d1f7
-SIZE (mitchellh-mapstructure-d0303fe_GH0.tar.gz) = 15560
-SHA256 (pkg-errors-v0.8.0_GH0.tar.gz) = bacf6c58e490911398cee61742ddc6a90c560733e4c9dcb3d867b17a894c9dd5
-SIZE (pkg-errors-v0.8.0_GH0.tar.gz) = 11344
-SHA256 (pmezard-go-difflib-v1.0.0_GH0.tar.gz) = 28f3dc1b5c0efd61203ab07233f774740d3bf08da4d8153fb5310db6cea0ebda
-SIZE (pmezard-go-difflib-v1.0.0_GH0.tar.gz) = 11398
-SHA256 (problame-go-netssh-53a2e44_GH0.tar.gz) = 14d141eeefb0900e0be0a473b92f195c013ba8ec7fd9ae00d4af060612396e2f
-SIZE (problame-go-netssh-53a2e44_GH0.tar.gz) = 6927
+SHA256 (mattn-go-runewidth-v0.0.3_GH0.tar.gz) = 398ec709b006664e527040770056156cb225233d8b44b5a59ba2f5f5f3fa885e
+SIZE (mattn-go-runewidth-v0.0.3_GH0.tar.gz) = 22961
+SHA256 (matttproud-golang_protobuf_extensions-v1.0.0_GH0.tar.gz) = 65fd58d98a7e79fa491808e9bf8315799eff2dae3d4c203dda25560861294115
+SIZE (matttproud-golang_protobuf_extensions-v1.0.0_GH0.tar.gz) = 9586
+SHA256 (pkg-errors-v0.8.1_GH0.tar.gz) = 7a428967c6fc2e80cd84a0d9469ab6bd4dbe6b13493ba6294322a933a5a7e356
+SIZE (pkg-errors-v0.8.1_GH0.tar.gz) = 11009
+SHA256 (problame-go-netssh-09d6bc4_GH0.tar.gz) = 3f2619fc542899620c8bd184ba37e366590630e6f4840683f0c3836741a7d818
+SIZE (problame-go-netssh-09d6bc4_GH0.tar.gz) = 10966
 SHA256 (problame-go-rwccmd-391d2c7_GH0.tar.gz) = 9705f2896b56502fb3660b4ee6c731a4f46bec70e3e8637f7f26881b3067f9b3
 SIZE (problame-go-rwccmd-391d2c7_GH0.tar.gz) = 3856
+SHA256 (prometheus-client_golang-e11c6ff_GH0.tar.gz) = 5bf0c58891d0ab8787bdbea9d1672050160af904cbbcfacf904eafe056f73ce7
+SIZE (prometheus-client_golang-e11c6ff_GH0.tar.gz) = 107577
+SHA256 (prometheus-client_model-99fa1f4_GH0.tar.gz) = 11c3da0c9a3e4879aa2de15b8e1f494cd74ce3afca831a759f564edeea232f69
+SIZE (prometheus-client_model-99fa1f4_GH0.tar.gz) = 54653
+SHA256 (prometheus-common-d0f7cd6_GH0.tar.gz) = cab0c7db55faf4d4aad29363668de010874b3b76ef45761bbc7d10b1f28735a8
+SIZE (prometheus-common-d0f7cd6_GH0.tar.gz) = 62987
+SHA256 (prometheus-procfs-8b1c2da_GH0.tar.gz) = 6830f8f6a42018db0820f4d2d1f788a797a61bd6cf8fe79f914d4a33e1337ed8
+SIZE (prometheus-procfs-8b1c2da_GH0.tar.gz) = 56785
 SHA256 (spf13-cobra-b787445_GH0.tar.gz) = 2923b91766a9e68a22f81d3b46768dad963fd4ae3f6a5b2e137e2a7b87b37276
 SIZE (spf13-cobra-b787445_GH0.tar.gz) = 99833
 SHA256 (spf13-pflag-v1.0.0_GH0.tar.gz) = 690b86ae5499fad84ada4644c85215d66d56f31934683e8543f4c57c5048e011
 SIZE (spf13-pflag-v1.0.0_GH0.tar.gz) = 38988
 SHA256 (stretchr-testify-v1.1.4_GH0.tar.gz) = f7a244ad38ee484296e8969356209e0d9fb35bd790f69fc5e7758b4e2a9e1874
 SIZE (stretchr-testify-v1.1.4_GH0.tar.gz) = 83325
+SHA256 (theckman-goconstraint-v1.11.0_GH0.tar.gz) = 98d95306dc3679374fb954f9a25a01606fc96a166fdcbda5226ff6f50d58dfcf
+SIZE (theckman-goconstraint-v1.11.0_GH0.tar.gz) = 5945
+SHA256 (zrepl-yaml-config-08227ad_GH0.tar.gz) = f83984afbf7da172dccf71f5b95a5143282647dbc5ee0957cf00ad314f1d72d5
+SIZE (zrepl-yaml-config-08227ad_GH0.tar.gz) = 71024

Modified: head/sysutils/zrepl/files/pkg-message.in
==============================================================================
--- head/sysutils/zrepl/files/pkg-message.in	Tue Jun  4 14:06:18 2019	(r503473)
+++ head/sysutils/zrepl/files/pkg-message.in	Tue Jun  4 14:14:23 2019	(r503474)
@@ -1,5 +1,7 @@
 ------------------------------------------------------------------------
-zrepl must be configured before it is started the first time.
+Messages from sysutils/zrepl:
+
+SETUP BEFORE FIRST USE:
 - Create the log file /var/log/zrepl.log:
   # service newsyslog restart
 - Teach syslogd to redirect facility local0 to the zrepl.log file:
@@ -10,19 +12,25 @@ zrepl must be configured before it is started the firs
   # sysrc zrepl_enable="YES"
 - Start the zrepl daemon:
   # service zrepl start
+  
+Documentation: https://zrepl.github.io/
+Changelog:     https://zrepl.github.io/master/changelog.html
 
-For documentation, refer to https://zrepl.github.io/.
+WARNING - BREAKING CHANGES WITH THE ZREPL 0.1.X RELEASE:
+There are a number of breaking changes this release. To ensure zrepl
+continues to function correctly, ensure you read the changelog, and then
+perform the following on both sides of the replication:
+- Stop the zrepl service:    # service zrepl stop
+- Upgrade the zrepl package: # pkg upgrade zrepl
+- Modify the zrepl config:   # vi %%PREFIX%%/etc/zrepl/zrepl.yml
+- Check the configuration:   # service zrepl configtest
+- Start the zrepl service:   # service zrepl start
+- Monitor the zrepl service: # zrepl status
 
-*** BREAKING CHANGES WITH THE 0.0.3 RELEASE: ***
-- Snapshots are automatically bookmarked and pruning of bookmarks must
-  be configured by adding the keep_bookmarks parameter to the prune
-  policy section of the zrepl configuration file (source side only).
-  Be sure to understand the meaning bookmarks have for maximum
-  allowable replication downtime.
-- The ssh+stdinserver transport protocol has changed, requiring zrepl
-  to be updates on both the sending and receiving side, and the daemon
-  restarted on both sides.
-- The first outlet in the global.logging section of the configuration
-  file is now used for logging meta-errors (e.g. problems encountered
-  when writing to other logging outlets).
+DANGER - SNAPSHOT PRUNING REQUIRES EXPLICIT KEEP RULES:
+For any ZFS snapshot that you want to keep, at least one rule must match. This
+is different from previous releases where pruning only affected snapshots with
+the configured snapshotting prefix. Make sure that snapshots to be kept or
+ignored by zrepl are covered, e.g. by using the regex keep rule.
+This also applies to snapshots taken by means other than zrepl (e.g. manually).
 ------------------------------------------------------------------------

Modified: head/sysutils/zrepl/files/zrepl.in
==============================================================================
--- head/sysutils/zrepl/files/zrepl.in	Tue Jun  4 14:06:18 2019	(r503473)
+++ head/sysutils/zrepl/files/zrepl.in	Tue Jun  4 14:14:23 2019	(r503474)
@@ -40,15 +40,18 @@ load_rc_config $name
 : ${zrepl_flags:=""}
 : ${zrepl_facility:="local0"}
 : ${zrepl_priority:="alert"}
-: ${zrepl_options:="${zrepl_flags} --config ${zrepl_config} daemon"}
+: ${zrepl_options:="${zrepl_flags} --config ${zrepl_config}"}
 
 pidfile="/var/run/zrepl/daemon.pid"
 command="/usr/sbin/daemon"
 procname="%%PREFIX%%/bin/zrepl"
-command_args="-p ${pidfile} %%DAEMON_LOGGING%% ${procname} ${zrepl_options}"
+command_args="-p ${pidfile} %%DAEMON_LOGGING%% ${procname} ${zrepl_options} daemon"
 
-start_precmd=zrepl_precmd
-stop_postcmd=zrepl_postcmd
+start_precmd="zrepl_precmd"
+stop_postcmd="zrepl_postcmd"
+restart_precmd="zrepl_checkconfig"
+configtest_cmd="zrepl_checkconfig"
+extra_commands="configtest"
 
 zrepl_precmd()
 {
@@ -60,11 +63,19 @@ zrepl_precmd()
 	if [ ! -e "${pidfile}" ]; then
 		install -g ${zrepl_group} -o ${zrepl_user} -- /dev/null "${pidfile}";
 	fi
+
+	zrepl_checkconfig
 }
 
 zrepl_postcmd()
 {
 	rm -f -- "${pidfile}"
+}
+
+zrepl_checkconfig()
+{
+	echo "Performing sanity check on zrepl configuration:"
+	eval ${procname} ${zrepl_options} configcheck
 }
 
 run_rc_command "$1"

Modified: head/sysutils/zrepl/files/zrepl.yml.sample
==============================================================================
--- head/sysutils/zrepl/files/zrepl.yml.sample	Tue Jun  4 14:06:18 2019	(r503473)
+++ head/sysutils/zrepl/files/zrepl.yml.sample	Tue Jun  4 14:14:23 2019	(r503474)
@@ -5,10 +5,10 @@
 #
 global:
   logging:
-    - outlet: "stdout"
+    - type: "stdout"
       level:  "error"
       format: "human"
-    - outlet: "syslog"
+    - type: "syslog"
       level:  "info"
       format: "logfmt"
 

Modified: head/sysutils/zrepl/pkg-plist
==============================================================================
--- head/sysutils/zrepl/pkg-plist	Tue Jun  4 14:06:18 2019	(r503473)
+++ head/sysutils/zrepl/pkg-plist	Tue Jun  4 14:14:23 2019	(r503474)
@@ -1,4 +1,14 @@
 bin/zrepl
 @sample etc/newsyslog.conf.d/zrepl.conf.sample
 @sample etc/syslog.d/zrepl.conf.sample
-@sample etc/zrepl/zrepl.yml.sample
+@sample %%ETCDIR%%/zrepl.yml.sample
+%%DATADIR%%/samples/grafana-prometheus-zrepl-0.1.json
+%%DATADIR%%/samples/local.yml
+%%DATADIR%%/samples/pull.yml
+%%DATADIR%%/samples/pull_ssh.yml
+%%DATADIR%%/samples/push.yml
+%%DATADIR%%/samples/sink.yml
+%%DATADIR%%/samples/snap.yml
+%%DATADIR%%/samples/source.yml
+%%DATADIR%%/samples/source_ssh.yml
+@dir(root,wheel,0750) /var/run/zrepl



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201906041414.x54EENFA095499>