簡體   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