-
-
Notifications
You must be signed in to change notification settings - Fork 2.9k
Let's just do one AppVeyor run instead of four #3238
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
If they are needed only for wheel building, can we move them to a separate job that gets run on demand somehow? At least we should be able to do something like this:
|
We do use the Appveyor builds for Windows wheels, but we only need two of them for that -- a 32 bit and a 64 bit build. The Python version doesn't matter. I think we can make one of the builds only run on tagged commits if we want. Can we try switching to 2 Appveryor builds first and see if that helps much? That'd be a very easy change to start with. |
Well, it'll be twice as slow (as with only one build) but still twice as fast (compared to the current situation with 4 boulds). |
Also, currently every push to a branch on the main repo (not a fork) causes AppVeyor to build both the branch commit, and the hypothetical merge-with-master commit. I'm not saying it's useless, but maybe we can live with just "merge-with-master"? If a branch can't be merged cleanly with tests passing, it probably results in the same effort to fix it as if the branch itself failed a test. AppVeyor has a web UI setting to just do the merge builds: In addition, we might consider disabling builds on master by using:
since commits to master are usually not done except by merging a PR. (It's always possible to initiate a build manually if desired.) |
The last point (disabling master tests) is safe only if we use github setting |
I thought the duplicate test runs were only an issue for core devs? |
They use AppVeyor capacity allocated to |
To clarify: in this picture, there can be only 1 build running at any given moment, since we only have 1 VM. Anything else (that's not cancelled) will be queued up. |
Hm, I recall researching a similar think for Travis CI and ending up thinking it was too complicated. If you want to change something please open a new issue and state clearly what the instructions are and what the risks are. (And the benefits for good measure, though I think we all understand those. :-) |
I don't think the cost of waiting for all four runs is worth the benefits. There is no different mypy functionality being tested -- at best we'll catch 32/64 bugs in CPython or typed_ast.
@ddfisher Do you have any objections? Do the four AppVeyor runs contribute to the Windows wheel building?
The text was updated successfully, but these errors were encountered: