I have a fork of a CPython extension package that takes literally hours to compile, so I would like to deploy precompiled wheels somewhere to download from instead of compiling from source.
I am also aware that I can host pypiserver
myself, but I have CDN service I have lying around for basically free, and I wonder if I can deploy wheels somehow "statically" on my CDN and then do:
pip install -i https://<my cdn of choice> SomePackage
instead of:
pip install https://<my cdn of choice>/SomePackage-1.0-py2.py3-none-any.whl
which would allow me to specify the package version or operating system.
Meaning the "repository" in that case would be just a folder with bunch of static files in right order.
You could make a 'simple' index at the root of your CDN, and make the file structure for each project equivalent to what pip
expects for a 'simple' index, which is essentially:
simple
├── SomePackage
│ ├── SomePackage-1.0-py2.py3-none-any.whl
│ └── index.html
└── index.html
And then you can do:
$ pip install -i https://<my cdn of choice>/simple SomePackage
See PEP 503 -- Simple Repository API for the exact specification of how the HTML pages should be structured.