Setup of Python virtualenv sandboxes.

New in version 0.17.0.

salt.states.virtualenv_mod.managed(name, venv_bin=None, requirements=None, system_site_packages=False, distribute=False, use_wheel=False, clear=False, python=None, extra_search_dir=None, never_download=None, prompt=None, user=None, cwd=None, index_url=None, extra_index_url=None, pre_releases=False, no_deps=False, pip_download=None, pip_download_cache=None, pip_exists_action=None, pip_ignore_installed=False, proxy=None, use_vt=False, env_vars=None, no_use_wheel=False, pip_upgrade=False, pip_pkgs=None, pip_no_cache_dir=False, pip_cache_dir=None, process_dependency_links=False, no_binary=None, **kwargs)

Create a virtualenv and optionally manage it with pip


Path to the virtualenv.

venv_bin: virtualenv

The name (and optionally path) of the virtualenv command. This can also be set globally in the minion config file as virtualenv.venv_bin.

requirements: None

Path to a pip requirements file. If the path begins with salt:// the file will be transferred from the master file server.

use_wheel: False

Prefer wheel archives (requires pip >= 1.4).


Python executable used to build the virtualenv

user: None

The user under which to run virtualenv and pip.

cwd: None

Path to the working directory where pip install is executed.

no_deps: False

Pass --no-deps to pip install.

pip_exists_action: None

Default action of pip when a path already exists: (s)witch, (i)gnore, (w)ipe, (b)ackup.

proxy: None

Proxy address which is passed to pip install.

env_vars: None

Set environment variables that some builds will depend on. For example, a Python C-module may have a Makefile that needs INCLUDE_PATH set to pick up a header file while compiling.

no_use_wheel: False

Force to not use wheel archives (requires pip>=1.4)


Force to not use binary packages (requires pip >= 7.0.0) Accepts either :all: to disable all binary packages, :none: to empty the set, or a list of one or more packages

pip_upgrade: False

Pass --upgrade to pip install.

pip_pkgs: None

As an alternative to requirements, pass a list of pip packages that should be installed.

process_dependency_links: False

Run pip install with the --process_dependency_links flag.

New in version 2017.7.0.

Also accepts any kwargs that the virtualenv module will. However, some kwargs, such as the pip option, require - distribute: True.

    - system_site_packages: False
    - requirements: salt://REQUIREMENTS.txt
    - env_vars:
        PATH_VAR: '/usr/local/bin/'