diff options
-rw-r--r-- | debian/changelog | 8 | ||||
-rwxr-xr-x | etckeeper | 5 | ||||
-rw-r--r-- | etckeeper.8 | 4 |
3 files changed, 16 insertions, 1 deletions
diff --git a/debian/changelog b/debian/changelog index 1575d89..ef5039b 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,11 @@ +etckeeper (1.14) UNRELEASED; urgency=medium + + * Avoid propigating nonzero exit status of any command called by etckeeper + out to the caller. This is to avoid making apt give up because git is + misconfigured and cannot commit, or similar. Closes: #760011 + + -- Joey Hess <joeyh@debian.org> Thu, 04 Sep 2014 13:49:26 -0400 + etckeeper (1.13) unstable; urgency=medium * Ignore check-mk-agent-logwatch's FHS violating @@ -126,5 +126,8 @@ lsscripts() { } for script in $(lsscripts "$ETCKEEPER_CONF_DIR/$command.d"); do - "$script" "$@" + if ! "$script" "$@"; then + echo "etckeeper failed running $script" >&1 + exit 0 + fi done diff --git a/etckeeper.8 b/etckeeper.8 index 62ae976..7ac077f 100644 --- a/etckeeper.8 +++ b/etckeeper.8 @@ -64,6 +64,10 @@ prompting.) /etc/etckeeper also contains directories containing the programs that are run for each of the above commands. +.SH EXIT STATUS +If the etckeeper command fails to run for some reason, etckeeper will show +what failed, but still exit 0. This is to avoid breaking things like apt +that call etckeeper. .SH ENVIRONMENT VARIABLES ETCKEEPER_CONF_DIR path to configuration directory instead of default /etc/etckeeper. .SH SEE ALSO |