[🐛] {PROD4POD-1779} Try to fix lockfile-hashing timeout #1077
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Initial idea
The timeout has happened in #1076, so it's likely it's not triggered here. Anway, it's a bit over the brink, so maybe an upgrade of the cache code will fix it; among other things, it changes node from version 12 to version 16 (although, for some reason, that part is written in Csharp?).
Anyway, if this does not work, there are no easy alternatives. This PR is waiting to be vetted, so I'm afraid we will have to disconnect the cache (it's very likely it's not making any good in this specific runner, too)
Resolution
Eliminate cache. Best case scenario, we were obtaining marginal gains; installing modules took anywhere from 2 minutes to 6 minutes; but downloading and uncompressing the cache never took less than 4 minutes. So even in the best case scenario we were losing around two minutes; I have seen uncompression times of up to 11 minutes, so it's really a very bad bet and needs to be eliminated. The fact that the hashing was also timing out was only the last nail in the coffin.
I have also upgraded the action that sets up node, and used a version for node, 18, which is different from the "main" one (still 16). Can give us a taste of some possible failures, before we upgrade; besides, that way we have at least two versions of node tested.