I. Aperçu
Dans cet article de blog, nous explorerons comment utiliser pyenv-virtualenv
et autoenv
ensemble pour un développement Python transparent. Ces outils peuvent vous aider à gérer facilement plusieurs environnements Python et environnements virtuels, améliorant ainsi votre flux de travail de développement.
II. Pyenv-virtualenv
Pyenv-virtualenv
est un plugin pour pyenv
qui vous permet de créer et de gérer des environnements virtuels pour différentes versions de Python. Il vous aide à garder les dépendances pour différents projets séparées, en veillant à ce que chaque projet ait accès aux packages dont il a besoin sans interférence.
Créer un environnement virtuel
Pour créer un nouvel environnement virtuel en utilisant pyenv-virtualenv
, utilisez la commande suivante :
pyenv virtualenv <version-python> <nom-environnement-virtuel>
Par exemple, si vous voulez créer un environnement virtuel nommé mon_projet
en utilisant Python 3.8.0 :
pyenv virtualenv 3.8.0 mon_projet
Liste des environnements virtuels
Pour afficher la liste de tous les environnements virtuels que vous avez créés, utilisez la commande suivante :
pyenv virtualenvs
Activation d’un environnement virtuel
Pour activer un environnement virtuel, utilisez la commande suivante :
pyenv activate <nom-environnement-virtuel>
Par exemple :
pyenv activate my_project
Désactivation d’un environnement virtuel
Pour désactiver l’environnement virtuel actuel, utilisez la commande suivante :
pyenv deactivate
III. Autoenv
Autoenv
est un outil qui active automatiquement un environnement virtuel lorsque vous entrez dans un répertoire contenant un fichier .env
. Cela facilite le changement de projet sans avoir à se rappeler d’activer et de désactiver manuellement les environnements virtuels.
Configuration d’Autoenv
Pour utiliser autoenv
, vous devez créer un fichier .env
dans le répertoire racine de votre projet. Ce fichier contiendra les commandes qui doivent être exécutées lorsque vous entrez dans le répertoire.
Par exemple, disons que vous avez un projet situé dans ~/projets/mon_projet
et que vous voulez utiliser l’environnement virtuel mon_projet
créé précédemment. Créez un fichier .env
dans le répertoire ~/projets/mon_projet
avec le contenu suivant :
source $(pyenv root)/versions/mon_projet/bin/activate
Utilisation d’Autoenv
Maintenant, lorsque vous naviguez dans le répertoire de votre projet, autoenv
activera automatiquement l’environnement virtuel mon_projet
pour vous :
cd ~/projets/mon_projet
Vous devriez voir un message indiquant que l’environnement virtuel a été activé :
autoenv: Activating environment . . .
(mon_projet) $
Lorsque vous quittez le répertoire du projet, l’environnement virtuel sera automatiquement désactivé :
cd ~
Vous devriez voir un message indiquant que l’environnement virtuel a été désactivé :
autoenv: Deactivating environment . . .
$
IV. Conclusion
En combinant pyenv-virtualenv
et autoenv
, vous pouvez créer un flux de travail de développement transparent pour gérer plusieurs projets Python. Cette approche garantit que vous utilisez toujours le bon environnement virtuel pour chaque projet, tout en gardant vos dépendances séparées et organisées.