git merge後に遅延を追加する

git merge後に遅延を追加する

私のシナリオは次のとおりです。 Gitリポジトリからファイルを更新した後、WebサーバーからAPIを呼び出すGitフックがあります。 APIがGitプールを実行してからWebサーバー(Gunicorn)を再起動するマージされたGitフックがあります。プルが完了してから数秒後にWebサーバーを再起動する必要があります。それ以外の場合は、API呼び出しが完了する前にWebサーバーがシャットダウンされ、Gitフックにエラーが返されます。現在、次の解決策がありますが、満足できません。文書.git/hooks/post-merge

#!/bin/sh
/var/www/tempcollect/.git/hooks/restart > /var/www/tempcollect/.git/hooks/restart.log &

文書.git/hooks/restart

sleep 10s
/usr/bin/sudo systemctl restart tempcollect

post-mergeファイルにWebサーバーを再起動するコマンドを含めたいと思います。ファイルの実行はpost-mergeプル終了時にGitによって開始されるため、起動方法を制御できません。

答え1

ついにファイルにこの行がありました.git/hooks/post-merge

#!/bin/sh
( sleep 10 ; /usr/bin/sudo systemctl restart tempcollect  ) &

関連情報