maintenance: fix test t7900-maintenance.sh

Commit b681b191 introduced the support of systemd timers for git
maintenance.
A test is leveraging the `systemd-analyze verify` utility to verify the
correctness of the systemd unit files generated by git.

But on some systems, although the `systemd-analyze` tool is installed
and supports the `verify` subcommand, it fails with some permission
errors.

So, instead of only checking if the `verify` subcommand exists, a more
reliable way of detecting whether `systemd-analyze verify` can be used
is to try to use it.

The SYSTEMD_ANALYZE prerequisite is now trying to run `systemd-analyze
verify` on a systemd unit file which is shipped by systemd itself.
We can reasonably think that, on systemd hosts, this file is present and
valid.

Signed-off-by: Lénaïc Huard <lenaic@lhuard.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Lénaïc Huard 2021-09-27 23:30:16 +02:00 committed by Junio C Hamano
parent b681b191f9
commit 670e597399

View File

@ -21,8 +21,7 @@ test_xmllint () {
}
test_lazy_prereq SYSTEMD_ANALYZE '
systemd-analyze --help >out &&
grep verify out
systemd-analyze verify /lib/systemd/system/basic.target
'
test_systemd_analyze_verify () {