gpt4 book ai didi

python - Pipenv锁: how to cache downloads for transfer to an offline machine

转载 作者:行者123 更新时间:2023-12-03 16:28:15 24 4
gpt4 key购买 nike

我正在寻找一种方法来创建满足 Pipfile.lock 所需的所有依赖项的自包含存档。 .实现此目的的一种方法是指向 PIPENV_CACHE_DIR在一个空的临时目录下,运行 pipenv install ,传送该目录的内容,并在离线机器上使用它。
例如,这应该工作:

tmpdir=$(mktemp -d)
if [ -n "$offline" ]; then
tar -xf pipenv_cache.tar -C "$tmpdir"
fi
pipenv --rm
PIPENV_CACHE_DIR="$tmpdir" PIP_CACHE_DIR="$tmpdir" pipenv install
if [ -n "$online" ]; then
tar -cf pipenv_cache.tar -C "$tmpdir" .
fi
然而,这个脚本有很多问题,一个是它不能使用在线机器的缓存,而是每次都必须下载所有东西。
问题是,有没有更好的方法,不涉及自定义脚本?也许一些记录在案的社区最佳实践?
理想情况下,将存在一个类似的接口(interface):
pipenv lock --create-archive <file_name>
pipenv install --from-archive <file_name>

最佳答案

通过一些 Shell 脚本工作,wheelfreeze可以做到。
要创建存档(在 Bash shell 中):

(. "$(pipenv --venv)"/bin/activate && wheelfreeze <(pipenv lock -r))
并从存档安装:
wheelfreeze/install "$(pipenv --venv)"

披露:我在尝试解决问题的同时创造了车轮卡住——俗话说“自己挠痒痒”。

关于python - Pipenv锁: how to cache downloads for transfer to an offline machine,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50036298/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com