2017-05-30 44 views
6

Python paketlerim için bir bdist oluşturmak istiyorum. Paket, dağıtımın bir parçası olarak zorunlu olan bir LICENSE dosyası içeriyor.Python ikili dağıtımı ile veri dosyaları nasıl gönderilir?

LICENSE dosyama, MANIFEST.IN dosyama bir başvuru ekledim ve gerçekten de paketim için bir sdist oluşturduktan sonra, LICENSE dosyası vardı.

Ancak, paketim için (python setup.py bdist_wheel) bir Python tekerleği oluşturduğumda, LICENSE dosyasının görüneceği bir yer yok gibi görünüyor.

Ben package_data ve data_files ait setup.py kavramlarıyla aşina olduğum - henüz onlar benim kullanımı durumunda alakalı görünmüyor: package_data bir Python paket içinde olmasını LICENSE dosyası gerektirir, ama ben isteniyor Bu dosyayı bir Python paketi olmayan projenin en üst düzey klasöründe bulundurmak. data_files, yüklemeden sonra dosya için hedef dizinin eşleştirilmesini gerektirir, ancak projenin paketlerine göre olması yerine, işletim sistemine bağlı olabileceğinden çok garip bulduğum python yüklemesine göre platform, ister virtualenv olsun ya da olmasın, vb

Günün sonunda, paketlerin site-packages altında kurulduğunu ve yükleme sonrası "üst düzey dosyalar" için yer olmadığını anlıyorum. Yine de, wheel dosyamın bir parçası olarak LICENSE dosyasının bir kurulumunu yapmak için, kurulum sırasında daha sonra herhangi bir yere kopyalanmasa bile, bir yol arıyorum.

cevap

0

Veri dosyalarının göreli yolunu kullanabilirsiniz:

package_data={"package": ["../LICENSE", …]},