-
Notifications
You must be signed in to change notification settings - Fork 7
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
Combined workflow for building git-annex on Ubuntu and macOS #33
Conversation
Please rebase on top of current master. Unfortunately I did manage to cause conflicts - there was a small change I pushed recently, which would need to be redone into this unified workflow.
no need to add nfs to OSX run |
@yarikoptic Rebased. |
great, thank you @jwodder ! |
ok, singularity issue is fixed up now, so linux build succeeds, and tests are running now. So we could proceed further with this PR (some tests setup on OSX seems needing a bit more work). |
There are at least two problems currently preventing the workflow from running successfully:
|
I think actions/runner-images#602 (comment) shines the light The issue comes from the way how GitHub counts requests for rate limit. For unauthorized requests, it limits by IP. All macOS VMs have the same IP address because of infrastructure. and the resolution was to provide a GITHUB token |
re ssh failure -- not sure yet, indeed may be some race. If you have specific log handy, please cut/paste details (could upload entire to smaug to share) to be able to comprehend what is going on. @kyleam might have ideas as well. |
I'm skeptical whether this is still true when using GitHub Actions' built-in macOS environments instead of actions/virtual-environments. Of note, in the macOS-only workflow in #31, I don't believe
That can easily be done for curl requests, but there doesn't seem to be a way to do that when invoking
All I have is what's in the GitHub Action output. Basically the only thing about the failure in there is "ssh: connect to host localhost port 42241: Connection refused". |
Yes, there is a race: |
Note: actions/virtual-environments is the repository for underlying recipes of GitHub actions environments. So I thought it is a generic statement on how osx vms are setup for GitHub actions, this explains why we observe rate limiting only for osx. We could start by adding to curl invocation. |
Note: we already have a token in the secrets |
What token is that? I don't have permission to view the repository settings. If you're referring to |
yes -- that token. It is generated for my user, not for any specific repo, so should be usable across entirety of the github. It might lack some permissions allowed, but if that happens - I could add them. |
I added an Authorization header to the one curl request to api.github.com, but now both the "master" and "maint" versions of test-datalad on macos-latest failed at the |
I tried passing the GitHub token to |
I've submitted a PR to the datalad repo that should eliminate the race condition in |
woohoo !
Re "docker machine": it might be due to still open docker/machine#2296 and may be the workaround of docker/machine#2765 (comment) could help? but overall, since we know that datalad still needs fixups but overall build on OSX and testing of annex succeeds -- lets just disable testing of datalad on OSX for now altogether and merge this, and initiate subsequent PR on top to poke periodically at to make sure that DataLad is getting green. (Note that badges in README.md might need to be adjusted since workflow got renamed -- see https://github.com/datalad/datalad-extensions/blob/master/CONTRIBUTING.md on how to regenerate it after tune up) |
I've disabled running test-datalad on macOS. Updating the badges doesn't seem to be necessary, as they refer to the workflow by its display name (which didn't change) rather than filename. |
This is an alternative to #31 that combines the Ubuntu and macOS workflows into a single workflow.
Closes #30.