Error de omisión al instalar paquetes usando PIP
Frecuentes
Visto 7,775 equipos
13
corro pip
pip install -r /requirements.txt
Si uno de mis paquetes falla, todo se cancela y no se instalarán otros paquetes.
¿Hay algún comando que en caso de error continúe instalando el siguiente paquete?
Entonces, para mi caso de uso: esto es lo que hago usando un archivo fabuloso:
def _install_requirements():
"""
Installs the required packages from the requirements.txt file using pip.
"""
if not exists(config.SERVER_PROJECT_PATH + '/requirements.txt', use_sudo=True):
print('Could not find requirements')
return
sudo('pip install -r %s/requirements.txt' % SERVER_PROJECT_PATH)
1 Respuestas
4
Hay un script de Python útil para actualizar todas las bibliotecas con pip (fuente):
import pip
from subprocess import call
for dist in pip.get_installed_distributions():
call("pip install --upgrade " + dist.project_name, shell=True)
En el bucle 'for' puede recorrer los requisitos.
# read requirements.txt file, create list of package names
for package in requirements:
call("pip install " + package, shell=True)
Esto no fallará si no puede instalar un paquete.
contestado el 23 de mayo de 17 a las 13:05
Buena solución, ¿la función de 'llamada' es parte de Fab? - Prometeo
también, ¿qué hace 'shell = True'? - Prometeo
shell=True lo hace dependiente de la plataforma. En mi caso, es obligatorio. stackoverflow.com/a/3172488/2327328 - philshem
'call' es del subproceso e independiente de fabric.api. Probablemente podrías hacer lo mismo con fab. - philshem
No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas python or haz tu propia pregunta.
No creo que esto sea posible con pip. No tendría demasiado sentido, ¿verdad? Quiero decir, ¿de qué sirve instalar algo si depende de otro paquete que no se instaló correctamente? Ambos no funcionarían de todos modos - yuvi
Para mi caso de uso, instalo mis requisitos a través de un archivo fabuloso en el servidor y un error impide que todo continúe. - Prometheus
¿Has probado un
for
bucle con un bloque try/except? - kylieCattPosible duplicado de Evite que pip falle en un solo paquete al instalar con requirements.txt - obskyr