내 시나리오는 다음과 같습니다. Git 저장소에서 파일을 업데이트한 후 웹 서버에서 API를 호출하는 Git 후크가 있습니다. API가 Git 풀을 수행한 다음 웹 서버(Gunicorn)를 다시 시작하는 병합된 Git 후크가 있습니다. 끌어오기가 완료된 후 몇 초 후에 웹 서버를 다시 시작해야 합니다. 그렇지 않으면 API 호출이 완료되기 전에 웹 서버가 종료되고 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
파일에 웹 서버를 다시 시작하는 명령을 포함하고 싶습니다 . 파일 실행은 post-merge
끌어오기가 끝날 때 Git에 의해 시작되므로 시작 방법을 제어할 수 없습니다.
답변1
마침내 파일에 이 줄이 생겼습니다.git/hooks/post-merge
#!/bin/sh
( sleep 10 ; /usr/bin/sudo systemctl restart tempcollect ) &