I had a question about distributing python packages to offline machines when the offline machine is running a different OS then a machine with an internet connection. The packages I am concerned with are third party upon which mine depend.
Based on what I have learned so far, there are three solutions. (a) Use a CI to run a fleet of machines for each OS one needs to target to obtain the OS specific wheels. (b) 'pip download <package_list> --no-binary :all:' -- the intention here is to grab the source distribution without any OS specific code included. (c) use https://warehouse.pypa.io/api-reference/json to look for distributed wheels for the target OS and python version and download them directly. (This may make for a nice flag to add to pip somewhere...the ability to specify what wheel one wants when it isn’t for the machine pip is running on) The issue I see with (a) is the shear amount work it would take to setup and maintain such a system. The issue I see with (b) is that it is not 100% reliable as some packages are tricky to install and may not work well with 'pip download’. I have not played around with (c) yet, so I do not know how well it will work, but it seems like a viable solution. I was just wondering if anyone had any comments on this as I think though the ways to solve this problem. Thank you.
_______________________________________________ Distutils-SIG maillist - Distutils-SIG@python.org https://mail.python.org/mailman/listinfo/distutils-sig