Comment mettre à jour un Conda l'environnement .fichier yml
Cela a été demandé à ici mais n'a jamais répondu.
Comment un pré-existants conda de l'environnement sera mis à jour avec un autre .fichier yml. Ce qui est extrêmement utile lorsque vous travaillez sur des projets qui ont de multiples exigence de fichiers, c'est à dire base.yml, local.yml, production.yml
, etc.
Par exemple, ci-dessous est un base.yml
fichier a conda-forge, conda, et pip paquets:
de base.yml
name: myenv
channels:
- conda-forge
dependencies:
- django=1.10.5
- pip:
- django-crispy-forms==1.6.1
L'environnement réel est créé avec:
conda env create -f base.yml
.
Plus tard, les paquets supplémentaires doivent être ajoutés à base.yml
. Un autre fichier, disons local.yml
, les besoins d'importation de ces mises à jour.
Les tentatives précédentes pour ce faire incluent:
la création d'un local.yml
fichier avec une importation définition:
channels:
dependencies:
- pip:
- boto3==1.4.4
imports:
- requirements/base.
Puis exécutez la commande:
conda install -f local.yml
.
Cela ne fonctionne pas. Toutes les pensées?
OriginalL'auteur justinnoor.io | 2017-02-20
Vous devez vous connecter pour publier un commentaire.
Essayez d'utiliser conda env mise à jour:
-f
etfile.yml
. Retrait du signe égal fera onglet achèvement des travaux sur le.yml
nom de fichier.OriginalL'auteur
alkamid la réponse est sur la bonne voie, mais j'ai trouvé que Conda ne parvient pas à installer de nouvelles dépendances si l'environnement est déjà active. La désactivation de l'environnement a d'abord résout ce:
vous pouvez spécifier explicitement
-n <environment name>
, mais par défaut, il semble fonctionner avec l'environnement prévu (peut-être le plus récemment active, ou tout simplement un défaut de choix pour l'environnement)Merci pour la réponse et des informations utiles!
Le nom de l'environnement est spécifié dans le fichier YAML si il a été exporté par conda.
OriginalL'auteur