的外部文件我建立一個包裝上的Python 2.7.6 32位Windows 32構建蟒蛇輪,其中包括SVN:對詹金斯
唯一確定的一個包的一些組件的源是SVN「分享」。這家公司的慣例是使用svn:externals將它包含到你的項目中。
建立這個包的正常途徑是:
python setup.py bdist_wheel
全部顯示正常我的工作站上(這裏我檢查了在TortoiseSVN的代碼),但是當我在詹金斯運行相同的過程中bdist_wheel過程做不包括通過svn:externals獲取的任何.py文件。
閱讀完文檔後,這似乎是因爲一個功能,該功能根據SVN跟蹤哪些文件來識別哪些腳本是軟件包的一部分。看起來,由於詹金斯檢查文件的結果,bdist_wheel看到我使用SVN並假定它知道如何確定哪些文件被跟蹤,但得到的答案是錯誤的。
我需要的是一種方法來試圖猜測我關心哪些文件停止bdist_wheel命令(其實我是想在項目中的每個.py文件被收錄,不管它是如何被帶入)
我試着用MANIFEST.in文件指定我需要的文件,但沒有奏效。
recursive-include externals *.py
在這個例子中,「外部材料」是在我的源代碼樹中的頂級目錄包含了初始化 .py文件和一堆SVN的:external'd目錄。只有init文件可以在內置的whl文件中看到。
很不幸,這使得.py文件的行爲,如果他們的數據,在日誌中我可以看到這一點:
copying build\lib\externals\security\credentials.py -> build\bdist.win32\wheel\foopackage-0.0.4.data\..\externals\security
這顯然不是一個真正的解決方案!
Pip,Virtualenv和所有相關工具都是最新的穩定版本。