Package virtual environments for redistribution
Project description
Venv-Pack
This is based on venv-pack but with lots of improvements added by mrmathematica. It has Windows support. Bin/Scripts generated by venv will work out-of-box.
Venv-pack is a command-line tool for packaging virtual environments for distribution. This is useful for deploying code in a consistent environment.
Supports virtual environments created using python3/venv. Venv is part of the python standard library.
Install from source
venv-pack is available on github and can always be installed from source.
pip install git+https://github.com/mrmathematica/venv-pack.git
Install from pypi
venv-pack is available on pypi as venv-pack2
.
pip install venv-pack2
Command-line Usage
One common use case is packing an environment on one machine to distribute to other machines as part of a deployment process.
On the source machine
Create venv, and then upgrade pip + setuptools first:
python -m venv venv
venv\Scripts\activate
python -m pip install -U pip setuptools
Python generates Windows .exe file such as pip.exe on the fly, so on Windows there is restriction that you want to fix a version of pip and setuptools at the beginning and stick with it. If needed, re-create new venv from a lock file. See pip-tools.
Install all your python packages, for example
pip install -r requirements.txt
Pack the current environment into my_env.zip
venv-pack -o env.zip
Pack an environment located at an explicit path into my_env.zip
venv-pack -p explicit\path\to\env -o env.zip
On the target machine
Unpack environment into directory my_env
md my_env
python -m zipfile -e venv.zip my_env\
All features of venv should keep working from my_env folder.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Hashes for venv_pack2-0.6.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b4f1584a83715f403f8e2088f07a33c0ee630719ceb8c31bfecc7c8107ee7403 |
|
MD5 | 05ff3098b9d09f57ee74f47c571f65a9 |
|
BLAKE2b-256 | e42048fb3ea5d676e850437d2e8254497bd793f7d9ec2226ef50b86e600c8a8d |