Je tente d'installer psycopg2 dans un Python Virtualenv avec le module pip
[$ Var], mais je dois préparer une entrée à la piste à la construction correctement (elle doit connaître le chemin vers le répertoire contenant pg_config
). Je vois que je peux passer environment
au module pip
, mais je ne suis pas sûr de la compréhension plutôt que de remplacer PATH
.
Ici, je tente de préparer le chemin avec le répertoire nécessaire, mais il écrase le virtualenv PATH
et échoue:
- pip:
name: psycopg2
virtualenv: /path/to/my/venv
environment:
PATH: /usr/pgsql-9.3/bin:$PATH
Si vous utilisez une ansile 1.4 ou une version ultérieure (que je vous recommande), vous pouvez accéder à la variable RemotePATH
env variable:
- pip: name=psycopg2 virtualenv=/path/to/my/venv
environment:
PATH: /usr/pgsql-9.3/bin:{{ ansible_env.PATH }}
Si, au lieu de cela, vous êtes intéressé par le fichier PATH
env Var du Client local exécutant les scripts ansibles (au lieu du serveur ciblé ), alors vous voulez faire ce qui suit:
- pip: name=psycopg2 virtualenv=/path/to/my/venv
environment:
# This only makes sense if your client and server are homogeneous, that is,
# they have the same PATHs.
PATH: /usr/pgsql-9.3/bin:{{ lookup('env', 'PATH') }}