У меня есть скрипт оболочки для автоматической сборки и развертывания докера в Centos.Я создаю веб-сервер ExpressJs и создаю API событий, отправляемых сервером.
Как узнать событие "конец" при выполнении сценария оболочки ? Нужно ли мне менять сценарий оболочки ?Это мой код API и интерфейс
`getData = (flag) => {
var elem = document.getElementById("myBar");
var width = 0;
var source = new EventSource('/data');
if (flag) {
source.addEventListener('message', (e) => {
var data = e.lastEventId == -1 ? "Done" : JSON.parse(e.data);
var clock = setInterval(() => {
if (width >= 100) {
clearInterval(clock);
} else {
width++;
elem.style.width = width + '%';
}
}, (Date.now() - e.timeStamp));
}`
И мой скрипт
!/bin/bash
#..........
nodeId=$(ps aux | grep node | awk '{if($13=="server.js") print $2}')
if [ -z $nodeId ]; then
echo "Not found"
else
echo "Kill process"
kill -9 $nodeId
fi
echo "Finish"
npm install
nohup npm run start server.js &
exit 0