-
Notifications
You must be signed in to change notification settings - Fork 127
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
MG CI is too slow #1028
Comments
Perhaps slightly related to #928 but maybe not, certainly connected so cross-linking them to help us track similar isuses. |
one potential mitigation strategy that @Fi3 pointed out during the call is to restructure currently, all MG tests are lumped together into the same job: as we get false alarms, our only recourse is to click this button on the PR Actions UI while hoping the next run won't have any false alarms and we can finally merge the PR: this strategy forces all MG tests to re-run (because they're all lumped together into the same job), as opposed to only the false alarms... this is suboptimal for multiple reasons:
if we could break the different MG tests into separate jobs under of course, this is not the ultimate solution for the issue here, it is only a mitigation strategy while we don't find a way to bring deterministic execution to the MG tests under Github CI |
to expand a bit on my previous comment, I see two potential courses of action for this issue:
|
I want to work on this |
Related discussion: #944 |
just a note: i think it would be better to speedup the GH action check initially if its a quick win before working on improving the local setup |
100% agree |
I'm splitting the work in multiple steps. The first part is to add cache to the build and avoid recompiling unchanged deps and running tests in parallel. The other steps we will still need to discuss it later on. |
this is a paliative solution to stratum-mining#1028 we make MG CI slightly less worse by breaking tests into multiple jobs and allowing us to re-run false alarms in a more agile way MG Tests are also separated from Tarpaulin
this is a paliative solution to #1028 we make MG CI slightly less worse by breaking tests into multiple jobs and allowing us to re-run false alarms in a more agile way MG Tests are also separated from Tarpaulin
Partially solved by #1056 |
actually this ended up being #1056 + #1060 + #1064 now we are able to re-run MG CI jobs independently, which helps bypass false alarms however, optimizations on MG CI are still desirable, so @johnnyasantoss feel free to continue working on this if you want |
@GitGab19 @plebhash Is there anything concrete that @johnnyasantoss should work on? Since we had #1056 #1060 #1064 my question is, is there enough context on what needs to be done, or should we specify that for @johnnyasantoss? I guess a question for @johnnyasantoss as well 😄 |
I think that we could just try to optimize what done by @plebhash. For example adding cache where possible, since it's also a thing that @johnnyasantoss mentioned here: #1028 (comment) |
As we discussed during last dev call, the current MG CI execution is too slow. We need to improve it, by using caches, multi-threading, or docker containers to run things in parallel.
I just found an interesting article regarding this stuff: https://www.uffizzi.com/blog/optimizing-rust-builds-for-faster-github-actions-pipelines
The text was updated successfully, but these errors were encountered: