Pythonパッケージ(init.dスクリプトのインストール、ディレクトリやファイルの作成など)をインストールするだけでなく、私のsetup.pyにカスタム動作をさせたいのですが、自分自身でdistutils/setuptoolsクラスをカスタマイズすることができます。行動。私が抱えている問題は、パッケージディレクトリに移動して "python setup.py install"を実行するとすべて動作することですが、 "easy_install mypackage.tar.gz"を実行するとカスタムクラスが実行されていないようです。ここに私のsetup.pyファイルは(テストするために、同じディレクトリ内の空myfoobar.pyファイルを作成します)です:easy_installをsetup.pyでカスタムコマンドを実行するには?
import setuptools
from setuptools.command import install as _install
class install(_install.install):
def initialize_options(self):
_install.install.initialize_options(self)
def finalize_options(self):
_install.install.finalize_options(self)
def run(self):
# Why is this never executed when tarball installed with easy_install?
# It does work with: python setup.py install
import pdb;pdb.set_trace()
_install.install.run(self)
setuptools.setup(
name = 'myfoobar',
version = '0.1',
platforms = ['any'],
description = 'Test package',
author = 'Someone',
py_modules = ['myfoobar'],
cmdclass = {'install': install},
)
同じことは、私は、「セットアップ」とはdistutilsから「インストール」をインポートする場合にも発生します。どのようにアイデアをeasy_install私のカスタムクラスを実行することができますか?
明確にするために、私はBuildoutやPaverのような余分なものを使いたくありません。
私が望んでいた答えではありませんが、私はそれを答えとして授与しています。ありがとう! –