-
-
Notifications
You must be signed in to change notification settings - Fork 3k
Consider replacing AppVeyor with Azure Pipelines #8292
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
Comments
This is very important for overall productivity, and having more capacity could allow us to set up additional Windows builds. I'm not quite happy with our current state of testing on Windows. |
I know @asottile has experience with Azure pipelines, perhaps he has some experience he can share. I personally have been experimenting with Github actions, which allows up to 20 concurrent workers (https://help.github.com/en/actions/automating-your-workflow-with-github-actions/about-github-actions#usage-limits). |
at this point, the offerings from azure pipelines and github actions are essentially equivalent -- they use the same backing builder machinery as far as I can tell as well. the only difference is the number of parallel builders (GA: 20, AP: 10) I've set up a quick demo of what this would look like if you took your let me know if you'd like me to PR this against the main repo and I can clean it up a little bit ( |
and yes, successful nerd snipe ethan 🙃 |
Oh that is great, thank you! And uh, sorry for the nerd snipe :P It seems that there is an issue in the link phase of building the mypyc tests, I've reached out to Github support about that. Seems like it should "just work". |
@asottile Wonderful, thank you! A good next step once the build issue has been sorted out would be to run it along with Appveyor in the main repo for a while to evaluate relative performance and reliability. If everything looks good, we can drop Appveyor after a while. |
when I set I can try and debug this further later -- will probably use this to narrow down what's necessary -- probably with |
this appears to be the minimal set of environment variables necessary:
|
any hints on this one? it's the only remaining failing test my guess is this is an actual failure -- looks like it's crashing the compiler on this newer version of visual studio? |
@asottile hmm that is odd, perhaps @msullivan would be better at diagnosing than me. But it seems that setuptools gets through building the library since it gets to It seems to me it is failing the GC test on this line. I have no idea why. |
We don't need to block enabling github actions on the test failure. It would be okay to skip the test temporarily, as long as we re-enable it before the next release. |
That is weird but we can disable it for now. It is a very fragile seeming test so to be honest it breaking is not super surprising |
awesome, I'll make a PR when I'm at a computer |
I did some experimenting and it looks like somehow something is getting freed between the first and second get_objects calls. This is all in interpreted code and happens even if we don't import or call the compiled code, so I'm just going to remove the test which is too fragile. Probably anything involving |
The stuff with gc that it was doing is fragile and it was breaking on windows with github actions (see #8292) even with all the compiled code removed.
The stuff with gc that it was doing is fragile and it was breaking on windows with github actions (see #8292) even with all the compiled code removed.
We seem to have too little capacity on AppVeyor as CI builds are often queued for a long time. Azure Pipelines apparently supports Windows and 10 parallel jobs, for free. It might be a better alternative for mypy, since our builds are somewhat slow.
Is anybody interested in looking at this? Any help would be appreciated, even just small experiments and helpful pointers.
Here's a blog post that talks about the open source offering: https://azure.microsoft.com/en-gb/blog/announcing-azure-pipelines-with-unlimited-ci-cd-minutes-for-open-source/
The text was updated successfully, but these errors were encountered: