繁体   English   中英

使用 setup.py setuptools 安装到 venv

[英]Installing into a venv with setup.py setuptools

我正在寻找一种通过特定路径将整个 python 应用程序单命令安装到venv的方法。


我对这个主题做了一些研究,特别是在这个线程中,有一个关于这个过程的Makefile自动化的讨论。 它还建议使用pyinvoke ,它在我看来是包装在 python 中的命令行命令。 所以我目前编写了以下简单的 on-the-knee shell 脚本:

install_venv.sh

#!/bin/bash

PYTHON="$1"
VENV_PATH="$2"
SOURCE_ROOT="$(dirname "$(readlink -f "$BASH_SOURCE")")"

echo "$PYTHON"
echo "$VENV_PATH"
echo "$SOURCE_ROOT"

cd $SOURCE_ROOT
$PYTHON -m venv $VENV_PATH
source "$VENV_PATH/bin/activate"
python -m pip install -r "$SOURCE_ROOT/requirements.txt"
python setup.py install

这个脚本可以运行,比如./install_venv.sh python3.7 /tmp/test_venv 如果venv已经存在venv它不会处理这种情况,但它可以以一种直接的方式进行扩展。

这看起来是一个很常见的任务,所以也许setuptools已经有办法做到这一点,或者仍然需要编写这样的脚本? 或者什么是首选方式?

不完全确定真正的意图是什么......


也许这些工具之一可以提供帮助:

这些工具允许您以隔离的方式安装带有所有必需依赖项的 Python 应用程序。 有些基于虚拟环境,有些则不是。


也许您正在寻找一种工具,例如诗歌(或pipenv,但不确定它是否仍在维护中)。


更简单明了, setuptools有这个插件:

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM