Building a python wheel that includes svn:externals files on Jenkins -
i'm building package on python 2.7.6 32bit windows 32
the definitive source of components of package svn 'share'. common practice in company include project using svn:externals.
the normal way build package is:
python setup.py bdist_wheel
all appears normal on workstation (where checked out code tortoisesvn), when run same process on jenkins bdist_wheel process not include .py file sourced via svn:externals.
after reading through documentation, appears because of feature identifies scripts part of package based on files tracked svn. appears consequence of how jenkins checks out files, bdist_wheel sees i'm using svn , assumes knows how determine files tracked, gets answer wrong.
what need way stop bdist_wheel command trying guess files care (i want every .py file in project included, regardless of how it's been brought in)
i tried tried specifying files needed using manifest.in file, did not work.
recursive-include externals *.py
in example, 'externals' top-level directory in source-tree contains init.py file , bunch of svn:external'd directories. init file can seen in built whl file.
unfortunately makes .py files behave if data, in log can see this:
copying build\lib\externals\security\credentials.py -> build\bdist.win32\wheel\foopackage-0.0.4.data\..\externals\security
that's not real solution!
pip, virtualenv , relevant tools @ latest stable versions.
it turns out problem caused jenkins using old svn standard (1.4) it's own repositories. switching 1.7 corrects behavior.
Comments
Post a Comment