0
pythonパッケージ名でcronタスクを実行する方法はありますか(entry_pointで指定)?pythonパッケージのentry_point名でcronタスクを実行
setuptoolsのインポートセットアップからsetup.py
それはシェルで動作
from setuptools import setup
setup(
name='myapp-cli',
(..blah..)
packages=[
'myapp_cli'
],
install_requires=['configparser', 'requests'],
entry_points={
'console_scripts': [
'myapp= myapp_cli.main:cli'
]
},
zip_safe=True
)
:
myapp do_stuff
私はこのようにcronタスクに名前でアプリを実行したい
:
* * * * * /something_here? myapp do_stuff >> myapp.log 2>&1
pythonパッケージのentry_pointがどのように動作するのか、cronでの使用方法を理解できません。出来ますか?
そして、何(あなたは
which myapp
でそれを見つける必要がありますか)?私は 'whereis python'がpythonのパスを返すのをチェックしましたが、' whereis myapp'では何も起こりません。 –ええ。 'myapp foo' - 動作します。 'python -m myapp.main' - あなたがdirパッケージでコマンドを実行することを意味するならば、それはうまくいきます。 –
私は完全なsetup.pyファイルを質問に追加しました。 'python -m myapp_cli.main'は正しく動作しますが(' python -m myapp.main'ではなく 'myapp.main 'の仕様を見つける際にエラーを返します)、' myapp_cli'とentry_pointは 'myapp'です。 –