Skip to content
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

Add linux aarch64 wheel build support #81

Merged
merged 1 commit into from
Jan 26, 2022
Merged

Conversation

odidev
Copy link
Contributor

@odidev odidev commented Jan 20, 2022

Add linux aarch64 wheel build support.

Related to #79 @djhoese Could you please review this PR?

Signed-off-by: odidev <odidev@puresoftware.com>
@djhoese
Copy link
Member

djhoese commented Jan 20, 2022

Is this a straight conversion of the code that was in travis being ported to github actions? I wonder if it would be possible to borrow from pyresample's wheel building: https://github.com/pytroll/pyresample/blob/main/.github/workflows/deploy.yaml. Or do you think this is overkill?

But I'm not sure on the aarch64 building.

@odidev
Copy link
Contributor Author

odidev commented Jan 21, 2022

@djhoese cibuildwheel is taking care of building and testing the wheel. It uses emulation to build and test Linux aarch64 wheels. If we borrow from pyresample's wheel building then extra scripts have to be created for testing the wheels/project. If you suggest I can follow the same steps as pyresample but that looks to be an overhead.

@djhoese
Copy link
Member

djhoese commented Jan 21, 2022

Works for me. I don't have time to review this properly today. I will try next week (if daycares open back up around here).

@djhoese
Copy link
Member

djhoese commented Jan 26, 2022

This looks good to me. I don't see anything shocking and I see you have a lot of aarch64 PRs so let's see what happens. I'll make another PR to remove the travis and appveyor configs. Thank you!

@djhoese djhoese merged commit af5381d into pytroll:main Jan 26, 2022
djhoese pushed a commit that referenced this pull request Jan 26, 2022
Signed-off-by: odidev <odidev@puresoftware.com>
@djhoese
Copy link
Member

djhoese commented Jan 27, 2022

For future reference, there were a few things that needed updating in the actions YAML. I'm still trying to get the PyPI upload to work, but think I have it now. The two main things were that you were only running the actions on pushes to the main branch, but only uploading to PyPI on tags. This means the CI will never run for tags and therefore never upload packages to PyPI.

The second thing is you were using environment variables for the twine definitions. There are easier ways now if github secrets are used:

      - name: Publish package to PyPI
        if: github.event.action == 'published'
        uses: pypa/gh-action-pypi-publish@v1.4.1
        with:
          user: __token__
          password: ${{ secrets.pypi_password }}

@djhoese
Copy link
Member

djhoese commented Jan 27, 2022

Actually I had the above wrong (which I copied from another project). The above assumes it is being run when published, but it should be an if statement specific to the tag. I ended up going with:

if: github.event_name == 'push' && startsWith(github.event.ref, 'refs/tags/v')

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants