运行 easy_install 与/之前 python setup.py sdist

Running easy_install along with / before python setup.py sdist

我有一个必须安装的依赖包 easy_install

easy_install deps/my_deps_package.egg

我目前的步数:

它现在运行良好,但我无法将 my_deps_package.egg 添加到 requirements.txt 并且我想要在 运行 宁 python setup.py sdist 时,它应该安装所有这些。

我正在使用 tox 进行 运行 测试,似乎在安装包之前没有选择 运行 easy_install

是否可以将 easy_install 与 python setup.py 进程或 tox 一起使用?

tox 通常使用一次安装 tool/command,可以使用 install_command 进行设置。它会将 deps 中定义的包和您的包传递给 install_command(默认为 python -m pip install {opts} {packages}(ARGV))。因此不可能有两个不同的安装命令。因此,我们将不得不创建一个解决方法。

一种方法可以是:

  1. 关闭常规安装流程。 (skipp_install = true)
  2. 使用commands_pre以正确的顺序执行所有安装命令。
  3. 使用常规 commands 做任何您想做的事情。
[testenv]
skip_install = true
commands_pre = 
    easy_install deps/my_deps_package.egg
    python setup.py sdist
    python -m pip install -e .[dev] dist/my_package.tar.gz
commands =
    pytest

这样您仍然可以实现一些关注点分离,因为您的安装命令仅存在于 commands_pre

奖金:

[testenv:something]
# This should inherite the pre_commands from [testenv]
commands = 
    # Do something else :)
    ls