-
Notifications
You must be signed in to change notification settings - Fork 137
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Feat: ARM64 Support for OSX / Linux + Windows 32 bit support #342
Conversation
linux_arm64_task: | ||
env: | ||
matrix: | ||
# - IMAGE: python:3.6-slim # This works locally, with cirrus run, but fails in CI |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
# https://github.com/pyenv/pyenv/wiki#suggested-build-environment | ||
# - xcode-select --install # Unnecessary on Cirrus | ||
- brew update | ||
# - brew install openssl readline sqlite3 xz zlib |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
preinstalled in cirrus's base image
- pyenv global ${PYTHON} | ||
- pyenv rehash | ||
## To install rosetta | ||
# - softwareupdate --install-rosetta --agree-to-license |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
rosetta isn't installed by default, so this is using arm64 binaries, and would fail if using x86_64 binaries without rosetta
@@ -19,7 +19,7 @@ jobs: | |||
- '3.9' | |||
- '3.10' | |||
- '3.11' | |||
os: [ ubuntu-latest ] | |||
os: [ ubuntu-latest, windows-latest, macos-latest ] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
adds additional os's but skips the examples steps, as they require a broker and spin one up with docker-compose.
docker isn't available in GH runners for macOS or Windows, hence skipped on line 53 unless Linux
- name: Set up Python | ||
uses: actions/setup-python@v2 | ||
uses: actions/setup-python@v4 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
matches .github/workflows/build_and_test.yml
@@ -29,7 +29,7 @@ jobs: | |||
|
|||
steps: | |||
- name: Check out code | |||
uses: actions/checkout@v2 | |||
uses: actions/checkout@v3 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
fix deprecation warnings in build
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me!
Thank you for the patch, and for helping make pact-python better! |
Changes to traveling ruby to support additional platforms
Details of changes made to travelling ruby
PR's to Travelling ruby to update the supported archs
Which means we can now support
Details of changes made to pact-ruby-standalone
Details of changes made to pact-python
These have been consumed in the pact-python project, and tested cross platform
In order to test ARM64 on MacOS, and Linux, I have utilised cirrus-ci, which is free for open-source usage (within reasonable limits)