Вопрос

Я создал подрывную деятельность после обеда, чтобы отправлять электронное письмо каждый раз, когда совершается коммит. Им вызовет скрипт Python из файла после обряда в/var/svn/repos/chooks.

REPOS="$1"
REV="$2"

~/svnnotify.py $REV

Но проблема в том, что команде Commit SVN занимает больше времени для прекращения, поскольку она ждет сценария Python в первую очередь. Есть ли способ обойти это?

Благодарю вас

Это было полезно?

Решение

Попробуйте добавить Ampersand (&) После строки, которая вызывает ваш сценарий, чтобы поместить его в фоновое значение и немедленно вернуться.

Другие советы

Вызовите пакетный файл, и в этом пакетном файле выполнить скрипт Python, чтобы запустить в фоновом режиме, добавив Ampersand в конце команды в пакетном файле (&).

Возможно, поместите обновление в простой очередь, которая поднимается с помощью сценария, вызванного Cron, и отправляет сообщение, если что -то сидит в очереди.

Очередь может быть простым файлом в /TMP, файл SQLite или таблицу MySQL.

Если для отправки электронной почты требуется заметно много времени, возможно, что-то есть с кодом в скрипте уведомления. Не должно потребоваться так много времени, чтобы поместить электронную почту в местную очередь почты.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top