Thanks to visit codestin.com
Credit goes to github.com

Skip to content

BLD: Try adding aarch64 wheels [wheel build] #20987

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

Merged
merged 1 commit into from
Feb 18, 2022
Merged

Conversation

lithomas1
Copy link
Collaborator

No description provided.

@github-actions github-actions bot added the 36 - Build Build related PR label Feb 3, 2022
@lithomas1 lithomas1 marked this pull request as ready for review February 3, 2022 14:53
@lithomas1
Copy link
Collaborator Author

lithomas1 commented Feb 3, 2022

@mattip @rgommers I think this is ready for an initial review now.

There's still somethings that I have to add(e.g. wheel uploading, and the triggering mechanism present on GHA), but it basically works now. It should be trivial to add, as it would probably just mean refactoring out the bash logic in GHA to a shared file under tools and calling it from both Travis CI and GHA.

For wheel uploading, someone needs to add the upload tokens to both staging and nightly under the names NUMPY_STAGING_UPLOAD_TOKEN and NUMPY_NIGHTLY_UPLOAD_TOKEN for Travis CI.

@mattip
Copy link
Member

mattip commented Feb 3, 2022

Isn't this running the build/test twice: once in CIBUILDWHEEL and once in the travis scripts at the end?

@lithomas1
Copy link
Collaborator Author

No, I'm pretty sure I overrided the build/test components on the wheel builders.

(Because I didn't override the before_install step, it still executes on the wheel builders. Should be harmeless given that building happens in a docker container, but will try to fix in next commit.)

@mattip
Copy link
Member

mattip commented Feb 3, 2022

When I look at the travis-ci run for this PR I see 7 jobs. It is not clear from the ENV which architecture it is, but here is a table. Can you somehow disable runs 3 and 4?

run python architecture style
42773.1 3.8 ppc64le old
42773.2 3.8 s390x old
42773.3 3.8 aarch64 old
42773.4 3.10-dev aarch64 old
42773.5 3.8 aarch64 cibuildwheel
42773.6 3.9 aarch64 cibuildwheel
42773.7 3.10 aarch64 cibuildwheel

@lithomas1 lithomas1 marked this pull request as draft February 5, 2022 23:12
@lithomas1 lithomas1 force-pushed the patch-2 branch 2 times, most recently from 7a27734 to a976d68 Compare February 13, 2022 04:14
@lithomas1 lithomas1 marked this pull request as ready for review February 14, 2022 02:03
@lithomas1
Copy link
Collaborator Author

Oh, I think I see what you mean now.
Is the idea to move the testing on aarch64 from the standalone job to inside the test phase of the cibuildwheel build?

@mattip
Copy link
Member

mattip commented Feb 14, 2022

Is the idea to move the testing on aarch64 from the standalone job to inside the test phase of the cibuildwheel build?

Either that or put an if not wheels so that we either build wheels or run the old build scripts

I think so.

Edit: rephrasing to simply agree

@lithomas1 lithomas1 force-pushed the patch-2 branch 3 times, most recently from 3b6fd72 to a65f4e6 Compare February 17, 2022 01:48
@lithomas1
Copy link
Collaborator Author

lithomas1 commented Feb 17, 2022

Do you want to set up the upload tokens now or leave that for a follow up? I forgot to mention this, but someone also has to set up a cron job too, through the Travis UI to run the weekly builds.

(Mostly likely this PR will break the uploading process again for wheels so it might require some tuning but I can't tell until its been merged. Its still likely a good first step as the wheels build successfully)

@mattip
Copy link
Member

mattip commented Feb 17, 2022

Did you try /tools/wheels/upload_wheels.sh on your branch?

I wonder why it is echoing the command here

@mattip
Copy link
Member

mattip commented Feb 17, 2022

Do you want to set up the upload tokens now or leave that for a follow up?

Done, added NUMPY_NIGHTLY_UPLOAD_TOKEN and NUMPY_STAGING_UPLOAD_TOKEN. These should be available as ${NUMPY_NIGHTLY_UPLOAD_TOKEN} and ${NUMPY_STAGING_UPLOAD_TOKEN}

I forgot to mention this, but someone also has to set up a cron job too, through the Travis UI to run the weekly builds.

Done.

@lithomas1
Copy link
Collaborator Author

Did you try /tools/wheels/upload_wheels.sh on your branch?

I wonder why it is echoing the command here

image
I think it is working, just a little hard to see due to the size of the log.

@mattip mattip merged commit 220861d into numpy:main Feb 18, 2022
@mattip
Copy link
Member

mattip commented Feb 18, 2022

Thanks @lithomas1.

@mattip
Copy link
Member

mattip commented Feb 18, 2022

I manually triggered a build https://app.travis-ci.com/github/numpy/numpy/builds/246680087 by going to the "More Options" pulldown. Hopefully only availalbe to maintainers :). Let's see what happens

@mattip
Copy link
Member

mattip commented Feb 18, 2022

A manual trigger has the line TRAVIS_EVENT_TYPE is api but there is no condition for that in the script, so it does not upload. I think we should add one.

set_travis_vars() {
# Set env vars
echo "TRAVIS_EVENT_TYPE is $TRAVIS_EVENT_TYPE"
echo "TRAVIS_TAG is $TRAVIS_TAG"
if [[ "$TRAVIS_EVENT_TYPE" == "push" && "$TRAVIS_TAG" == refs/tags/v* ]]; then
IS_PUSH="true"
else
IS_PUSH="false"
fi
if [[ "$TRAVIS_EVENT_TYPE" == "cron" ]]; then
IS_SCHEDULE_DISPATCH="true"
else
IS_SCHEDULE_DISPATCH="false"
fi

@mattip
Copy link
Member

mattip commented Feb 18, 2022

Now the manual trigger does something, but the upload cannot find the wheel

ls: cannot access './wheelhouse/*.whl': No such file or directory

@mattip
Copy link
Member

mattip commented Feb 18, 2022

Wheels for aarch64 are uploading! https://anaconda.org/scipy-wheels-nightly/numpy/files

@lithomas1 lithomas1 deleted the patch-2 branch February 18, 2022 15:11
@lithomas1
Copy link
Collaborator Author

Nice. Thanks a bunch for fixing the typos I made.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
36 - Build Build related PR
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants