2010-10-05 26 views
2

J'écris un outil pour générer automatiquement des fichiers .egg à partir de projets python. L'outil découvre essentiellement certaines propriétés pour deviner les options de configuration (telles que le numéro de version, etc.).Setuptools: comment utiliser la fonction setup() dans un script (pas d'argument de ligne de commande spécifique à l'installation)

Maintenant, je voudrais appeler la fonction setup(), avec le contexte bdist_egg.

je en tant que tel:

if __name__ == '__main__' 
    project_dir = _get_dir(sys.argv) 
    os.chdir(project_dir) 
    config = _guess_configuration(project_dir) # returns a dict 

    sys.argv = ['', 'bdist_egg'] 
    setup(**config) 

Et puis je peux appeler mon script

python make_egg.py /path/to/project 

Ce que je voudrais est de sauter la partie sys.argv = ['', 'bdist_egg']. Y at-il un moyen d'avoir la commande d'installation passée à la fonction d'installation?

Merci

Répondre

0

setup(script_args=['bdist_egg'], **config)

+0

Parfait! Merci! –