У меня есть сценарий развертывания, он должен что-то добавить пользователю crontab
(запускать сценарий, который очищает журналы каждые XXX дней), однако это необходимо делать только во время первого развертывания или когда его необходимо обновить.
(Я могу бежать xxx.py deploy env
или xxx.py update env
)
поэтому я должен сделать это:
Check if my cronJob already exist
Put my cronJob if it does not already exist
or
update my cronjob if one of the parameter of the command is different
Я не вижу, как добавить / проверить / удалить что-либо crontab
без использования crontab -e
или редактирования crontab
файла (загрузить его, переписать, повторно загрузить)
PS: это специфический для пользователя cronjob, "webadmin" собирается это сделать, и ему не следует использовать sudo для этого.
/etc/cron.d
? Если это так, поместите ваш сценарий туда, используя уникальное имя для вашего приложения
/etc/crontab
файлы в /etc/cron.d/
имеют дополнительное поле для имени пользователя, сразу после спецификации расписания. например * * * * * username /path/to/script
. Смотрите man 5 crontab
и ищите SYSTEM CRON
.