Этого можно добиться, чтобы установить какой-либо флаг в общем месте.И каждое задание должно иметь доступ к этому местоположению, и если этот флаг установлен, тогда подождите, пока этот флаг не будет снят.
Исходя из вышеизложенного, я должен создать один файл на сервере Unix в определенном месте перед выполнением какого-либо одного рабочего процесса.Любой рабочий процесс видит этот файл в определенном месте, если этот файл существует, и ожидает, пока этот файл не будет удален предыдущим заданием, которое было запущено ранее.
Создание файла и ожидание удаления файла ниже - это сценарий unix.Что можно определить в первом задании рабочего процесса на вкладке Pre-process.
#!/bin/bash
while true
do
files=$(ls /u/users/lock 2> /dev/null | wc -l)
if [ "$files" != "0" ]
then
echo "Other <workFlow name> is running wait for 10 second"
sleep 10
else
echo "<workFlow name > is not running so <current workflow name> is starting"
touch /u/users/lock
exit 0
fi
done
Чтобы удалить файл в конце рабочего процесса, ниже приведен скрипт Unix.Этот скрипт должен быть определен в последнем задании на вкладке процесса.
#!/bin/bash
echo "<current workFlow name> is finshed so releasing the lock"
files=$(ls /u/users/lock 2> /dev/null | wc -l)
if [ "$files" != "0" ]
then
rm /u/users/lock
fi