super_diff icon indicating copy to clipboard operation
super_diff copied to clipboard

CI takes a very long time to run

Open mcmire opened this issue 2 years ago • 1 comments

Each job defined in the GitHub workflow file takes between 7 and 9 minutes to run. The majority of slow tests are integration tests, which run the rspec command inside of a subshell and then test the output. A while back I tried to see if I could use Zeus to speed this up. The basic concept behind Zeus is that it opens a Ruby process, preloads some code, and waits until it receives further instructions. When you want to do something, it will fork (thereby creating a clean slate in memory) and then run your code. Unfortunately Zeus has not been updated in years, so it's not a viable option. Spring offers a more approachable implementation as it's written in pure Ruby instead of Go, but is tailored for Rails and doesn't allow the same level of customization as Zeus. So we might have to write our own version of Zeus, or fork Spork, or something like that.

mcmire avatar Feb 10 '23 23:02 mcmire

It looks like someone has created a project called Expedite, which is a heavily modified version of Spring that supposedly works on more abstract Ruby projects. Maybe worth looking into.

mcmire avatar Mar 26 '23 05:03 mcmire