簡単なポスト インストール スクリプトで distutils を拡張する方法で説明されているように、Python distutils にポスト インストール タスクを追加しようとしています。. このタスクは、インストールされた lib ディレクトリでPython スクリプトを実行することになっています。このスクリプトは、インストールされたパッケージが必要とする追加の Python モジュールを生成します。
私の最初の試みは次のとおりです。
from distutils.core import setup
from distutils.command.install import install
class post_install(install):
def run(self):
install.run(self)
from subprocess import call
call(['python', 'scriptname.py'],
cwd=self.install_lib + 'packagename')
setup(
...
cmdclass={'install': post_install},
)
このアプローチは機能しますが、私が知る限り、2 つの欠点があります。
- ユーザーが から選択したもの以外の Python インタープリターを使用した場合、
PATH
インストール後のスクリプトは別のインタープリターで実行され、問題が発生する可能性があります。 - 関数でラップして
distutils.cmd.Command.execute
.
どうすればソリューションを改善できますか? これを行うための推奨される方法/ベストプラクティスはありますか? 可能であれば、別の依存関係を引き込むことは避けたいです。