Я использую Monit для мониторинга сервера Ubuntu и хочу проверить изменения в репозитории git.
Я читал (здесь), что "git ls-files" будет лучшим способом сделать это, но не уверен, как для запуска команды exec в качестве теста в monit. Их документы показывают примеры запуска команд exec после прохождения теста, но не показывают, как тестировать exec.
Как лучше всего это сделать?
==========
PS - я нашел решение, основанное на ответе @TheCodeKiller ниже. Вот окончательный код, который теперь отлично работает. Ответ был на самом деле в документах, но я не признал его своим решением. Это здесь.
Внутри конфигурации monit (/etc/monit/monitrc):
check program changed_files with path "/path/to/git/directory/monit_alert_changed_files.sh"
if status != 0 for 3 cycles then alert
Затем внутри этого файла:
#!/bin/bash
# Script to check if there are changes in the current git directory
if [[ `git --git-dir "/path/to/git/directory/.git" --work-tree "/path/to/git/directory/" ls-files -m -o --exclude-standard` ]]; then
# Changes
exit 1
else
# No changes
exit 0
fi