Вы можете использовать файл блокировки для этого. Когда задача запускается, попытайтесь захватить блокировку и запустить задачу граблей, если вы получили блокировку. Если вы не получите блокировку, то не запускайте грабли; Возможно, вы захотите зарегистрировать ошибку или предупреждение где-нибудь, или вы можете закончить с вашей задачей по рейку, ничего не делая в течение нескольких недель или месяцев, прежде чем узнаете об этом. Когда грабли выходят, разблокируйте файл блокировки.
Что-то вроде RAA может помочь, но я не использовал его, так что, возможно, нет.
Вы также можете использовать файл PID. У вас где-нибудь будет файл, содержащий идентификатор процесса Rake-процессов. Перед запуском rake вы читаете PID из этого файла и смотрите, запущен ли процесс; если это не так, запустите rake и запишите его PID в файл PID. При наличии граблей удалите файл PID. Вы хотите объединить это с блокировкой файла PID, если хотите быть очень строгим, но это зависит от вашей конкретной ситуации.