Я ищу способ создать автономный архив всех зависимостей, необходимых для удовлетворения 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
Однако у этого скрипта есть ряд проблем, одна из которых заключается в том, что он не может использовать кэш онлайн-машины, и вместо этого приходится каждый раз скачивать все.
Вопросесть ли лучший способ, который не включает в себя собственный сценарий?Может быть, задокументированная лучшая практика сообщества?
В идеале, должен существовать такой интерфейс, как:
pipenv lock --create-archive <file_name>
pipenv install --from-archive <file_name>