我正在使用django-crontab
作为我项目的一部分运行一些CRON作业。我有一个针对此特定项目的虚拟环境设置。
因此,激活环境后,我使用以下命令添加作业:
python manage.py crontab add
我看到我的作业被成功地添加到OS crontab中,但是当我看到日志时,我发现它找不到安装在虚拟环境中的某些模块(读取全部)。
但是,如果我通过将哈希人传递到成功运行的运行命令中手动运行这些crons。
在进一步检查时,我发现crons被添加到crontab时,python二进制文件指向全局(系统级二进制文件),而不是虚拟级别的二进制文件。
我唯一能想到的解决方案是在系统级别运行PIP安装,但这会弄乱我打算创建的Sanbox环境。
有什么想法?
django-crontab
不再维护。该图书馆的最后更改发生在2年前。我真的建议停止使用它。
用于修复该错误,您可以使用CRONTAB_PYTHON_EXECUTABLE
设置指向python从env可执行,或者CRONTAB_COMMAND_PREFIX
来添加一些可以在运行Python之前激活此Virtualenv的内容。