Rez launching environment manager
Project description
rezup
Rez launching environment manager
What is this ?
A Rez production virtual environment management tool, which allows safe environment update without any interruption. Plus a convenient virtual environment setup interface.
Install
# python 3+
$ pip install rezup
Usage
By typing rezup
in terminal, a container named .main
will be created under ~/.rezup
by default, the root location can be changed by setting env var REZUP_ROOT_LOCAL
. Once that command is done, vanilla Rez environment is presented by a subprocess and simply typing exit
to escape.
Each container holds at least one virtual environment folder which are named by timestamp. With that convention, latest version of environment can be provided without affecting existing user. (Container
/Revision
structure)
To customize environment, you can write a ~/rezup.toml
to tell what should be installed and what environment variable should have. For example :
description = "My rez setup"
[rez]
name = "rez"
url = "rez>=2.83"
[[extension]]
name = "foo"
url = "~/dev/foo"
edit = true
[[extension]]
name = "bar"
url = "git+git://github.com/get-bar/bar"
isolation = true
python = 2.7
[env]
REZ_CONFIG_FILE = "/path/to/rezconfig.py"
The settings in section rez
and extension
will be parsed and pass to pip
, so the url
can be e.g. a version specifier and the package will be installed from PyPi.
The edit
can be used if the url
is a filesystem path that point to the source code and the Rez environment can run in dev-mode.
If the extension has isolation
set to true, additional venv will be created just for that package. Different Python version (if can be found from system) will be used when python
entry presented.
Caveat
Rez production install validation will failed, due to Rezup manages entrypoints a bit like pipx, which is different from the setup of Rez install script. So e.g. rez-env
can not nesting context (rez bin tools will not be appended in PATH
), without changing production install validation mechanism.
Commands
use default container .main
$ rezup
use foo
$ rezup use foo
use foo and do job
$ rezup use foo --do {script.bat}
create new venv into default container (~/rezup.toml
will be picked)
$ rezup use --make
create new venv into container foo (~/rezup.toml
will be picked)
$ rezup use foo --make
create new venv into default container with specific rezup.toml
$ rezup use --make {rezup.toml}
remove container foo
$ rezup drop foo
list containers
$ rezup list
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 Distribution
Built Distribution
Hashes for rezup-1.3.0-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 943ee8f8806cdbfd4d19b9326b2e8122ebfce7e3caa7bc6bcda1b03890f44a2b |
|
MD5 | 138ecf109f7338acdfa048d4bdc37c47 |
|
BLAKE2b-256 | b18a62262ee5a67973d36bf9af45b0a55fba072b4ff79dde0df4697a10cf87ce |