Skip to content

Please, make CI caching more tolerant #2534

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

Open
Anton-Latukha opened this issue Dec 23, 2021 · 4 comments
Open

Please, make CI caching more tolerant #2534

Anton-Latukha opened this issue Dec 23, 2021 · 4 comments
Labels
CI Continuous integration status: in discussion Not actionable, because discussion is still ongoing or there's no decision yet type: enhancement New feature or request

Comments

@Anton-Latukha
Copy link
Collaborator

Anton-Latukha commented Dec 23, 2021

In #2503 the caching workflow for the most important part (GHC 9.2) - would fail. Because cabal v2-build all would not work there.

Think about, would it be reasonable to cache all OR main+test OR main. That would allow acquiring relevant partial cache, which would allow a faster CI loop to solve problems. But that also would happen when freeze is not possible (since build all has the exact same requirement) & when freeze is not possible - under certain conditions we do not have an effective way to detect when to save new cache.

At the same time we really can not expand cache more pretty much due to pool limit & for the same reason, we reaching a limit on expanding the key matrix more.

@Anton-Latukha
Copy link
Collaborator Author

Somehow I evaluate it as still being worth it. But need to think a bit more.

@Anton-Latukha Anton-Latukha added the CI Continuous integration label Dec 23, 2021
@Ailrun Ailrun added status: in discussion Not actionable, because discussion is still ongoing or there's no decision yet and removed status: needs triage labels Dec 23, 2021
@Anton-Latukha Anton-Latukha changed the title Please, make CI caching more tolerant to all targets having unmet deps Please, make CI caching more tolerant Dec 24, 2021
@Anton-Latukha
Copy link
Collaborator Author

Anton-Latukha commented Dec 24, 2021

Since this is a report for ongoing work & to not open a number of reports for different nuances - this report can be about tolerance of caching workflow at all - rescoping this report to tolerance as a whole.

@Anton-Latukha
Copy link
Collaborator Author

@Anton-Latukha
Copy link
Collaborator Author

Anton-Latukha commented Dec 24, 2021

I propose to have:

cabal $cabalBuild || cabal $cabalBuild || cabal $cabalBuild || true

true is needed because new information shows that if any of continue-on-error: true step fails - caching action does not runs post hook, so despite having continue-on-error: true we need to make that step always return true.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CI Continuous integration status: in discussion Not actionable, because discussion is still ongoing or there's no decision yet type: enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants