Tester une application avec setup.py sans l'installer

Tester une application avec setup.py sans l'installer - Python - Programmation

Marsh Posté le 19-12-2010 à 17:33:10    

Bonjour,
 
J'ai une application qui peut être installée, c'est à dire que le contenu du répertoire de l'appli est plus ou moins:

Code :
  1. bin/
  2. module/
  3. setup.py


 
Le dossier bin contient les scripts python important les bons modules (ie module.sous_module ) et lançant les bonnes fonctions. J'aimerais pouvoir lancer cette appli (en lançant le bon script dans le répertoire bin) sans avoir besoin de l'installer... ça doit être tout con mais je ne trouve pas comment...  
 
Merci d'avance,
Oliparcol :pt1cable:

Reply

Marsh Posté le 19-12-2010 à 17:33:10   

Reply

Marsh Posté le 19-12-2010 à 18:18:03    

http://virtualenv.openplans.org/


---------------
Nos estans firs di nosse pitite patreye...
Reply

Marsh Posté le 20-12-2010 à 13:14:26    

ya pas de moyen plus simple ? ça veut dire que les développeurs, pour tester leur appli, vont tout le temps devoir l'installer ?  
 
en plus c'est tout con, si les scripts de /bin étaient à la racine du projet, on pourrait bien lancer l'appli, mais malheureusement ce n'est pas le cas et je ne peux pas changer l'organisation du dossier...

Reply

Marsh Posté le 29-12-2010 à 14:44:58    

oliparcol a écrit :

Bonjour,

 

J'ai une application qui peut être installée, c'est à dire que le contenu du répertoire de l'appli est plus ou moins:

Code :
  1. bin/
  2. module/
  3. setup.py
 

Le dossier bin contient les scripts python important les bons modules (ie module.sous_module ) et lançant les bonnes fonctions. J'aimerais pouvoir lancer cette appli (en lançant le bon script dans le répertoire bin) sans avoir besoin de l'installer... ça doit être tout con mais je ne trouve pas comment...

 

Merci d'avance,
Oliparcol :pt1cable:


PYTHONPATH=. bin/tonscript

 

Tu as également `python setup.py develop` qui n'installe pas le package mais crée un lien depuis ton site-packages vers le checkout local.

oliparcol a écrit :

ya pas de moyen plus simple ?


C'est extrêmement simple, surtout s'il y a des dépendances.

oliparcol a écrit :

ça veut dire que les développeurs, pour tester leur appli, vont tout le temps devoir l'installer ?


Non, tu crées le virtualenv (—no-site-packages de préférence, imo) à la racine de ton package (au même niveau que setup.py), tu installes les dépendances (habituellement via `python setup.py egg_info; pip -E. install -r package.egg_info/requires.txt`) et roules.

oliparcol a écrit :

en plus c'est tout con, si les scripts de /bin étaient à la racine du projet, on pourrait bien lancer l'appli, mais malheureusement ce n'est pas le cas et je ne peux pas changer l'organisation du dossier…


Quand tu actives un virtualenv, il place automatiquement ./bin dans ton $PATH. Et dans tous les cas, si tu veux lancer un truc dans bin ben tu fais juste `bin/truc`


Message édité par masklinn le 29-12-2010 à 14:46:19

---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed