You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I wanted to learn working with cibuildwheel and to see what it takes to build for non-native architectures. Also perhaps to learn why people are using circleci, so I've been experimenting with building ssh-python wheels.
On my fork, I've abandoned using Containerfiles and the only two files to maintain are .circleci/config.yml
and pyproject.toml
(although the everything in pyproject.toml could also be specified in config.yml. I liked having it separate for readability)
This is just a proof of concept, so for example I'm using many/musllinux image repos for openssl, libssh, krb5 sources instead locking an upstream/repo versions. This can be done in 'before-all' section.
I barely know what I'm doing, but if you like the idea, I can improve it based on your requirements so it can be something worth opening PR for.
The differences are:
building macos arm64 wheels (running on xcode: 14.0.0)
building all cp versions except cp37 (includes cp311)
building on musllinux on x86_64 and aarch64
building manylinux ppc64le and s390x wheels
building only manylinux_2_28 wheels (cp36 manylinux2014 should probably be added)
Building on qemu take quite a lot longer, I've tried to speed things up by disabling the test (not much time saved) and skipping musllinux, and it looks like this:
I wanted to learn working with cibuildwheel and to see what it takes to build for non-native architectures. Also perhaps to learn why people are using circleci, so I've been experimenting with building ssh-python wheels.
On my fork, I've abandoned using Containerfiles and the only two files to maintain are
.circleci/config.yml
and
pyproject.toml
(although the everything in pyproject.toml could also be specified in config.yml. I liked having it separate for readability)
This is just a proof of concept, so for example I'm using many/musllinux image repos for openssl, libssh, krb5 sources instead locking an upstream/repo versions. This can be done in 'before-all' section.
I barely know what I'm doing, but if you like the idea, I can improve it based on your requirements so it can be something worth opening PR for.
The differences are:
Building on qemu take quite a lot longer, I've tried to speed things up by disabling the test (not much time saved) and skipping musllinux, and it looks like this:
Artifacts:
HTH, though not sure if this exercise is useful to this project in any way, please feel free to close this if not :)
The text was updated successfully, but these errors were encountered: