単純なエントリ ポイントを使用してカスタム スクリプトを作成していますsetup.py
。
entry_points = {
'my_scripts': ['combine_stuff = mypackage.mymod.test:foo']
}
含まれる場所mypackage/mymod/test.py
:
import argh
from argh import arg
@arg("myarg", help="Test arg.")
def foo(myarg):
print "Got: ", myarg
これを使用してパッケージをインストールすると(と同じディレクトリにsetup.py
)
pip install --user -e .
エントリ ポイントはまったく処理されないようです。何故ですか?
でインストールするとdistribute
easy_install
、次のようになります。
easy_install --user -U .
次に、エントリ ポイントが処理され、以下が作成されます。
$ cat mypackage.egg-info/entry_points.txt
[my_scripts]
combine_stuff = mypackage.mymod.test:foo
しかし、呼び出された実際のスクリプトは、ディレクトリcombine_stuff
のどこにも配置されませんbin
(のように~/.local/bin/
)。それは作られていないようです。ここで何がうまくいかないのですか?どうすれば実行可能なスクリプトを作成し、理想的には動作させることがpip
できますか?