Installation of Python Packages Using pip
These states manage system installed python packages. Note that pip must be
installed for these states to be available, so pip states should include a
requisite to a pkg.installed state for the package which provides pip
(python-pip in most cases). Example:
python-pip:
pkg.installed
virtualenvwrapper:
pip.installed:
- require:
- pkg: python-pip
-
salt.states.pip_state.installed(name, pip_bin=None, requirements=None, env=None, bin_env=None, use_wheel=False, log=None, proxy=None, timeout=None, repo=None, editable=None, find_links=None, index_url=None, extra_index_url=None, no_index=False, mirrors=None, build=None, target=None, download=None, download_cache=None, source=None, upgrade=False, force_reinstall=False, ignore_installed=False, exists_action=None, no_deps=False, no_install=False, no_download=False, install_options=None, user=None, runas=None, no_chown=False, cwd=None, activate=False, pre_releases=False, __env__='base')
Make sure the package is installed
- name
- The name of the python package to install. You can also specify version
numbers here using the standard operators ==, >=, <=. If
requiremenets is given, this parameter will be ignored.
Example:
django:
pip.installed:
- name: django >= 1.6, <= 1.7
- require:
- pkg: python-pip
This will install the latest Django version greater than 1.6 but less
than 1.7.
- user
- The user under which to run pip
- use_wheel : False
- Prefer wheel archives (requires pip>=1.4)
- bin_env : None
- Absolute path to a virtual environment directory or absolute path to
a pip executable. The example below assumes a virtual environment
has been created at /foo/.virtualenvs/bar.
Example:
django:
pip.installed:
- name: django >= 1.6, <= 1.7
- bin_env: /foo/.virtualenvs/bar
- require:
- pkg: python-pip
Or
Example:
django:
pip.installed:
- name: django >= 1.6, <= 1.7
- bin_env: /foo/.virtualenvs/bar/bin/pip
- require:
- pkg: python-pip
Attention
The following arguments are deprecated, do not use.
- pip_bin : None
- Deprecated, use bin_env
- env : None
- Deprecated, use bin_env
Changed in version 0.17.0: use_wheel option added.
-
salt.states.pip_state.removed(name, requirements=None, bin_env=None, log=None, proxy=None, timeout=None, user=None, runas=None, cwd=None, __env__='base')
Make sure that a package is not installed.
- name
- The name of the package to uninstall
- user
- The user under which to run pip
- bin_env : None
- the pip executable or virtualenenv to use