[Python] come gestire file conf e doc usando distutils

Pietro Battiston me a pietrobattiston.it
Sab 21 Maggio 2011 08:37:06 CEST


Il giorno ven, 20/05/2011 alle 23.29 +0200, Daniele Varrazzo ha scritto:
> On Fri, 20 May 2011 22:32:33 +0200, Marco Giusti <marco.giusti a gmail.com>
> wrote:
> > On Fri, May 20, 2011 at 07:19:05PM +0200, Elisabetta Ronchieri wrote:
> >> Non trovo problemi a gestire i file python ma non riesco ancora a
> >> gestire correttamente la doc e i file di conf. Avete dei buoni
> >> esempi di setup.py da farmi valutare?
> > 
> > non credo che questo sia possibile con distutils, a meno di scrivere
> > qualche linea ad hoc.
> 
> Questo non va bene?
> 
> http://docs.python.org/distutils/setupscript.html#installing-additional-files
> 
> 



Questo ad esempio è come ho modificato un setup.py per installare tutta
la documentazione in share/doc:



+def doc_files():
+    """
+    Create a list of documentation files.
+    """
+    files = []
+    walker = os.walk( 'doc/html' )
+    while True:
+        try:
+            n = walker.next()
+            new_list = []
+            files.append( (os.path.join( "share/doc/python-sqlkit-doc",
n[0][9:] ), new_list) )
+            for a_file in n[2]:
+                new_list.append( "%s/%s" % (n[0], a_file) )
+        except StopIteration:
+            break
+    
+    return files
+
    
 setup(
    name='sqlkit',
@@ -95,6 +86,7 @@ setup(
    url='http://sqlkit.argolinux.org/',
    install_requires=REQUIRES,
    packages = find_packages('.'),
+   data_files =[('share/applications', ['sqlkit.desktop'])] +
doc_files(),
    classifiers= classifiers.split('\n'),
    include_package_data=True,      
    zip_safe=False,



ciao

Pietro



Maggiori informazioni sulla lista Python