Open asmeurer opened 12 years ago
As discussed on the mailing list:
Let's do this in a distributed fashion. So just have the server give one pull request at a time, and keep track that it has been given out, and timeout for it after an hour or something and put it back in the queue. That way, we can easily have multiple machines running this. We can also use a priority queue based on certain things (e.g., pull requests without any reviews would have higher priority, pull requests from new contributors would have higher priority, etc.), and also let people manually bump their pulls if they want.
That way it will be easy to have multiple servers, or for example, I could just run it on my own machine when I don't mind the CPU being used (kind of like a sympy-bot@home).
Another thing we'll need to implement is a way to note in the .conf file which executables to use for particular architectures (e.g., on Mac OS X you can get 32-bit or 64-bit using arch -i386 /Library/Frameworks/Python.framework/Versions/2.5/bin/python2.5 or arch -x86_64 /Library/Frameworks/Python.framework/Versions/2.5/bin/python2.5, assuming the executable has the code for that particular architecture. Then the sympy-bot work server can be very specific about testing not only different pull requests but the same pull requests on different Python versions and different architectures.
Any thoughts on how to break this up for Code-In?
Ondrej, please close this if you already created this issue. I didn't find it.
There should be a command
sympy-bot work
, which would continuously ask the app engine for a pull request to review and review it. This would eventually run on some Linode server (or whatever).